上書き確認ダイアログが出ない場合がある

[戻る]
roccy 2002/01/15(火) 21:40:50
環境 :MFC,VC++

CFileDialogで保存ダイアログボックスを出して、適当にファイル名をつけてファイルを保存します。
その後、すぐに、保存ダイアログボックスを出すと、
さっき保存したファイル名が選択された状態になっています。ここで、そのまま保存ボタンを押すと、
普通は、上書き確認ダイアログが出るはずなのに、上書き確認ダイアログがでません。

ちなみに
CFileDialog(false,NULL,NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT|OFN_FILEMUSTEXIST|
       OFN_PATHMUSTEXIST|OFN_NONETWORKBUTTON,"",this);
で生成して、
DoModal()で呼び出してます。

あと、そのまま保存ボタンを押すのではなく、ファイルをクリックしてやると、普通通り上書き確認
ダイアログがでます。

どなたか教えてください。

NGA 2002/01/16(水) 09:36:13
>その後、すぐに、保存ダイアログボックスを出すと、
同じスコープ内で続けて2回呼んでいると考えていいのでしょうか?
こちらの環境(NT4.0 SP6a VC++6.0 SP3 MFCベース)で確認したところ、おっしゃっている状態にはなりません。
2度目も上書き確認ダイアログが表示されました。

それからソースに全角空白を入れられるとコンパイルが通りませんので、あまり入れて欲しくないですね。

TAKA 2002/01/16(水) 10:07:01
>CFileDialogで保存ダイアログボックスを出して、適当にファイル名をつけてファイルを保存します。

ここで、拡張子を含めて指定していますか?

上記指定だと拡張子の無いファイル以外は確かに上書き確認は出ないでしょう。
そのファイルはおそらく、生成されていないのでは?
ファイルが出来ているか確認してみてください。

NGA 2002/01/16(水) 10:36:42
>上記指定だと拡張子の無いファイル以外は確かに上書き確認は出ないでしょう。
拡張子の有無に関わらずファイルが存在しなければ、2度目はでませんね。

roccy 2002/01/16(水) 19:28:21
[[解決]]
拡張子の指定がなかったため、でした。
NAGさん、TAKAさんありがとうございました。

古いスレッドには追加発言できません。