プロパティシートのページハンドラー(たとえば、OnInitDialogハンドラー)内ではなく、トップレベルアプリケーションのtry-catchブロックで例外をキャッチして処理したいと考えています。したがって、以下のコードでは、これらの例外はcatch(...)ブロックで処理されるはずです。プロパティシートのページハンドラーからスローされた例外
try {
CMyPropertySheet sheet;
sheet.DoModal();
} catch (...) {
// i want to handle an exception here
}
ただし、OnInitDialogが例外をスローすると、Windowsデストラクタを実行した後でアサートが(デバッグモードで)表示されます。 CMyPropertySheetデストラクタのEndDialog(m_hWnd、IDCANCEL)を呼び出しても、アサートは残ります。不足しているものや壊れているものを検出するのを手伝ってください。私はWTLを使用します。私のプロパティシートclaaはCPropertySheetImplから派生しています。
ありがとうございました。