VC++でDLL、エントリポイントが出来ない?
VisualStudio2010 VC++でDLLを作成し既存のDelphiXE2アプリで利用したいのですが
MSのサンプルソースそのままでDLLを作成しても、__stdcall;しても、Delphiの読み込み時に
「エントリポイントが見つかりません」と言われます。
http://msdn.microsoft.com/ja-jp/library/ms235636.aspx
ソースはMSのチュートリアルそのままです。
ためしに VS2010のツール dumpbin.exe /exports ????.dll と中身を覗くと
1 0 ooo11104 ?Add@MyMathFuncs@MathFuncs@@SGNNN@Z
2 1 ,,,,,,,,,,,,,,
のような表示とSummary 以下しか表示されずスタティックライブラリにしても中身は同じです。
それでは、と他のDLLをいくつか覗いてみましたが、大概のDLLやLIBファイルを覗くと
すっきりしたきれいな関数名の一覧がdumpbin /exports で表示されます。
では、DLLになっていないのかというと、作ったDLLを同じVC++でチュートリアル通りに
呼び出すと何の問題もなく使えますので、多分正常なのでしょう。 しかし、どうして
エントリポイントの一覧が見える形にならないのか分かりません。多言語で利用するには
必要かと思います。
VC++で作成したDLLやLibが他の環境で使えないとは考えられないので、なにか、常識的な
部分を知らないのだと思いますが、どなたかよろしくお願いします。
お礼
w-007 さん 有り難うございます。 出てきたサイトにまずスキャンせよと強く勧められたので、やってみました。 途中で、マイクロソフトで承認されていると書かれていたので、先に進みました。 もちろん嘘を書いてあるかも知れないとは、承知しております。全て自己責任です。 行き着くところまで行きましたが、エラー表示は消えず、恐る恐るの試行は不成功でした。 ptapi.dll は修復されず、インストールもされませんでした。 以上お礼と報告です。