我想在WinDev应用程序中使用DLL(用C ++开发),我的DLL可以正常使用C#代码,我可以在那里调用任何方法,但是使用Windev我可以使用以下方法成功加载DLL:
hInst = LoadDLL("MyDLL.DLL")
但是当我想以这种方式调用方法时:
CallDLL32("MyDLL", "GetCode", data, res1, res2)
我收到错误“尝试读取或写入受保护的内存。这通常表示其他内存已损坏。”
我想要调用的方法签名就像这样:
string GetCode([IN] byte[] Data, [OUT] string res1, [OUT] string res2)
答案 0 :(得分:0)
法语中的post表示您在字符串前加上&因为它需要通过引用传递,它应该看起来像:
CallDLL32("MyDLL", "GetCode", &data, &res1, &res2)
虽然我不知道它是如何使用字节数组的。
答案 1 :(得分:-1)
您可以直接调用:API函数
API("USER32", "SendMessageA", hWnd, wMsg, lParam1, lParam2)