2

別のプロセスによってロックされているファイルからデータを読み取る方法はありますか?

fopen() または CreateFile() または OpenFile() を試すと、共有違反が発生します。

それでも、コマンド プロンプトに移動して「c:> more blah.h」を実行すると、ファイルが表示されます。したがって、「もっと」は何とかファイルを読み取ることができます。それがどのようにそれを達成するか考えていますか?

ありがとう!

4

4 に答える 4

1

fopen は推奨されておらず、msdn は fopen_s を推奨していますが、共有は有効になっていません。

fopen_s および _wfopen_s によって開かれたファイルは共有できません。ファイルを共有可能にする必要がある場合は、_fsopen、_wfsopen を適切な共有モード定数 (たとえば、読み取り/書き込み共有の場合は _SH_DENYNO) と共に使用します。

_fsopen を使用してファイルを開き、共有するフラグ ( _SH_DENYNO ) を有効にして、共有アクセスを許可します。

fsopen

于 2013-01-03T06:03:53.900 に答える
0

これを読んでください - http://msdn.microsoft.com/en-us/library/windows/desktop/aa363858(v=vs.85).aspx 「アクセス違反」と言うとき、Win32 0xc000005 エラーを意味しますか? 、 または、他の何か?

于 2013-01-03T03:54:27.843 に答える