共用方式為


TXFS_QUERY_RM_INFORMATION結構 (winioctl.h)

[Microsoft 強烈建議開發人員利用替代方法來達成應用程式的需求。 許多針對 TxF 開發的案例,都可以透過更簡單且更容易取得的技術來達成。 此外,未來版本的 Microsoft Windows 可能無法使用 TxF。 如需詳細資訊,以及 TxF 的替代方案,請參閱 使用交易式 NTFS 的替代方案。]

包含 RESOURCE Manager (RM) 的相關信息。

語法

typedef struct _TXFS_QUERY_RM_INFORMATION {
  DWORD         BytesRequired;
  DWORDLONG     TailLsn;
  DWORDLONG     CurrentLsn;
  DWORDLONG     ArchiveTailLsn;
  DWORDLONG     LogContainerSize;
  LARGE_INTEGER HighestVirtualClock;
  DWORD         LogContainerCount;
  DWORD         LogContainerCountMax;
  DWORD         LogContainerCountMin;
  DWORD         LogGrowthIncrement;
  DWORD         LogAutoShrinkPercentage;
  DWORD         Flags;
  WORD          LoggingMode;
  WORD          Reserved;
  DWORD         RmState;
  DWORDLONG     LogCapacity;
  DWORDLONG     LogFree;
  DWORDLONG     TopsSize;
  DWORDLONG     TopsUsed;
  DWORDLONG     TransactionCount;
  DWORDLONG     OnePCCount;
  DWORDLONG     TwoPCCount;
  DWORDLONG     NumberLogFileFull;
  DWORDLONG     OldestTransactionAge;
  GUID          RMName;
  DWORD         TmLogPathOffset;
} TXFS_QUERY_RM_INFORMATION, *PTXFS_QUERY_RM_INFORMATION;

成員

BytesRequired

如果 FSCTL_TXFS_QUERY_RM_INFORMATION傳ERROR_BUFFER_TOO_SMALL,此成員會指定傳回所要求資訊的最小位元組數,包括 NULL 終止字元。

TailLsn

RM 目前使用的最舊記錄序號 (LSN) 。

CurrentLsn

RM 最近在其記錄中使用的 LSN。

ArchiveTailLsn

記錄檔封存結尾的 LSN。

LogContainerSize

記錄容器的實際大小,以位元組為單位。

HighestVirtualClock

與記錄檔記錄相關聯的最高時間戳。

LogContainerCount

記錄容器的數目。

LogContainerCountMax

記錄容器的數目上限。

LogContainerCountMin

記錄檔中允許的容器數目下限。

LogGrowthIncrement

記錄將會成長的數量,也就是一些容器或記錄大小的百分比;所使用的成長類型是由 Flags 成員中設定的旗標所指定。

LogAutoShrinkPercentage

如果自動壓縮原則為作用中,此成員會指定記錄檔中允許的最大可用空間量。 如果此成員為零,則自動壓縮原則不會使用中。

Flags

這個成員可以是下列一或多個值。

意義
TXFS_RM_FLAG_LOG_CONTAINER_COUNT_MIN
0x00000008
如果設定旗標,則允許 RM 的記錄盡可能壓縮。 此旗標與 TXFS_RM_FLAG_LOG_NO_CONTAINER_COUNT_MAX互斥。
TXFS_RM_FLAG_LOG_GROWTH_INCREMENT_NUM_CONTAINERS
0x00000010
指出 LogGrowthIncrement 中的值類型。 如果設定此旗標, LogGrowthIncrement 是數個容器。 此旗標與 TXFS_RM_FLAG_LOG_GROWTH_INCREMENT_PERCENT互斥。
TXFS_RM_FLAG_LOG_GROWTH_INCREMENT_PERCENT
0x00000020
指出 LogGrowthIncrement 中的值類型。 如果設定此旗標, LogGrowthIncrement 是百分比。 此旗標與 TXFS_RM_FLAG_LOG_GROWTH_INCREMENT_NUM_CONTAINERS互斥。
TXFS_RM_FLAG_LOG_NO_CONTAINER_COUNT_MAX
0x00000080
表示 RM 的記錄檔可以在沒有界限的情況下成長。 此旗標與 TXFS_RM_FLAG_LOG_NO_CONTAINER_COUNT_MIN互斥。
TXFS_RM_FLAG_RESET_RM_AT_NEXT_START
0x00004000
表示 RM 重設旗標的目前狀態。 如果已設定此設定,RM 會在下次啟動時自行重設。 此旗標僅適用於預設的 RM,不適用於次要 RU。 此旗標與 TXFS_RM_FLAG_DO_NOT_RESET_RM_AT_NEXT_START互斥。
TXFS_RM_FLAG_DO_NOT_RESET_RM_AT_NEXT_START
0x00008000
表示 RM 重設旗標的目前狀態。 如果已設定此設定,RM 將不會在下一次啟動時自行重設。 此旗標僅適用於預設的 RM,不適用於次要 RU。 此旗標與 TXFS_RM_FLAG_RESET_RM_AT_NEXT_START互斥。
TXFS_RM_FLAG_PREFER_CONSISTENCY
0x00010000
表示 RM 偏好交易 一致性 ,而非系統 可用性。 此旗標與 TXFS_RM_FLAG_PREFER_AVAILABILITY 互斥,且系統磁碟區上的預設 RM 不支援。
TXFS_RM_FLAG_PREFER_AVAILABILITY
0x00020000
表示 RM 偏好使用系統 可用性 ,而非交易 一致性。 此旗標與 TXFS_RM_FLAG_PREFER_CONSISTENCY 互斥,而且會由系統磁碟區上的預設 RM 強制使用。

LoggingMode

目前的記錄模式。

意義
TXFS_LOGGING_MODE_SIMPLE
1
使用簡單的記錄。
TXFS_LOGGING_MODE_FULL
2
使用完整記錄

Reserved

保留的。

RmState

RM 的狀態。 有效值如下。

意義
TXFS_RM_STATE_NOT_STARTED
0
RM 尚未啟動。
TXFS_RM_STATE_STARTING
1
RM 正在啟動。
TXFS_RM_STATE_ACTIVE
2
RM 為作用中且已準備好接受交易。
TXFS_RM_STATE_SHUTTING_DOWN
3
RM 正在關閉。

LogCapacity

記錄檔的總容量,以位元組為單位。

LogFree

記錄檔中可用位元組的數目。

TopsSize

$Tops檔案的大小,以位元組為單位。

TopsUsed

使用中的$Tops檔案數量,以位元組為單位。

TransactionCount

發出查詢時的作用中交易數目。

OnePCCount

此 RM 上發生的單一階段認可作業數目。

TwoPCCount

此 RM 上發生的兩階段認可作業數目。

NumberLogFileFull

此 RM 記錄檔已滿的次數。

OldestTransactionAge

最舊的使用中交易長度,以毫秒為單位。

RMName

指出此 RM 名稱的 GUID

TmLogPathOffset

從這個 結構的開頭到 NULL終止的 Unicode 字串的位移,其中包含TM記錄檔的路徑。

規格需求

需求
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 [僅限傳統型應用程式]
標頭 winioctl.h (包含 Windows.h)

另請參閱

FSCTL_TXFS_QUERY_RM_INFORMATION

TxF 結構