みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

error LNK2001: 外部シンボル "_main" は未解決です

VisualC++6.0で、新規作成→win32 Dinamic-Link Libraryでプロジェクト
を作成し、dllファイルを作っています。
今までは、上手くコンパイル出来て、dllを作れていました。
友人の作ったライブラリにリンクして、ソースファイルで
そのライブラリの関数を使って、コンパイルすると、

LIBC.lib(crt0.obj) : error LNK2001: 外部シンボル "_main" は未解決です。

というエラーが出て困っています。
今、プロジェクトの設定→リンク→アウトプットの
エントリポイントシンボルはDllEntryPoint@12となっています。
どうしたら良いでしょうか?
どなたかご教授くださると助かります。

ちなみに、ライブラリの関数をコメントにすると、コンパイル出来ます。

投稿日時 - 2006-02-08 10:23:21

QNo.1951707

すぐに回答ほしいです

質問者が選んだベストアンサー

もう一つ、書くの忘れてました。

exeを作るプロジェクトにした時、main()関数が無くて
>LIBC.lib(crt0.obj) : error LNK2001: 外部シンボル "_main" は未解決です。
が出てるんなら、main()を書かないと駄目ですよ。

投稿日時 - 2006-02-09 07:53:48

お礼

プログラムに

void main(){}

と付け加えると、コンパイルできました。
ありがとうございました。

投稿日時 - 2006-02-13 00:24:48

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

DLL(ライブラリ)を作ってるプロジェクトだと、main()関数があるとまずいのです。

ライブラリにmain()が有ると、それが実行されてしまいますよね?

解決方法は、exe作るようなプロジェクトに変更するか?ライブラリにするんなら、main()やWinMain()以外の関数名にするしか有りません。

投稿日時 - 2006-02-09 07:41:14

あなたにオススメの質問