最小のプログラム
Windows Program は WinMain() から始まることになっています。
従って、最低限、この関数を用意する必要があります。最小のプログラムと
いう意味では、この関数として return のみを書いたものでしょう。
ただし、関数の戻り値に注意する必要があります。オンラインマニュアルに
よれば何もせずに(メッセージループに入る前に)戻る場合は、0 (zero)
を返すべきだと書かれています。というわけで、全体のプログラムは
/* WinMain.c */ #define STRICT #include <windows.h> int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) { return 0; }ということになります。
Hello Windows プログラム
最小のプログラムは、あまりと言えばあんまりなので(笑)、せめて
メッセージ位は出してみましょう(Kernighan and Ritchie の教科書でも
Hello World の出力が最初の例ですからね)。メッセージを出す簡単な
方法は、Window を作らなくても使えるメッセージ出力関数、
MessageBox() を使うことでしょう。
/* WinMain.c */ #define STRICT #include <windows.h> int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) { MessageBox( NULL, "Hello Windows", "My Program", MB_OK ); return 0; }として、コンパイル・リンクし、起動すると、Caption に "My Program" と 書かれた、OK ボタンのついた Window の中に "Hello Windows" という メッセージが表示されます。ここまでは非常に簡単です。