从WinDev调用DLL方法

时间:2017-04-11 10:52:32

标签: c# c++ dll import windev

我想在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)

2 个答案:

答案 0 :(得分:0)

法语中的post表示您在字符串前加上&因为它需要通过引用传递,它应该看起来像:

CallDLL32("MyDLL", "GetCode", &data, &res1, &res2)

虽然我不知道它是如何使用字节数组的。

答案 1 :(得分:-1)

您可以直接调用:API函数

API("USER32", "SendMessageA", hWnd, wMsg, lParam1, lParam2)

文档:https://doc.windev.com/en-US/?3014005