0

Windows サービスからの書き込みのためにファイルをロックしたいのですが、今のところロックを取得しようとしてもうまくいきません。ただし、同じコードがコンソール アプリケーションから機能します。

私が読んだことから、これは私のサービスで日和見ロックが有効になっていないためです。

レジストリ ハックに頼らずに、ファイルをサービスからロックしてファイルへの書き込みを防ぐにはどうすればよいですか?

ロックするコード:

FileStream lockStream = new FileStream(path, FileMode.Open, FileAccess.Read);

ロックを解除するコード:

lockStream.Close();
lockStream.Dispose();
4

2 に答える 2

1
  using (fs = new FileStream("somefile.txt", FileMode.Open, FileAccess.Read, FileShare.None))
  { }

読み取りまたは書き込みのためにファイルを開くときに、FileShare モードを使用しましたか?

于 2010-11-23T12:23:47.647 に答える
0

グローバルミューテックスを慎重に使用してリリースしてください(最終的になど)

于 2010-11-23T13:40:09.290 に答える