プロパティ シートを作成する以下のコードは、アプリケーション ファイルで問題なく動作します。
.......
CProp_Sheet Pr_Sheet(_T("PS"));
CPr_Page_1 Pr_Page_1;
CPr_Page_2 Pr_Page_2;
Pr_Sheet.AddPage(&Pr_Page_1);
Pr_Sheet.AddPage(&Pr_Page_2);
m_pMainWnd = &Pr_Sheet;
int nResponse = Pr_Sheet.DoModal();
ただし、同じコードを DLL に入れ、別のアプリケーションのメニュー項目から呼び出すと、m_pMainWnd
使用できません (アプリケーションのメニューはプロパティ シートの背後に表示されたままになります)。
ハンドルを作ってみました
CWnd* m_pWnd = &Pr_Sheet;
CProp_Sheet コンストラクターで使用m_pWnd
しますが、実行時に正しくコンパイルしても失敗は常に発生します。
CProp_Sheet::OnInitDialog().
コメントをお寄せいただきありがとうございます。