[警告: UMDF 2 是最新版本的 UMDF,取代了 UMDF 1。 所有新的 UMDF 驱动程序都应使用 UMDF 2 编写。 没有将新功能添加到 UMDF 1,并且对较新版本的 Windows 10 上的 UMDF 1 的支持有限。 通用 Windows 驱动程序必须使用 UMDF 2。 有关详细信息,请参阅 UMDF入门 。]
DeleteNamedValue 方法从注册表中删除值名称。
语法
HRESULT DeleteNamedValue(
[in] LPCWSTR pwszName
);
参数
[in] pwszName
指向包含注册表值名称的 null终止字符串的指针。
返回值
DeleteNamedValue 如果作成功,则返回S_OK。 否则,该方法可能会返回以下值:
| 返回代码 | 描述 |
|---|---|
|
调用方提供了无效的输入参数。 |
此方法可能会返回 Winerror.h 包含的其他值之一。
言论
在驱动程序调用 DeleteNamedValue之前,它必须调用 IWDFPropertyStoreFactory::RetrieveDevicePropertyStore 以获取 IWDFNamedPropertyStore2 接口。
有关访问注册表的详细信息,请参阅 在基于 UMDF 的驱动程序中使用注册表。
例子
以下代码示例是设备对象的 IObjectCleanup::OnCleanup 回调函数。 如果驱动程序之前已将值添加到注册表 DEVICEMAP 密钥,则回调函数将删除该值。
VOID
CMyDevice::OnCleanup(
IWDFObject* pWdfObject
)
{
UNREFERENCED_PARAMETER(pWdfObject);
if ((m_CreatedLegacyHardwareKey == TRUE) &&
(m_LegacyHardwarePropertyStore != NULL))
{
m_LegacyHardwarePropertyStore->DeleteNamedValue(m_PdoName);
SAFE_RELEASE(m_LegacyHardwarePropertyStore);
delete[] m_PdoName;
}
}
要求
| 要求 | 价值 |
|---|---|
| 终止支持 | 在 UMDF 2.0 及更高版本中不可用。 |
| 目标平台 | 桌面 |
| 最低 UMDF 版本 | 1.9 |
| 标头 | wudfddi.h (包括 Wudfddi.h) |
| DLL | WUDFx.dll |