dll调用,无符号字符串调用问题!-请高手出马(200分)

  • 主题发起人 主题发起人 zaiai2003
  • 开始时间 开始时间
Z

zaiai2003

Unregistered / Unconfirmed
GUEST, unregistred user!
dll中的参数为unsigned char *在调用中,总是出现问题。<br>我察看了历史的问题,这一方面的问题真是不少!请求高手指导:<br>1。声明。主要是参数声明的原则<br>2。如何调用?<br>3。给一个成功的示例程序!
 
Delphi中char就是无符号的。
 
1.什么没什么特殊的原则,就可以使用PChar,但是记住函数的调用顺序,比如stdcall,<br>2.动态加载dll方式和静态都可以。静态的话直接申明就可以了。指定好对应到dll中函数地址。<br>3.我很讨厌直接要程序的,有提示后自己要去尝试,才能领悟到更多的东东。<br>我写一个例子,还不如参考Delphi中定义的Windows API吧。呵呵,<br> DWORD GetTempPath(<br> &nbsp; &nbsp;DWORD nBufferLength, // size, in characters, of the buffer <br> &nbsp; &nbsp;LPTSTR lpBuffer // address of buffer for temp. path <br> );这个LPTSTR和unsigned char *是一个意思:<br>看看Delphi是怎么申明的:<br>function GetTempPath(nBufferLength: DWORD; lpBuffer: PChar): DWORD; stdcall;<br>这是静态申明<br>function GetTempPath; external kernel32 name 'GetTempPathA';<br><br>Good Luck!
 
经过合作开发商提供示例程序,问题得到解决!原来很简单!给xiammy加上200分,表示感谢!就是你所说的!但是说的不很明确!
 
后退
顶部