NtRemoveIoCompletion function
Removes an entry from an I/O completion object. If there are currently no entries available, then the calling thread waits for an entry.
Syntax
NTSTATUS NtRemoveIoCompletion (
__in HANDLE IoCompletionHandle,
__out PVOID *KeyContext,
__out PVOID *ApcContext,
__out PIO_STATUS_BLOCK IoStatusBlock,
__in_opt PLARGE_INTEGER Timeout
)
Parameters
IoCompletionHandle [in]
A handle to an I/O completion object.
KeyContext [out]
A pointer to a variable that receives the key context that was specified when the I/O completion object was associated with a file object.
ApcContext [out]
A pointer to a variable that receives the context that was specified when the I/O operation was issued.
IoStatusBlock [out]
A pointer to a variable that receives the I/O completion status.
Timeout [in, optional]
A pointer to an optional time out value.
Return value
An NTSTATUS code. For more information, see Using NTSTATUS values.
Remarks
IO_STATUS_BLOCK has the following definition.
typedef struct _IO_STATUS_BLOCK {
union {
NTSTATUS Status;
PVOID Pointer;
} DUMMYUNIONNAME;
ULONG_PTR Information;
} IO_STATUS_BLOCK, *PIO_STATUS_BLOCK;
This function has no associated import library or header file; you must call it using the LoadLibrary and GetProcAddress functions. The API is exported from ntdll.dll.
Requirements
Requirement | Value |
---|---|
DLL | ntdll.dll |