WdfDriverOpenParametersRegistryKey 函式 (wdfdriver.h)
[適用於 KMDF 和 UMDF]
WdfDriverOpenParametersRegistryKey 方法會開啟驅動程式的參數登錄機碼,並擷取代表機碼之架構登錄機碼物件的句柄。
語法
NTSTATUS WdfDriverOpenParametersRegistryKey(
[in] WDFDRIVER Driver,
[in] ACCESS_MASK DesiredAccess,
[in, optional] PWDF_OBJECT_ATTRIBUTES KeyAttributes,
[out] WDFKEY *Key
);
參數
[in] Driver
驅動程式架構驅動程序物件的句柄,該驅動程式是從先前呼叫 WdfDriverCreate 或 WdfGetDriver 取得的。
[in] DesiredAccess
ACCESS_MASK型別值,指定Parameters登錄機碼的存取遮罩。
KMDF 驅動程式通常會要求 KEY_READ、 KEY_WRITE或 KEY_READ |KEY_WRITE。
如果您要撰寫 UMDF 驅動程式,請使用 KEY_READ 或 KEY_READ |KEY_SET_VALUE。
最佳做法是只要求驅動程式所需的存取類型。
[in, optional] KeyAttributes
呼叫端配置的 WDF_OBJECT_ATTRIBUTES 結構的指標,指定架構登錄機碼對象的物件屬性。 此參數是選擇性的,而且可以WDF_NO_OBJECT_ATTRIBUTES。
[out] Key
接收架構登錄機碼物件句柄的位置指標。
傳回值
WdfDriverOpenParametersRegistryKey 會在作業成功時傳回STATUS_SUCCESS。 其他傳回值包括:
傳回碼 | Description |
---|---|
|
UMDF 驅動程式在 DesiredAccess 參數中指定了下列其中一個旗標:
由於上述值對 UMDF 驅動程式無效,因此GENERIC_ALL和STANDARD_RIGHTS_ALL等通用旗標也會讓 WdfDriverOpenParametersRegistryKey 失敗,並出現此傳回值。 |
如需傳回值的詳細資訊,請參閱 Framework 物件建立錯誤。
這個方法也可能傳回其他 NTSTATUS值。
如果 KMDF 驅動程式在 驅動程式中指定無效的句柄,就會發生系統錯誤檢查。
備註
驅動程式 的參數機 碼位於 登錄的服務樹 狀結構中。 如果 驅動程序的參數索引 鍵不存在, WdfDriverOpenParametersRegistryKey 方法會建立它。
當驅動程式使用 Parameters 登錄機碼完成時,驅動程式必須呼叫 WdfRegistryClose。
注意
UMDF 不支援建立子機碼。
如需登錄的詳細資訊,請參閱 在 Framework-Based Drivers 中使用登錄。
範例
下列程式代碼範例會開啟 驅動程式的參數登錄 機碼,並取得代表機碼之架構登錄機碼物件的句柄。
WDFKEY hKey;
status = WdfDriverOpenParametersRegistryKey(
Driver,
STANDARD_RIGHTS_ALL,
WDF_NO_OBJECT_ATTRIBUTES,
&hKey
);
規格需求
需求 | 值 |
---|---|
目標平台 | Universal |
最小 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) |