#ifndef _NTIOAPI_H
/**
* The NtQueryIoCompletion routine queries information about an I/O completion port.
*
* \param[in] IoCompletionHandle Handle to the I/O completion port.
* \param[in] IoCompletionInformationClass The type of information to query.
* \param[out] IoCompletionInformation Pointer to a buffer that receives the information.
* \param[in] IoCompletionInformationLength The size of the buffer.
* \param[out, optional] ReturnLength Pointer to a variable that receives the number of bytes returned.
* \return NTSTATUS Successful or errant status.
*/
NTSYSCALLAPI
NTSTATUS
NTAPI
NtQueryIoCompletion(
_In_ HANDLE IoCompletionHandle,
_In_ IO_COMPLETION_INFORMATION_CLASS IoCompletionInformationClass,
_Out_writes_bytes_(IoCompletionInformationLength) PVOID IoCompletionInformation,
_In_ ULONG IoCompletionInformationLength,
_Out_opt_ PULONG ReturnLength
);
View code on GitHub#ifndef _NTZWAPI_H
NTSYSCALLAPI
NTSTATUS
NTAPI
ZwQueryIoCompletion(
_In_ HANDLE IoCompletionHandle,
_In_ IO_COMPLETION_INFORMATION_CLASS IoCompletionInformationClass,
_Out_writes_bytes_(IoCompletionInformationLength) PVOID IoCompletionInformation,
_In_ ULONG IoCompletionInformationLength,
_Out_opt_ PULONG ReturnLength
);
View code on GitHubNo description available.
Function NtQueryIoCompletion receives number of file operations pending on specified IO Completion Object.
HANDLE to IO Completion Object opened with IO_COMPLETION_QUERY_STATE access.
See IO_COMPLETION_INFORMATION_CLASS for possible values.
User's allocated buffer for result data.
Length of IoCompletionInformation buffer, in bytes.
Optionally receives required length of buffer.