MDIアプリケーションの起動時にコマンドライン指定ドキュメントを開く |
標準インプリメントでは、MDIアプリケーションの起動時に自動的に新規ドキュメントが開いてしまいます。この動作を無効にするとともに、起動時コマンドラインで指定されたドキュメントがある場合はそのファイルを開くために
InitInstance() の m_nShellCommand を修正します。 BOOL CMyApp::InitInstance() { :(省略) // DDE、file open など標準のシェル コマンドのコマンドラインを解析します。 CCommandLineInfo cmdInfo; ParseCommandLine( cmdInfo ); if ( cmdInfo.m_strFileName.IsEmpty() == FALSE ) // コマンドラインに指定したファイルがある場合はそれをオープンする cmdInfo.m_nShellCommand = CCommandLineInfo::FileOpen; else // コマンドラインに指定したファイルがない場合は何もしない cmdInfo.m_nShellCommand = CCommandLineInfo::FileNothing; // コマンドラインでディスパッチ コマンドを指定します。 if ( !ProcessShellCommand( cmdInfo )) return ( FALSE ); :(省略) } |