最小のプログラム
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" という
メッセージが表示されます。ここまでは非常に簡単です。