public static extern NtStatus NtCreateTransactionManager(
     out SafeKernelObjectHandle TmHandle,
     TransactionManagerAccessRights DesiredAccess,
     ObjectAttributes ObjectAttributes,
     UnicodeString LogFileName,
     TransactionManagerCreateOptions CreateOptions,
     int CommitStrength
     );
 public static extern NtStatus NtOpenTransactionManager(
     out SafeKernelObjectHandle TmHandle,
     TransactionManagerAccessRights DesiredAccess,
     ObjectAttributes ObjectAttributes,
     UnicodeString LogFileName,
     OptionalGuid TmIdentity,
     TransactionManagerOpenOptions OpenOptions
     );
 protected override sealed NtResult <NtTransactionManager> OpenInternal(ObjectAttributes obj_attributes,
                                                                        TransactionManagerAccessRights desired_access, bool throw_on_error)
 {
     return(NtTransactionManager.Open(obj_attributes, desired_access,
                                      null, null, TransactionManagerOpenOptions.None, throw_on_error));
 }