Próbuję dowiedzieć się, jak napisać plik binarny z FileStream
i BinaryWriter
i zachować plik zablokowany do odczytu podczas pisania. Nie chcę, aby inne aplikacje/procesy mogły odczytywać od zera, podczas gdy są zapisywane.Jak mogę zablokować plik podczas zapisu do niego przez 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();
Problem polega na tym, że plik może zostać otwarty przez inne aplikacje podczas zapisu, co jest niepożądane w mojej bieżącej aplikacji. FileStream
ma metodę blokowania, ale blokuje to pisanie, a nie czytanie, więc to mi nie pomaga.