Определение операции записи файла Office в файловой системе Dokan

Я использую dokan в качестве файловой системы и не знаю, как идентифицировать операцию записи офисного файла. Особенно файлы блокировки и временные файлы. Я должен их идентифицировать, потому что только основной файл должен быть загружен во внешнюю базу данных.

Теоретически я получаю офисное слово для работы, но это скорее обходной путь. Я надеюсь, что есть специальный атрибут для идентификации временных файлов.

С уважением, Крис


person masterchris_99    schedule 18.07.2012    source источник
comment
Класс FileSystemWatcher?   -  person danish    schedule 25.07.2012


Ответы (1)


Вы можете проверить ProccessId, чтобы убедиться, что его процесс Office. Проверьте, соответствует ли имя файла временному файлу. Некоторые версии Office вызывают CreateFile с FILE_FLAG_TEMPORARY, а некоторые устанавливают его позже в SetAttributes. Лучший способ — отложить загрузку файла до очистки, и даже тогда вы можете добавить таймер, чтобы загрузить его через пару секунд. (Не уверен, но, кажется, я помню, что OpenOffice закрывает временный файл, а затем снова открывает его для вызова MoveFile). Надеюсь, поможет.

person user629926    schedule 02.08.2012