如何使用dll ?(以解決)
是使用類似global.dllgmww_window_create=external_define("GMWW.DLL","window_create",1,0,3,1,0,0);
這樣的語法來載入dll嗎? 首先你要了解你的Dll里面是否带有你需要的函数,然后你需要初始化一次dll,比如你说的这句话,正确应该是
global.dllgmww_window_create = external_define(
"GMWW.DLL",
"window_create",
dll_cdecl,
ty_real,
3,
ty_real,
ty_real,
ty_real
)
这是初始化dll的一句话,只需执行一次
接下来你要调用dll的时候,是使用
external_call(global.dllgmww_window_create , argument0 , argument1 , argument2)
其中 argument 则是你的那句话的最后3个数1,0,0 对
另外 自己多试验喔~ 挖!吓咱一跳,突然出现啦..正在编辑呢 這論壇有人可以解答真感動...
另外在問一下
external_define(dll,name,calltype,restype,argnumb,arg1type,arg2type,
calltype的dll_cdel與dll_stdcall兩者有什麼差別呢?
restype的ty_real與ty_string是否意思著數字與字串? 噢~这2个呀,因为gm是利用delphi语言编写的,所以他们俩其实是delphi语言里的参数,大概解释就是这样··这个嘛主要是为了兼容某些语言是倒着读取参数的数据而设定的~~所以你一般使用dll_cdecl,是不会有问题的,具体更详细的作用你可以去看看delphi语言。
ty_real與ty_string正如你所说,意思就是数字和字符串,但是你要注意一点! 可以返回的参数虽然有16个,但是如果超过4个的话,就只能使用ty_real~ 謝謝,了解了 欢迎来玩~
页:
[1]