Для целей тестирования и разработки было бы неплохо как-то смоделировать (ложные) ошибки доступа к файлам к локальным файлам. Например, даже если приложение правильно открыло файл с соответствующими ограничивающими флагами общего доступа, все равно может произойти попытка доступа к файлу (через любую из функций Win32 API или вашу любимую платформу, которая внутренне просто вызовет любую из функции Win32 API) может произойти сбой.
Единственный пример, который мне удалось отследить, - это антивирусный сканер на машине, но я думаю, что могут быть и другие причины. (В комментарии этого вопроса Люк упоминает что-то о «драйверах фильтра файловой системы».)
FWIW, я знаю несколько возможностей «симулировать» проблемы с файлами, которые я не рассматриваю как хорошие решения, либо потому, что они требуют много ручной работы, либо потому, что они не подходят для каждого приложения / файл:
- Поместите файл на сетевой диск или съемное устройство хранения - таким образом, вы можете просто испортить устройство (отключить, заполнить диск, ...).
- Откройте процесс приложения в Process Explorer и закройте дескриптор файла, который вы хотите проверить.
Таким образом, вопрос на самом деле заключается в том, существуют ли ((полу) автоматизированные) инструменты, которые могут испортить доступ к файлу (на диске NTFS), даже если приложение уже открыло файл с соответствующим (для приложение) поделиться флагами.