PChar をパラメーターとして受け取る XE2 で記述された DLL があります (したがって、Unicode 文字列です)。この DLL を呼び出すアプリケーションを Delphi 2006 で作成したいと考えていました。これは可能ですか? PChar パラメータを渡すにはどうすればよいですか? Delphi XE2 でそれを行っていた場合、単純に次のようにします。
tmpString := 'hello';
DLL_Call(PChar(tmpString));
Delphi 2006 で tmpString を WideString として定義しようとしましたが、WideString と XE2 Unicode 文字列はかなり異なると思いますか?
文字列を DLL に正しく渡す方法はありますか? 私は DLL ソース コードを管理しているので、明らかに関数定義を PAnsiChar に変更できますが、これは避けたいと思います。可能であれば、Delphi 2006 側からの解決策を期待していました。