typemy.BPChar = space(100)//用之前要先分配空间
typemy.APChar = space(100)
ean = MyVarFunction(typemy)
function MyVarFunction(var AType: RMyType): integer;
begin
strpcopy(AType.APChar,'aa');//你不能直接赋值,就是这里出错
strpcopy(AType.BPChar, 'bb');
result := 7;
end;
这样就应该没问题了,vb调用没问题,vc调用也应该是没有问题的(没有试过)
pb。。。破烂。。。交你个方法识别它
procedure test(var a : pchar);
begin
// strpcopy(@a,'this is a message from dll');//这句根本就是错的(delphi调用都出错),可他能再pb中得到正确的结果
// strpcopy(a,'this is a message from dll');//这句正确的,在除了pb的其他环境可以得到正确的结果
end;