Windows APIのコンパイルエラーについて
Posted: 2011年1月06日(木) 19:39
今回、始めてこの掲示板を使わせてもらいます。
過去の投稿を検索しても見つからなかったので質問させてもらいます。
ファイル名 : test.cpp
#include <windows.h>
int WINAPI WinMain(
HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow
) {
return 0;
}
上記のコードをコードをコマンドプロンプトで「bcc32 test.cpp」でコンパイルしようとすると
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
test.cpp:
警告 W8057 test.cpp 10: パラメータ 'hInstance' は一度も使用されない(関数 __stdca
ll WinMain(HINSTANCE__ *,HINSTANCE__ *,char *,int) )
警告 W8057 test.cpp 10: パラメータ 'hPrevInstance' は一度も使用されない(関数 __s
tdcall WinMain(HINSTANCE__ *,HINSTANCE__ *,char *,int) )
警告 W8057 test.cpp 10: パラメータ 'lpCmdLine' は一度も使用されない(関数 __stdca
ll WinMain(HINSTANCE__ *,HINSTANCE__ *,char *,int) )
警告 W8057 test.cpp 10: パラメータ 'nCmdShow' は一度も使用されない(関数 __stdcal
l WinMain(HINSTANCE__ *,HINSTANCE__ *,char *,int) )
Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland
Error: 外部シンボル '_main' が未解決(C:\BORLAND\BCC55\LIB\C0X32.OBJ が参照)
と出てコンパイルができません。
このコードはWindows APIを使ってみようという事で組んだコードです。
4つの警告の意味はなんとなく分かるのですが、エラーがなぜ出るのかが分かりません。
私はWindows APIを使う場合はアプリケーションエントリポイントがWinMain関数によって定められるので、main関数がなくても大丈夫だと思ったのですがご覧の通りうまくいきませんでした。
初心者の質問ですが、エラーの原因を教えてもらいたいです。
過去の投稿を検索しても見つからなかったので質問させてもらいます。
ファイル名 : test.cpp
#include <windows.h>
int WINAPI WinMain(
HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow
) {
return 0;
}
上記のコードをコードをコマンドプロンプトで「bcc32 test.cpp」でコンパイルしようとすると
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
test.cpp:
警告 W8057 test.cpp 10: パラメータ 'hInstance' は一度も使用されない(関数 __stdca
ll WinMain(HINSTANCE__ *,HINSTANCE__ *,char *,int) )
警告 W8057 test.cpp 10: パラメータ 'hPrevInstance' は一度も使用されない(関数 __s
tdcall WinMain(HINSTANCE__ *,HINSTANCE__ *,char *,int) )
警告 W8057 test.cpp 10: パラメータ 'lpCmdLine' は一度も使用されない(関数 __stdca
ll WinMain(HINSTANCE__ *,HINSTANCE__ *,char *,int) )
警告 W8057 test.cpp 10: パラメータ 'nCmdShow' は一度も使用されない(関数 __stdcal
l WinMain(HINSTANCE__ *,HINSTANCE__ *,char *,int) )
Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland
Error: 外部シンボル '_main' が未解決(C:\BORLAND\BCC55\LIB\C0X32.OBJ が参照)
と出てコンパイルができません。
このコードはWindows APIを使ってみようという事で組んだコードです。
4つの警告の意味はなんとなく分かるのですが、エラーがなぜ出るのかが分かりません。
私はWindows APIを使う場合はアプリケーションエントリポイントがWinMain関数によって定められるので、main関数がなくても大丈夫だと思ったのですがご覧の通りうまくいきませんでした。
初心者の質問ですが、エラーの原因を教えてもらいたいです。