VBA调用Delphi的Dll问题 ( 积分: 100 )

  • 主题发起人 主题发起人 wangxz79
  • 开始时间 开始时间
W

wangxz79

Unregistered / Unconfirmed
GUEST, unregistred user!
Delphi中MyTest.dll导出<br>function MyTest: PChar;stdcall;<br>在VBA中调用形式为<br>declare MyTest &quot;MyTest.dll&quot; () as string<br>怎么有时候VBA中调用返回值有问题
 
Delphi中MyTest.dll导出<br>function MyTest: PChar;stdcall;<br>在VBA中调用形式为<br>declare MyTest &quot;MyTest.dll&quot; () as string<br>怎么有时候VBA中调用返回值有问题
 
pchar 和string 不是一回事, 你最好在vb中用安全的方式获得。 或者把delphi的MyTest方法返回值改为 string, 在library的第一个uses中写上sharemem 。
 
VBA中安全的方式是怎样
 
喔,这种函数返回之前最好在DLL内分配全局空间,返回空间指针,
 
function MyTest(sReturn: Pchar): boolean;stdcall;<br>在VBA中调用形式为<br>declare MyTest &quot;MyTest.dll&quot; (sReturn: string) as long
 
各位大侠,还是有问题,现在我要从Delphi的Dll返回一字符串到VBA,帮帮忙
 
怎么有时候VBA中调用返回值有问题<br><br>从你这句话大概可以看出。接口声明和 VBA中调用都应该是没有问题的吧.<br>如果有问题我觉的不会取得正确的返回值吧..<br><br>是不是你的DLL计算代码有问题呢?
 
问题解决了<br>Delphi返回的Result := StrNew()才行
 
后退
顶部