Я разработал несколько программ, которые одновременно пытаются заблокировать файл, чтобы мастер мог быть установлен из всех программ.Но этот файл также является dll, который программа должна загрузить, когда становится master.
Это код:
bool takeLock(){
.....
if ((handle = CreateFileA(path.c_str(), GENERIC_WRITE, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL)) == INVALID_HANDLE_VALUE) {
return false;
}
return true;
}
....
HMODULE lib = LoadLibraryA(path);
Я выбираю GENERIC_WRITE, потому что я думал, что LoadLibrary не будет записывать обратно вдлл.Но это не удается.Это также терпит неудачу на GENERIC_READ.
Является ли LoadLibrary чувствительным к блокировкам?