BorlandMM.dll的疑惑?(27分)

  • 主题发起人 主题发起人 lovellybaby
  • 开始时间 开始时间
L

lovellybaby

Unregistered / Unconfirmed
GUEST, unregistred user!
根据Borland说在Dll中导出的函数无论是参数还是返回类型涉及到指针引用的就要在单元的开头加上ShareMem,在部署时就要带上BorlandMM.dll文件。可是我在Dll导出函数时返回一个Record其中所有域都是String类型,可我并没有Uses ShareMem但是使用时并没有问题啊。这么回事呢?
 
非delphi开发的程序调用该dll时问题较多
 
可能是你的记录结构中使用了STring类型的字段域, 所以发生该问题.
可以使用WideString类型吧.
 
1用到Dll的单元和Dll都第一个引用ShareMem;
2如果Record不行,建议:
Record该成这样:
MyString := Tmstr1+char(10)+Tmstr2+char(10)+Tmstr3+Char(10)...
接收时用一个List:TStringList
List.text := MyString;
这样
List.String[0] -> Tmstr1
list.String[1] -> Tmstr2
...
 
后退
顶部