读书人

小弟我想用 RunDLL32 来运行一个 DLL

发布时间: 2012-01-21 21:31:43 作者: rapoo

我想用 RunDLL32 来运行一个 DLL 里的函数,但里面有个参数是 PAnsiChar 的,我要如何写 bat 呢?
我想用 RunDLL32 来运行一个 DLL 里的函数,但里面有个参数是 PAnsiChar 的,我要如何写 bat 呢?


正在做一个在线更新的东东,我想把它做成 DLL ,也就想到用

RunDLL32 来执行它,

DLL 中我导出一个函数为 UpdateNow(SettingFile:PAnsiChar)

我要如何在 cmd 里输入命令呢?

RunDLL32 LiveUpdate.dll UpdateNow "setting.xml "
RunDLL32 LiveUpdate.dll UpdateNow setting.xml

这样我都试了,好象不行,得不到数据




[解决办法]
PAnsiChar 就是char*
我也不太清楚如何调用的
[解决办法]
Rundll32.exe DLLname,Functionname [Arguments]
这样格式的
[解决办法]
你这个不能用Rundll32.exe.

设想你下让你编写Rundll32,你如何知道所要调用函数长什么样子?(Signature),所以它假定你的函数是这个样子的:

void CALLBACK
EntryPoint(HWND hwnd, HINSTANCE hinst, LPSTR lpszCmdLine, int nCmdShow);

你的UpdateNow显然不是,乱用会造成Stack Corruption。

你自己写个能和你函数兼容的似RunDll的东西吧。

读书人网 >VC/MFC

热点推荐