![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
VisualStudio2010 VC++でDLLを作成し既存のDelphiXE2アプリで利用したいのですが
MSのサンプルソースそのままでDLLを作成しても、__stdcall;しても、Delphiの読み込み時に
「エントリポイントが見つかりません」と言われます。
http://msdn.microsoft.com/ja-jp/library/ms235636 …
ソースは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が他の環境で使えないとは考えられないので、なにか、常識的な
部分を知らないのだと思いますが、どなたかよろしくお願いします。
No.1ベストアンサー
- 回答日時:
「DLL エクスポート DEFファイル」あたりで検索して下さい。
http://elksimple.web.fc2.com/memo/dll.html
とか見つかるかと思いますが……。
戻り値や引数の型、数によってdllexportでエクスポートした場合の名前が変わります。
dllimportならば、同じ形式でエクスポート名を生成しますから問題は出ないのですが……
他の環境で使う場合には使いにくいものになります。
extern "C"
とすることで、命名規則が微妙に変わりますが…やはり使いやすいものにはなりません。
defファイルで指定する方法ならば名前は固定化できます。
# ただし、この方法ではクラスは使えない…でしょう。
あと…
[技術者向] コンピューター > プログラミング > C・C++
のカテゴリの方がよろしいかと……。
# まぁ、使うりがDelphiでも、DLL作成はVCのようですし。
ありがとうございました。おすすめのサイトでとても勉強になりました。
私はMSが世界標準だろうから、とても理想的で素直に出来ていると勝手に
思っていました。最近はやりのキネクトセンサーをdelphiのアプリに実装
しようとして今回の問題に直面。defファイルを試して見ましたところ
確かに名前はdumpbin で出てくるのですが、 add = @@?afjadsjfoi@lkjみたいな
表示で、delphiではやはりエントリポイントが見つかりません。と言われます。
他のDLLを覗いてみると _add
_divide
_showFunc
のように整然とエントリポイントの一覧が後半につながっています。
参考書類はどれも簡単にDLLを作り、そのまま使えるように書いてあるのが不思議です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) IT初心者です 仕事で、vb.netで作成されたdllをvbaで呼び出すプログラムを作成しろと言われ 1 2023/03/27 08:22
- フリーソフト cygewf-2.dllがない、と表示され、ダウンロードしたファイルが動作しない 2 2023/03/27 11:05
- Windows 10 IT初心者です! powershellで以下のようなエラーが出ました オブジェクト参照がオブジェクト 1 2023/05/17 11:30
- ノートパソコン .dllファイルがありませんと表示される 5 2023/04/30 03:03
- その他(OS) OBSが起動できません 3 2022/03/30 12:21
- その他(ソフトウェア) MMD PMXエディタ プラグイン 押せない はじめまして。MMDについて質問させていただきます。 7 2022/05/04 15:53
- その他(コンピューター・テクノロジー) パソ粥が壊れてしまい。 新しく買ったパソコンに Amplitued5 Max をダウンロードインスト 1 2022/05/22 00:33
- C言語・C++・C# Windows Formアプリからコンソールを呼び出して文字を出力させたい 8 2023/05/09 10:53
- Visual Basic(VBA) エクセルマクロでアニメを作る方法を教えてください。 1 2023/02/07 14:27
- その他(プログラミング・Web制作) Microsoft Forms とか、それに似たツールで計算をすることはできないか? 2 2023/01/14 11:26
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ホームページビルダーに乗り換...
-
勝手にdatファイルになるのです...
-
ファイルが勝手にダウンロード...
-
WordでURLをクリックしてそのペ...
-
ハイパーリンクを新規ウィンド...
-
ギガファイル便って女の人のエ...
-
Windows Media Player 位置ス...
-
サーバーに転送したファイルが0...
-
トップページのindex.htmlを削...
-
ファイルのURLってどこに書いて...
-
デスクトップのファイルが上書...
-
既存のページをホームページビ...
-
FFFTPでファイル削除できない
-
Hulft(6.0) for Linux の ...
-
内容証明郵便は転送されますか?
-
保存したホームページは、本当...
-
「サーバー・・・のCRLが取...
-
[ブロック解除]の方法が知りた...
-
URLに付いてる~(チルダ?)って...
-
ホームページビルダーでの変更...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelでのhtml形式ハイパーリン...
-
htmをhtmlに変える方法
-
~~~.rar.htmlというファイル...
-
ホームページビルダーでの外部CSS
-
ウェブページをCD-Rに焼いて自...
-
ホームページにPDFのリンクが張...
-
ホームページビルダーの拡張子...
-
ホームページ制作について
-
ホームページにPDFリンクを...
-
ロゴの背景を透明にしたい
-
HPの開設
-
HTMLファイル名の長さって制限...
-
VOBファイルのみからDVD-Video...
-
ホームベージに動画をのせたい
-
ホームページビルダーの件で。...
-
スライドショーで「終わり」の...
-
オーディオCDで焼けるものと焼...
-
ハイパーリンク先にワード内行...
-
拡張子KSDを開けるSUSIEプラグ...
-
SVGファイルをワードに貼り付け...
おすすめ情報