Я разрабатываю минифильтр для обнаружения перетаскивания & отбрасываем файл на жесткий диск. Когда пользователь перетаскивает & файл на диск:Minifilter, как изменить размер файла?
- Изменение имени файла на указанное имя файла. Пример: redirect_file_name.txt
- Затем я удаляю этот файл.
Но размер файла redirect_file_name.txt не изменяется.
- Если размер исходного файла составляет 1 ГБ, 1 Гб redirect_file_name.txt
- Если размер исходного файла составляет 100 МБ, 100 МБ redirect_file_name.txt
я изменить название источника на redirect_file_name.txt по this post
Как это сделать, чтобы изменить размер файла redirect_file_name.txt?
UPDATE: Используйте FltSetInformationFile с FileAllocationInformation
FILE_ALLOCATION_INFORMATION fileInformation;
fileInformation.AllocationSize.QuadPart = 1024;
status = FltSetInformationFile(FltObjects->Instance,
FltObjects->FileObject,
&fileInformation,
sizeof(FILE_ALLOCATION_INFORMATION),
FileAllocationInformation);
Но статус является 0XC000000D (STATUS_INVALID_PARAMETER)
Согласно другому сообщению, что вам ссылку, вы пытаетесь удалить перенаправленный файл. Итак, я понимаю, что удаление ZwDeleteFile не работает. В каком IRP вы пытаетесь удалить файл? Каково возвращение ZwDeleteFile? Некоторый код будет хорошим моментом, чтобы увидеть, что происходит. –
ZwDeleteFile - это успех. Но если я не использую ZwDeleteFile для удаления файла перенаправления, я вижу, что размер файла будет одинаковым с исходным файлом. Поэтому я хочу изменить размер файла, когда я перетаскиваю его на диск. ** Я хочу изменить размер файла ** – GSP
@ JonAnderOrtizDurántez Спасибо! Я решил свою проблему. – GSP