В моей 64-битной системе Win7 я создаю много текстовых файлов со своей собственной программой, которая использует:
hLogFile = CreateFile (LogFileSpec,GENERIC_READ|GENERIC_WRITE,FILE_SHARE_READ,NULL,
CREATE_ALWAYS,FILE_FLAG_RANDOM_ACCESS,NULL);
Когда один из этих файлов открыт (отображается на экране), я не могу открыть его снова(нарушение совместного доступа к файлам) в другой программе, используя:
hSrcFile = CreateFile (SrcSpec,GENERIC_READ,FILE_SHARE_READ,NULL,
OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
Однако, когда один из этих файлов открыт (отображается на экране), я могу открыть его снова в другой программе, используя:
hFile = fopen(FileSpec,"rb");
Кто-нибудь знает, что здесь происходит?Почему ОБА методы не могут открыть текущий отображаемый файл в режиме совместного использования?
Я действительно не хочу возвращаться к прошлому году и использовать fopen()
материал из библиотеки времени выполнения C, но я не могунайдите что-нибудь в Win32 API, которое выполнит эту работу.Есть идеи?