【发布时间】:2011-01-03 20:58:18
【问题描述】:
在使用 Delphi 2006 构建的 dll 中
Foo(aPath: widestring);
begin
_rootPath := aPath;
end;
在使用 Delphi 2010 构建的可执行文件中
_Foo := GetProcAddress(FooModule,’Foo’);
_Foo(‘123456’);
进入 dll,aPath = '123'。事实上,我传递的任何字符串都会被切成两半。
1.) 为什么我的字面量减半? 2.) 我该如何解决?
【问题讨论】:
-
D2010中_Foo是如何声明的?
-
请从您的 Delphi 编辑器中复制并粘贴 真实代码。您发布的不是有效的 Delphi 代码,因此我怀疑您在这里表达问题的准确程度。包括函数和变量声明。
-
@ Mason Wheeler - 显然不正确。我有 _Foo = 过程(aPath:字符串)。谢谢。
-
投票结束:不再相关。
标签: delphi delphi-2010 delphi-2006 widestring