SetupWriteTextLog 函式 (setupapi.h)

SetupWriteTextLog 函式會在 SetupAPI 文字記錄檔中寫入記錄專案。

語法

WINSETUPAPI VOID SetupWriteTextLog(
  [in] SP_LOG_TOKEN LogToken,
  [in] DWORD        Category,
  [in] DWORD        Flags,
  [in] PCSTR        MessageStr,
       ...          
);

參數

[in] LogToken

系統定義的 記錄令牌 ,或 由 SetupGetThreadLogToken 傳回的記錄令牌。

[in] Category

指出記錄專案之事件類別目錄的 DWORD 型別值。 可為記錄專案指定的事件類別目錄,與可針對文字記錄啟用的事件類別目錄相同。 如需事件類別目錄的清單,請參閱 為 SetupAPI 文字記錄啟用事件類別目錄。

[in] Flags

DWORD 型別值,其為旗標值的位 OR,指定下列專案:

  • 記錄專案的事件層級。 可為記錄專案指定的事件層級,與可針對文字記錄啟用的事件層級相同。 如需事件層級旗標的清單,請參閱 設定 SetupAPI 文字記錄的事件層級
  • 是否要在記錄專案中包含時間戳。 時間戳旗標值是TXTLOG_TIMESTAMP。
  • 如果有任何變更,則變更為區段的縮排深度和目前的記錄專案。 如需如何使用縮排旗標的資訊,請參閱 撰寫縮排記錄專案

[in] MessageStr

NULL 終止常數位串的指標,其中包含 與 printf 相容的格式字串,指定要包含在記錄專案中的格式化訊息。 MessageStr 後面的逗號分隔參數列表必須符合格式字串中的格式規範。

...

逗號分隔參數清單,符合 MessageStr 所提供之格式字串中的格式規範。

傳回值

備註

如果呼叫 SetupGetThreadLogToken 傳回 LogToken 的值,而且可以找到對應的文字記錄區段,SetupWriteTextLog 就會在該文字記錄區段中寫入記錄專案。 如果 SetupWriteTextLog 找不到 區段, SetupWriteTextLog 會在對應的文字記錄檔中寫入記錄專案,但不包含區段中的記錄專案。

如果 LogToken 的值是下表所列的其中一個系統定義記錄令牌, SetupWriteTextLog 會執行針對該記錄令牌所指示的寫入作業。

系統定義的記錄令牌 寫入作業
LOGTOKEN_NOLOG 記錄專案不會寫入任何文字記錄檔。
LOG_TOKEN_UNSPECIFIED 記錄專案會寫入應用程式安裝文字記錄檔。 記錄專案不包含在 文字記錄區段中
LOGTOKEN_SETUPAPI_APPLOG 記錄專案會寫入應用程式安裝文字記錄檔。 記錄專案不包含在文字記錄區段中。
LOGTOKEN_SETUPAPI_DEVLOG 記錄專案會寫入裝置安裝文字記錄檔。 記錄專案不包含在文字記錄區段中。
 
注意LogToken 的值設定為其中一個系統定義的記錄令牌,並不會變更線程目前記錄標記的值。
 
此外,當下列任一項成立時, SetupWriteTextLog 不會寫入記錄專案: 記錄項目的長度上限為 336。

若要在文字記錄檔中寫入 SetupAPI 特定錯誤或 Win32 錯誤的相關信息,應用程式可以使用 SetupWriteTextLogError

如需在 SetupAPI 文字記錄中寫入記錄專案的一般資訊,請參閱 SetupAPI Logging (Windows Vista 和更新版本)

如需 SetupWriteTextLog 作業的詳細資訊,請參閱 呼叫 SetupWriteTextLog

如需記錄令牌的詳細資訊,請參閱 記錄令牌

如需使用記錄令牌的詳細資訊,請參閱 設定和取得線程的記錄令牌

規格需求

需求
最低支援的用戶端 適用於 Windows Vista 和更新版本的 Windows。
目標平台 桌面
標頭 setupapi.h (包括 Setupapi.h)
程式庫 Setupapi.lib
API 集合 ext-ms-win-setupapi-logging-l1-1-0 (Windows 8)

另請參閱

SetupGetThreadLogToken

SetupWriteTextLogError