VC++でDLLを作りたいのですが・・・ – プログラミング – Home

VC++でDLLを作りたいのですが・・...
 
通知
すべてクリア

VC++でDLLを作りたいのですが・・・


めぐ
 めぐ
(@めぐ)
ゲスト
結合: 20年前
投稿: 8
Topic starter  

VC++でC言語の関数(動作保証済み)をDLL化してVBで使用したいのですが、
上手くDLLが作成できません。。。
VC++のプロジェクトでWin32 Dynamic-Link Libraryを選択して作成しようとしています。
できれば、C言語の関数は動作が保証されているのであんまりいじりたくありません。
VC++プロジェクトにCソースファイルを追加する形でVBで呼び出せるDLLは作成できないのでし
ょうか?
VCは初心者なので、分かりやすいアドバイスお願い致します。


引用解決済
トピックタグ
琅珎
 琅珎
(@琅珎)
ゲスト
結合: 21年前
投稿: 7
 

Cppファイル内で、Cの関数部分を
extern C {
// C関数のコード(test関数だとすると)を貼り付け
int WINAPI test(){

}
}
で実行するとVCでもCの命令が通ると思います。
あとは、defファイル内でtest関数を宣言してあげてください。
VBでも呼び出せるDLLが作成できると思います。


返信引用
めぐ
 めぐ
(@めぐ)
ゲスト
結合: 20年前
投稿: 8
Topic starter  

分かりやすい返答ありがとうございます。
もう一つ質問があるのですが、Cソースファイルには関数のサブルーチンも含まれているのです
が、そのサブルーチンもextern Cの中に記述してもいいのですか?


返信引用
琅珎
 琅珎
(@琅珎)
ゲスト
結合: 21年前
投稿: 7
 

> そのサブルーチンもextern Cの中に記述してもいいのですか?

かまいません。
もう、include部分以下全部extern内でもいいと思います。


返信引用
るーた
 るーた
(@るーた)
ゲスト
結合: 20年前
投稿: 10
 

extern C付けるのは、公開する関数だけで
内部で使用してる関数にはいらないです


返信引用
めぐ
 めぐ
(@めぐ)
ゲスト
結合: 20年前
投稿: 8
Topic starter  

琅珎さん、るーたさんありがとうございます。
お二人のアドバイスを参考にやってみようと思います。
このラウンジは初心者にも親切に答えて下さるので、大変助かります。
実際やってみてわからないことが有りましたら、また投稿させてください。
解決マークはDLLが作成できてから付けさせて下さい。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました