L
liyinwei
Unregistered / Unconfirmed
GUEST, unregistred user!
Dll 的实现如下:
library TestDll;
{$R *.res}
procedure Test(var lpOutPut: PChar);stdcall;
begin
lpOutPut := PChar('ABCDEFGHIJKLMNOPQRSTUVWXYZ');
end;
exports
Test;
begin
end.
VB 的实现如下:
Private Declare Sub Test Lib "TestDll" (ByVal lpOutPut As String)
Private Sub Command1_Click()
Dim s As String
Dim i As Integer
s = String(100, 0)
Test (s)
MsgBox (s) ‘这里显示是几个乱码,而不是 A..Z
End Sub
我的目的是 VB 调用该 DLL 的函数的时候,返回一个字符串。
用 Delphi 调用该 DLL 正常返回字符,不知道用 VB 调用的时候哪里错了,还是 DLL 有问题。
我对 VB 不太熟,各位指点一下。
library TestDll;
{$R *.res}
procedure Test(var lpOutPut: PChar);stdcall;
begin
lpOutPut := PChar('ABCDEFGHIJKLMNOPQRSTUVWXYZ');
end;
exports
Test;
begin
end.
VB 的实现如下:
Private Declare Sub Test Lib "TestDll" (ByVal lpOutPut As String)
Private Sub Command1_Click()
Dim s As String
Dim i As Integer
s = String(100, 0)
Test (s)
MsgBox (s) ‘这里显示是几个乱码,而不是 A..Z
End Sub
我的目的是 VB 调用该 DLL 的函数的时候,返回一个字符串。
用 Delphi 调用该 DLL 正常返回字符,不知道用 VB 调用的时候哪里错了,还是 DLL 有问题。
我对 VB 不太熟,各位指点一下。