NtAssociateWaitCompletionPacket 함수

대상 개체에 대한 대기 완료 연결을 만듭니다.

구문

NTSTATUS NtAssociateWaitCompletionPacket (
    _In_ HANDLE WaitCompletionPacketHandle,
    _In_ HANDLE IoCompletionHandle,
    _In_ HANDLE TargetObjectHandle,
    _In_opt_ PVOID KeyContext,
    _In_opt_ PVOID ApcContext,
    _In_ NTSTATUS IoStatus,
    _In_ ULONG_PTR IoStatusInformation,
    _Out_opt_ PBOOLEAN AlreadySignaled
    )

매개 변수

WaitCompletionPacketHandle [in]

연결을 설명하는 대기 완료 패킷에 대한 핸들입니다. 이 개체는 사용하지 않아야 합니다.

IoCompletionHandle [in]

개체가 신호를 받을 때 알림을 받을 IO 완성 개체에 대한 핸들입니다.

TargetObjectHandle [in]

알림을 받을 대기 가능한 개체에 대한 핸들입니다.

KeyContext [in]

NtRemoveIoCompletion을 호출하는 동안 반환되는 키 컨텍스트를 제공합니다.

ApcContext [in]

NtRemoveIoCompletion을 호출하는 동안 반환되는 apc 컨텍스트입니다.

IoStatus [in]

NtRemoveIoCompletion을 호출하는 동안 반환되는 IoStatus-Status> 데이터입니다.

IoStatusInformation [in]

NtRemoveIoCompletion을 호출하는 동안 반환되는 IoStatus-Information> 데이터입니다.

AlreadySignaled [out]

이 함수가 성공할 때 대상 개체가 연결 시 이미 신호를 받았는지 여부를 나타내는 부울 변수에 대한 선택적 포인터입니다.

반환 값

NTSTATUS 코드입니다. 자세한 내용은 NTSTATUS 값 사용을 참조하세요.

설명

개체가 신호를 받으면 패킷이 제공된 완료 포트에 큐에 대기되고 제공된 값은 NtRemoveIoCompletion의 호출자에게 전달됩니다. 패킷이 선택되면 이 함수를 다시 호출하여 연결을 다시 설정해야 합니다. 대기 완료 패킷이 연결에 이미 사용 중인 경우 오류가 반환됩니다.

이 함수에는 연결된 가져오기 라이브러리 또는 헤더 파일이 없습니다. LoadLibraryGetProcAddress 함수를 사용하여 호출해야 합니다. API는 ntdll.dll 내보냅니다.

요구 사항

요구 사항
DLL ntdll.dll