koi333 发表于 2012-9-17 15:35:03

dll调用方法的问题--求解

本帖最后由 koi333 于 2012-9-17 16:51 编辑

自己用C 写的dll,不管是声明stdcall或者不声明,AU3都不能调用

dllopen返回错误为1

dll给C++,C#都能调用,不知道为什么

补充下函数声明

extern "C" int __declspec(dllexport) _stdcall LoadFile(char* szPath);

调用:

Local $dll = DllOpen(@ScriptDir & "\test.dll")
或者
Local $result = DllCall(@ScriptDir & "\test.dll", "int", "LoadFile", "str", @ScriptDir & "\Offset10.bin")

annybaby 发表于 2012-9-18 21:54:18

回复 1# koi333


    Dllopen()返回1是正确的啊,返回-1才是有错误发生~~{:face (117):}

Local $dll = DllOpen("user32.dll")
Local $result = DllCall($dll, "int", "MessageBoxA", "hwnd", 0, "str", "若干文本", "str", "若干标题", "int", 0)
MsgBox(0,0,$dll)
DllClose($dll)

koi333 发表于 2012-9-22 16:21:58

本帖最后由 koi333 于 2012-9-22 16:23 编辑

回复koi333


    Dllopen()返回1是正确的啊,返回-1才是有错误发生~~
annybaby 发表于 2012-9-18 21:54 http://www.autoitx.com/images/common/back.gif


    是返回的-1,错误码是 1
页: [1]
查看完整版本: dll调用方法的问题--求解