次の方法で共有


InitInstance メンバ関数

更新 : 2007 年 11 月

Windows オペレーティング システムでは、同じアプリケーションの複数のコピー、つまり "インスタンス" を実行できます。WinMain は、アプリケーションの新しいインスタンスが起動されるたびに、InitInstance を呼び出します。

MFC アプリケーション ウィザードが作成する InitInstance の標準実装では、以下の操作を行います。

  • 基本となる動作は、ドキュメント テンプレートの作成です。このテンプレートから、ドキュメント、ビュー、フレーム ウィンドウが作成されます。この過程の詳細については、「ドキュメント テンプレートの作成」を参照してください。

  • .ini ファイルまたは Windows のレジストリ情報から標準のファイル オプション (最近使ったファイルの名前など) を読み込みます。

  • 1 つ以上のドキュメント テンプレートを登録します。

  • MDI アプリケーションの場合は、メイン フレーム ウィンドウを作成します。

  • コマンド ラインを解析して、コマンド ラインで指定されたドキュメントを開くか、新しい空のドキュメントを開きます。

独自の初期化コードを追加することも、ウィザードの書いたコードを変更して使用することもできます。

tba932ss.alert_note(ja-jp,VS.90).gifメモ :

MFC アプリケーションは、シングル スレッド アパートメント (STA: Single-Threaded Apartment) として初期化する必要があります。InitInstance のオーバーライドで CoInitializeEx を呼び出す場合、COINIT_MULTITHREADED ではなく COINIT_APARTMENTTHREADED を指定してください。詳細については、「PRB: MFC アプリケーションは、マルチスレッド区画としてアプリケーションを初期化する場合、応答を停止します。」 (828643) を参照してください。

参照

概念

CWinApp : アプリケーション クラス