次の方法で共有


InitInstance メンバー関数

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

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

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

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

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

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

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

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

注意

MFC アプリケーションは、シングル スレッド アパートメント (STA: Single-Threaded Apartment) として初期化する必要があります。 InitInstance のオーバーライドで CoInitializeEx を呼び出す場合、COINIT_MULTITHREADED ではなく COINIT_APARTMENTTHREADED を指定してください。 詳細は、「prb を参照してください。MFC アプリケーションがマルチ スレッド アパートメント (828643) でアプリケーションを初期化するときを応答を停止https://support.microsoft.com/default.aspx?scid=kb;en-us;828643

参照

概念

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