Как можно проверить, что файл не используется другой программой ( и не запущен, если выполняемый)?
Доброго дня!
Нужно как-то проверить, что файл не открыть в другой программе, либо не используется как подключаемая библиотека, либо файл не запущен на выполнение, если это выполняемый.
Пока что я вижу только как вариант попробовать его удалить и вернуть на место.
Может есть более разумные способы? Интересует в основном под Windows, но хотелось бы и кроссплатформенно.
Используйте fopen флаг l или на уже открытом файле попытайтесь заблокировать на эксклюзивное использование fcntl, если произойдет ошикбка на открытие файла на чтение - значит он уже открыт