DllCall如何传递指向指针的指针char**参数?
DLL里面的函数如int WriteFile(char** fileName )
使用的参数是指向指针的指针,请问DllCall如何传递指向指针的指针char**参数?
我使用了DllStructCreate 和DllStructGetPtr,但是还是不行。请问哪位大神有示例或知道这个该怎么传?非常感谢!!!
$FNStruct = DllStructCreate("char fns;")
DllStructSetData($FNStruct, "fns", "test123456")
DllCall($dll, "int:cdecl","WriteFile", "ptr", DllStructGetPtr($FNStruct)) 在线等大神回答,谢谢!!! 没人吗............................ 本帖最后由 edisonx 于 2012-11-27 19:32 编辑
試試這個吧
$s = DllStructCreate("ptr ppfname;ptr pfname;charfname") ; struct ptr { char fname)
; p1 = address of fname
$p1 = dllStructGetptr($s, 3) ;p1 = address of fname
dllStructSetData($s, 2, $p1) ;set "address of fname" to pfname
;p2 = address of p1
$p2 = DllStructGetPtr($s, 2)
dllStructSetData($s, 1, $p1)
ConsoleWrite("p1 = " & $p1 & @CRLF)
ConsoleWrite("p2 = " & $p2 & @CRLF)
http://blog.sina.com.cn/s/blog_65db99840100lwhs.html 谢谢各位,我试试去~~~ 学习学习学习学习 哇,我连楼主的主题都不懂{:face (394):}
页:
[1]