Может ли NtWriteFile () произвести короткую запись? - PullRequest
0 голосов
/ 18 июня 2020

Рассмотрим этот фрагмент (дескриптор был открыт с флагом FILE_SYNCHRONOUS_IO_NONALERT):

IO_STATUS_BLOCK io;
NTSTATUS r = NtWriteFile(h, NULL, NULL, NULL, &io, data, data_len, &pos, NULL);

if NT_SUCCESS(r)
    assert(io.Information == data_len);      // can we succeed with short write?
else
    // is IO_STATUS_BLOCK filled?
    assert(io.Information == 0);             // can we fail and yet write some data?

Возможно ли, чтобы NtWriteFile() преуспел, но при этом написал меньше, чем запрошено?

Это Возможно ли, что NtWriteFile() завершится неудачно, но при этом будут записаны некоторые данные? Если да - как определить количество записанных данных?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...