Sto cercando di capire come scrivere un file binario con un FileStream
e BinaryWriter
e mantenere il file bloccato per la lettura mentre sto scrivendo. In particolare, non voglio che altre applicazioni/processi possano leggere dal momento mentre vengono scritti.Come posso bloccare un file durante la scrittura tramite FileStream?
//code to declare ba as a byte array
//dpath is the path to the file
FileStream BinaryFile = new FileStream(dpath, FileMode.Create, FileAccess.Write);
BinaryWriter Writer = new BinaryWriter(BinaryFile);
Writer.Write(ba);
Writer.Close();
BinaryFile.Dispose();
Ora il problema è che il file può essere aperto da altre applicazioni durante la scrittura, il che è indesiderabile nella mia attuale applicazione. Il FileStream
ha un metodo di blocco, ma quello si blocca per la scrittura e non per la lettura, quindi non mi aiuta.