共用方式為


WdfDriverRetrieveVersionString 函式 (wdfdriver.h)

[適用於 KMDF 和 UMDF]

WdfDriverRetrieveVersionString 方法會擷取 Unicode 字串串,以識別驅動程式執行所使用之 Kernel-Mode Driver Framework 的版本。

語法

NTSTATUS WdfDriverRetrieveVersionString(
  [in] WDFDRIVER Driver,
  [in] WDFSTRING String
);

參數

[in] Driver

驅動程式架構驅動程序物件的句柄,此驅動程式是從先前呼叫 WdfDriverCreate WdfGetDriver取得的。

[in] String

驅動程式從先前呼叫 WdfStringCreate取得的架構字串物件的句柄。 架構會將版本字串指派給字串物件。

返回值

如果作業成功,WdfDriverRetrieveVersionString 會傳回STATUS_SUCCESS。 否則,此方法可能會傳回下列其中一個值:

回傳碼 說明
資源不足狀態
架構無法配置 Unicode 字串的緩衝區。
 

此方法也可能 傳回其他NTSTATUS 值。

如果 驅動程式 句柄無效,就會發生系統錯誤檢查。

備註

如果您想要顯示識別架構連結庫版本的字串,驅動程式可以呼叫 WdfDriverRetrieveVersionString。 字串的格式可能會從某個版本變更為另一個版本,因此驅動程式不得嘗試解譯字串的格式或內容。

如需連結庫版本的詳細資訊,請參閱 Framework 連結庫版本設定

範例

下列程式代碼範例會建立字串物件、將版本字串指派給 物件,並在調試程式執行時顯示字串。

WDFSTRING string;
UNICODE_STRING us;

status = WdfStringCreate(
                         NULL,
                         WDF_NO_OBJECT_ATTRIBUTES,
                         &string
                         );
if (NT_SUCCESS(status)) {
    status = WdfDriverRetrieveVersionString(
                                            driver,
                                            string
                                            );
    if (NT_SUCCESS(status)) {
        WdfStringGetUnicodeString(
                                  string,
                                  &us
                                  );
        DbgPrint(
                 "WDF Version string:  %wZ\n",
                 &us
                 );
    }
    WdfObjectDelete(string);
}

需求

要求 價值
目標平臺 普遍
最低 KMDF 版本 1.0
最低 UMDF 版本 2.0
標題 wdfdriver.h (包括 Wdf.h)
程式庫 Wdf01000.sys (KMDF):WUDFx02000.dll (UMDF)
IRQL PASSIVE_LEVEL
DDI 合規性規則 DriverCreate(kmdf)KmdfIrql(kmdf)KmdfIrql2(kmdf),KmdfIrqlExplicit(kmdf)

另請參閱

WdfDriverCreate

WdfDriverIsVersionAvailable

WdfGetDriver

WdfObjectDelete

WdfStringCreate

WdfStringGetUnicodeString