本ページは公開が終了した情報の複製であり、掲載時点での情報です。本ページに記載されている内容について各所に問い合わせることはご遠慮下さい。
サポート技術情報

[MSVC] MFCで印刷ダイアログが開かなくなる

文書番号: 401950

最終更新日: 2003/11/11


この資料は以下の製品について記述したものです。


概要

この資料は、AppWizard が作った MFC のスケルトンで、印刷ダイアログが
開かない、または、エラーがでる障害について説明したものです。

現象

標準の AppWizard が作ったスケルトンで次の手順で印刷を選ぶと assert がでます。
  1. 印刷メニューのプリンタの設定を選ぶ。
  2. 印刷設定を変更して印刷ダイアログに戻る。
  3. 印刷ダイアログをキャンセルで閉じる。
再び 1 をしようとするとデバッグモードでは APPPRNT.CPP Line 52 で ASSERT が発生し、リリースモードではダイアログが開かなくなります。
これは、MFC 2.0 の障害によるものです。

対処方法

この障害は、MFC のソース <APPPRNT.CPP> の 103 行目 ( CWinApp::DoPrintDialog) を、次の方法で修正することで回避することができます。
修正前
   while((nResponse = pPD->DoModal()) != IDOK)
修正後
   int nResponse = pPD->DoModal();
   while(nResponse != IDOK && nResponse != IDCANCEL)
前記の修正を行なったあと、必要な MFC ライブラリの再構築 (ビルド) が必要です。 MFC ライブラリのビルド方法は、\MSVC\MFC\SRC\README.TXT をご覧ください。

Keywords: KBBUG VC10 KB401950
Technology: kbAudDeveloper kbVCsearch

inserted by FC2 system