第三回・ちょこっと改造

さて、三回目。今回は第一回で作ったプログラムをちょっと改造してみましょう。

ではさっそく下のようにソースを変更してください。


#include <windows.h>

int WINAPI WinMain(HINSTANCE hinstance, HINSTANCE hprevinstance
                        , LPSTR lpCmdLine, int cmdShow)
{
        MessageBox(NULL, lpCmdLine, "メッセージ", MB_OK);
        return 0;
}

ソースコード(コピー&ペースト用)

どこが変わったかわかりましたか?””(ダブルクォーテーション)がないのがポイントです。
ダブルクォーテーションがある場合はそのまま表示されますが、ない場合は変数として解釈されます。

ですがその変数はどこにあるのでしょうか?
見つけましたか? WinMain関数の第三引数ですね。さて、第三引数はコマンドラインでしたね。

ではさっそく実行してみましょう。
・・・え、何も表示されない?
はい、それで成功です。ですが、このプログラムにファイルをドラッグ&ドロップするとどうでしょう?

え?実行ファイルがどこにあるかわからない?参りましたね〜、
VisualC++がインストールされているフォルダのMyProjects フォルダの中のkcn01フォルダの
Debugフォルダの中にあります。

kcn01.exeに何でもいいのでファイルをドラッグ&ドロップ してみてください。
そのファイル名がメッセージボックスで表示されますね?

はい、この様にドラッグ&ドロップした場合 ドラッグ&ドロップされたファイル名がコマンドラインに
入るわけです。

今回はここまでです。ご苦労様でした。

戻る