« 2008年12月 | トップページ | 2009年2月 »

2009年1月

MFCのMDIで、起動時に空のウィンドウが表示されないようにするには

Visual Studio 2008にSP1を適用したので、久々にMFCをイジってみたくなりました。
※といっても今でも仕事では、基本的にMFCなんですが。。。

VS2008 SP1のMFCには標準で、Visual StudioライクやOfficeライクなアプリを作成する機能が追加されています。

興味本位でVisual Studioライクなアプリをウィザードで作成してみようかと思いました。

MDIのアプリ作成に関しては経験不足なので、忘れないように備忘録。

MFCのウィザードで作成したMDIアプリは、起動時に空のウィンドウが表示されます。

空のウィンドウが表示させずにアプリを起動する方法。

AppクラスのInitInstance()内に1行追加

--------------------------------

// DDE、file open など標準のシェル コマンドのコマンド ラインを解析します。
CCommandLineInfo cmdInfo;
ParseCommandLine(cmdInfo);

// 起動時に空のウィンドウが表示させない
cmdInfo.m_nShellCommand = CCommandLineInfo::FileNothing;  // <-- 追加

// コマンド ラインで指定されたディスパッチ コマンドです。アプリケーションが
// /RegServer、/Register、/Unregserver または /Unregister で起動された場合、False を返します。

if (!ProcessShellCommand(cmdInfo))
    return FALSE;

--------------------------------

msdnにも同じ例が載っていました。

| | コメント (0) | トラックバック (0)

« 2008年12月 | トップページ | 2009年2月 »