• 締切済み

ファイルの書き込みOpen中に、読み込みOpen

VS2010 MFC VC++環境で悩んでいます。 書き込みOpen if(!log_d.Open(pszFileNameLog, CFile::modeCreate | CFile::modeWrite, &eerr)){ 中に、同じプロセスで読みこみOpenができません。 if(!log_d.Open(pszFileNameLog, CFile::modeRead, &err)){ 矛盾することは分かっているのですが、できる方法があれば と思っています。 どなたかご存知の方おられましたら、よろしくお願いいたします。

みんなの回答

  • Wr5
  • ベストアンサー率53% (2173/4061)
回答No.2

>やってみましたが、 >>CFile::shareDenyNoneかCFile::shareDenyWrite >どちらもだめでした。 どちらに指定しました? >if(!log_d.Open(pszFileNameLog, CFile::modeCreate | CFile::modeWrite, &eerr)){ か >if(!log_d.Open(pszFileNameLog, CFile::modeRead, &err)){ のどちらか…。 書き込みオープンしている側はCFile::shareDenyWriteを、読み込みオープンしている側は…指定なし……でしたかねぇ。 http://www.g-ishihara.com/mfc_fi_01.htm ちょっと微妙でしょうか…。 # 他プロセス…ではないですしねぇ……。

gohan-tubu
質問者

お礼

Wr5さん >どちらに指定しました? >>if(!log_d.Open(pszFileNameLog, CFile::modeCreate | CFile::modeWrite, &eerr)){ >か >>if(!log_d.Open(pszFileNameLog, CFile::modeRead, &err)){ >のどちらか…。 どちらもやってみました。 書き込み側のFDは、CFile型で、 読み込み側はCStdioFile型だったのですが、 両方ともCFile型にしてやってみましたが、結果は同じでした。 プログラミンぐを30年以上やってますが、オブジェクト指向というのは どーもなじみません。 読み込みの時は、書き込み側をCloseするようにして対応します。 ご回答ありがとうございました。

gohan-tubu
質問者

補足

私は某研究所の公務員ですが、63歳で今日定年退職しました。 現役の方々、将来の日本国、日本人の為に頑張ってください。

  • Wr5
  • ベストアンサー率53% (2173/4061)
回答No.1

http://msdn.microsoft.com/ja-jp/library/cz0a83sb.aspx CFile::shareDenyNoneかCFile::shareDenyWriteでしょうかね?

gohan-tubu
質問者

お礼

ご回答ありがとうございます。 やってみましたが、 >CFile::shareDenyNoneかCFile::shareDenyWrite どちらもだめでした。

関連するQ&A