É possível bloquear de leitura um arquivo?

Estou desenvolvendo um aplicativo que verifica as alterações feitas em um arquivo por um programa separado (não escrito por mim).

Se uma alteração for detectada, ela abre o arquivo, lê a última linha e fecha o arquivo.

Estou usando o código a seguir para garantir que meu programa não tente bloquear o arquivo, mas apenas o abra no modo de leitura:

FileStream fs =
    new FileStream(
        _scannerFilePath,
        FileMode.Open,
        FileAccess.Read,
        FileShare.ReadWrite);
StreamReader sr = new StreamReader(fs);
var str = sr.ReadToEnd();
sr.Close();
fs.Close();

Infelizmente, apesar disso, continuo recebendo o seguinte erro sempre que meu programa tenta ler o arquivo:

System.IO.IOException was unhandled
    Message="The process cannot access the file 'D:\\LSDATA\\IdText.txt' because it is being used by another process."
    Source="mscorlib"
    StackTrace:
        at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
        at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy)
        at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)
        at LiquorSafe.Verification.Main.CheckLastScannedUser(String changedFileName)
        at LiquorSafe.Verification.Main.OnChanged(Object sender, FileSystemEventArgs e)
        at System.IO.FileSystemWatcher.OnChanged(FileSystemEventArgs e)
        at System.IO.FileSystemWatcher.NotifyFileSystemEventArgs(Int32 action, String name)
        at System.IO.FileSystemWatcher.CompletionStatusChanged(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* overlappedPointer)
        at System.Threading._IOCompletionCallback.PerformIOCompletionCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* pOVERLAP)
    InnerException: 

Existe alguma razão possível para isso?

Será que o outro programa está de alguma formabloqueio de leitura o arquivo e, assim, me impedindo de lê-lo?

questionAnswers(1)

yourAnswerToTheQuestion