CreateTransaction 함수(ktmw32.h)

새 트랜잭션 개체를 만듭니다.

구문

HANDLE CreateTransaction(
  [in, optional] LPSECURITY_ATTRIBUTES lpTransactionAttributes,
  [in, optional] LPGUID                UOW,
  [in, optional] DWORD                 CreateOptions,
  [in, optional] DWORD                 IsolationLevel,
  [in, optional] DWORD                 IsolationFlags,
  [in, optional] DWORD                 Timeout,
  [in, optional] LPWSTR                Description
);

매개 변수

[in, optional] lpTransactionAttributes

반환된 핸들을 자식 프로세스에서 상속할 수 있는지 여부를 결정하는 SECURITY_ATTRIBUTES 구조체에 대한 포인터입니다. 이 매개 변수가 NULL이면 핸들을 상속할 수 없습니다.

구조체의 lpSecurityDescriptor 멤버는 새 이벤트에 대한 보안 설명자를 지정합니다. lpTransactionAttributesNULL이면 개체는 기본 보안 설명자를 가져옵니다. 트랜잭션에 대한 기본 보안 설명자의 ACL(액세스 제어 목록)은 작성자의 기본 또는 가장 토큰에서 가져옵니다.

[in, optional] UOW

예약되어 있습니다. 0이어야 합니다.

[in, optional] CreateOptions

선택적 트랜잭션 지침입니다.

의미
TRANSACTION_DO_NOT_PROMOTE
트랜잭션을 배포할 수 없습니다.

[in, optional] IsolationLevel

예약; 는 0을 지정합니다.

[in, optional] IsolationFlags

예약; 는 0을 지정합니다.

[in, optional] Timeout

제한 시간 간격(밀리초)입니다. 0이 아닌 값을 지정하면 준비된 상태에 도달하지 않은 경우 간격이 경과하면 트랜잭션이 중단됩니다.

무한 제한 시간을 제공하려면 0 또는 INFINITE를 지정합니다.

[in, optional] Description

트랜잭션에 대한 사용자가 읽을 수 있는 설명입니다.

반환 값

함수가 성공하면 반환 값은 트랜잭션에 대한 핸들입니다.

함수가 실패하는 경우 반환 값은 INVALID_HANDLE_VALUE입니다. 확장 오류 정보를 가져오려면 GetLastError 함수를 호출합니다.

다음 목록에서는 가능한 오류 코드를 식별합니다.

설명

CloseHandle 함수를 사용하여 트랜잭션 핸들을 닫습니다. 클라이언트가 트랜잭션 핸들을 사용하여 CommitTransaction 함수를 호출하기 전에 마지막 트랜잭션 핸들이 닫힌 경우 KTM은 트랜잭션을 롤백합니다.

트랜잭션을 분산 트랜잭션으로 승격할 수 있어야 하는 경우 DTC(Distributed Transaction Coordinator) 액세스 권한을 부여하여 트랜잭션에 참여해야 합니다. 이렇게 하려면 lpTransactionAttributes 매개 변수에는 DTC 의 SID(S-1-5-80-2818357584-3387065753-4000393942-342927828-138088443) 및 TRANSACTION_ENLIST 권한이 있는 액세스 제어 항목이 포함되어야 합니다. 자세한 내용은 분산 트랜잭션 코디네이터Access Control 구성 요소를 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista
지원되는 최소 서버 Windows Server 2008
대상 플랫폼 Windows
헤더 ktmw32.h
라이브러리 KtmW32.lib
DLL KtmW32.dll

추가 정보

CommitTransaction

DTC(Distributed Transaction Coordinator)

커널 트랜잭션 관리자 함수

RollbackTransaction

SECURITY_ATTRIBUTES

SetTransactionInformation