既存の 32 ビット MFC コードを 64 ビットに移行するプロセスで、ビルドに成功し、コードをテストしようとしました。
残念ながら、プロセスをテストしている間、プロセスは失敗するようです(むしろクラッシュします)
失敗したスタック
hWnd = ::CreateDialogIndirect(hInst, lpDialogTemplate, pParentWnd->GetSafeHwnd(), AfxDlgProc);
CreateDlgIndirect(lpDialogTemplate, CWnd::FromHandle(hWndParent), hInst)
CDialog::DoModal()
ダンプが生成されず、生成された例外が SEH によってキャッチされない
デバッグ実行を既存の動作中の Win32 デバッグ実行と比較してみましたが、大きな違いは見つかりませんでした
現時点では、どのように進めればよいかわかりません。どんな種類の助けも大いに期待されています
例外情報: xyz.exe の 0x000007fefd89a5ed (KernelBase.dll) での初回例外: 0x00001234: 0x1234。
実際の問題
実際の問題は、ポインターの切り捨てが原因でクラッシュすることが原因でした。@OwenWengeredのソリューションは、問題を特定し、現在取り組んでいるそのようなすべてのポインターの切り捨てに対処するのに役立ちました。運が良かった:-)