다음을 통해 공유


NtCommitComplete 함수(wdm.h)

ZwCommitComplete 루틴은 호출 리소스 관리자가 트랜잭션의 데이터 커밋을 완료했음을 KTM에 알 수 있습니다.

구문

__kernel_entry NTSYSCALLAPI NTSTATUS NtCommitComplete(
  [in]           HANDLE         EnlistmentHandle,
  [in, optional] PLARGE_INTEGER TmVirtualClock
);

매개 변수

[in] EnlistmentHandle

ZwCreateEnlistment 또는 ZwOpenEnlistment에 대한 이전 호출에서 가져온 인리스트먼트 개체대한 핸들입니다. 핸들에는 개체에 대한 ENLISTMENT_SUBORDINATE_RIGHTS 액세스 권한이 있어야 합니다.

[in, optional] TmVirtualClock

가상 클록 값에 대한 포인터입니다. 이 매개 변수는 선택 사항이며 NULL일 수 있습니다.

반환 값

ZwCommitComplete 는 작업이 성공하면 STATUS_SUCCESS 반환합니다. 그렇지 않으면 이 루틴이 다음 값 중 하나를 반환할 수 있습니다.

반환 코드 설명
STATUS_OBJECT_TYPE_MISMATCH
지정된 핸들은 인리스트먼트 개체에 대한 핸들이 아닙니다.
STATUS_INVALID_HANDLE
개체 핸들이 잘못되었습니다.
STATUS_ACCESS_DENIED
호출자는 인리스트먼트 개체에 대한 적절한 액세스 권한이 없습니다.
STATUS_TRANSACTION_NOT_REQUESTED
트랜잭션 또는 해당 인리스트먼트가 올바른 상태가 아닙니다.
 

루틴은 다른 NTSTATUS 값을 반환할 수 있습니다.

설명

리소스 관리자는 TRANSACTION_NOTIFY_COMMIT 알림 서비스를 완료한 후 ZwCommitComplete를 호출해야 합니다.

ZwCommitComplete에 대한 자세한 내용은 커밋 작업 처리를 참조하세요.

커널 모드 드라이버에서 호출하는 경우 Windows 네이티브 시스템 서비스 루틴의 NtXxxZwXxx 버전은 입력 매개 변수를 처리하고 해석하는 방식으로 다르게 동작할 수 있습니다. 루틴의 NtXxx 버전과 ZwXxx 버전 간의 관계에 대한 자세한 내용은 네이티브 시스템 서비스 루틴의 Nt 및 Zw 버전 사용을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista 이상 운영 체제 버전에서 사용할 수 있습니다.
대상 플랫폼 유니버설
헤더 wdm.h(Wdm.h, Ntifs.h 포함)
라이브러리 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
DDI 규정 준수 규칙 HwStorPortProhibitedDDIs, PowerIrpDDis

추가 정보

TmCommitComplete

네이티브 시스템 서비스 루틴의 Nt 및 Zw 버전 사용

ZwCreateEnlistment

ZwOpenEnlistment