2008-11-06 5 views
0

Внезапно мы выяснили, что WinXP SP3 не разрешил создавать разреженный файл NTFS в пользовательском режиме. А именно, DeviceIoControl с FSCTL_SET_SPARSE возвращается с ошибкой 0x57 (ERROR_INVALID_PARAMETER). Этот же код хорошо работает в SP2. Кроме того, все нормально, если совершать одни и те же вызовы из режима ядра (как в SP3, так и в SP2).Редкие файлы в WinXP SP3

Google ничего не говорит об этом. Кто-нибудь встретил эту проблему или даже получил дополнительную информацию об этом?

+0

Вы используете FSCTL_SET_SPARSE и т. Д.? Больше информации здесь: http://msdn.microsoft.com/en-us/library/aa365566(VS.85).aspx – bk1e 2008-11-06 17:10:39

+0

Да, конечно. В usermode DeviceIoControl с FSCTL_SET_SPARSE возвращается с ошибкой 0x57 (ERROR_INVALID_PARAMETER) под WinXP SP3 и хорошо работает под WinXP SP2. – Yakov 2008-11-06 17:34:08

ответ

1

Редкие файлы работают отлично для меня в WinXP SP3. Каково значение GetLastError после вызова CreateFile? Или после DeviceIoControl, если это то, что вы используете?

Этот сайт имеет хорошие данные о разреженных файлов: http://www.flexhex.com/docs/articles/sparse-files.phtml

В документации MSDN будет дано.

 Смежные вопросы

  • Нет связанных вопросов^_^