Как узнать, для каких процессов открыт определенный файл, а также в режимах их открытия, доступа и обмена? Кроме того, возможно ли изменить эти значения для процесса? Или даже можно открыть файл для чтения, если он уже открыт для монопольного доступа другим процессом?
Обратите внимание, что я не хочу лишать законной силы дескриптор процесса, открывающего файл. Я просто хочу иметь доступ к файлу (если это возможно).
(Я в основном спрашиваю о Windows, но приветствуются решения для других платформ, поскольку они вносят вклад в знания сообщества.)
Редактировать: я нашел несколько ответов на свой первый вопрос здесь и там .
Редактировать 2: Спасибо всем за инструменты, которые вы упомянули, но я в основном ищу программные методы (например, с использованием API Win32).