Borland C++ Builder XE2 で 32 ビット DLL を作成しましたが、問題ありません。
64ビット版の作成も任されました。「方法」を調べたところ、Builder はまだ 64 ビットのコンパイルをサポートしていないことがわかりました。
掘り下げた後、これを行う(またはあらゆる種類の64ビットコンパイルを行う)唯一の方法は、ビジュアルスタジオエクスプレスコマンドラインを使用することであると思われました。したがって、次のコマンドを試してコンパイルを試みました。
CALL "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.Cmd" /x64
"C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64\cl.exe" -IC:\projects\dll -I"C:\Program Files (x86)\Embarcadero\RAD Studio\9.0\include\windows\vcl" -I"C:\Program Files (x86)\Embarcadero\RAD Studio\9.0\include\windows\rtl" -MD -LD C:\projects\dll\dll.cpp -FeMyDLL.dll
上記を実行すると、次のエラーが表示されます。
C:\Program Files (x86)\Embarcadero\RAD Studio\9.0\include\windows\rtl\sysmac.h(162) : 致命的なエラー C1189: #error : "System.hpp/sysmac.h および関連するヘッダーには __declspec( uuid(..)) および __uuid のサポート"
Google をいじくり回すと、 #define DECLSPEC_UUID(guid) の追加に関するいくつかの投稿しか得られませんでしたが、これはまったく役に立ちません。
私の質問は、Borland C++ プロジェクト (または Borland で作成されたアプリケーション / DLL) を 64 ビット用に正常にコンパイルしたことがある人はいますか?