WdfRegistryAssignString method

[Applies to KMDF and UMDF]

The WdfRegistryAssignString method assigns a string to a specified value name in the registry. The string is contained in a specified framework string object.

Syntax


NTSTATUS WdfRegistryAssignString(
  [in]  WDFKEY Key,
  [in]  PCUNICODE_STRING ValueName,
  [in]  WDFSTRING String
);

Parameters

Key [in]

A handle to a registry-key object that represents an opened registry key.

ValueName [in]

A pointer to a UNICODE_STRING structure that contains a value name.

String [in]

A handle to a framework string object that contains a string.

Return value

WdfRegistryAssignString returns STATUS_SUCCESS if the operation succeeds. Otherwise, the method might return one of the following values:

Return codeDescription
STATUS_INVALID_DEVICE_REQUEST

WdfRegistryAssignString was not called at IRQL = PASSIVE_LEVEL.

STATUS_INVALID_PARAMETER

An invalid parameter was specified.

STATUS_ACCESS_DENIED

The driver did not open the registry key with KEY_SET_VALUE access.

 

This method also might return other NTSTATUS values.

A bug check occurs if the driver supplies an invalid object handle.

Remarks

If the value name that the ValueName parameter specifies already exists, WdfRegistryAssignString updates the value's data.

The framework sets the value's data type to REG_SZ.

For more information about registry-key objects, see Using the Registry in Framework-Based Drivers.

Examples

The following code example creates a string object that contains the string "String1" and assigns the string to the ValueName value, under a specified registry key.


WDFSTRING string1;
UNICODE_STRING ustring1, valueName;
NTSTATUS status;

RtlInitUnicodeString(
                     &ustring1,
                     L"String1"
                     );
RtlInitUnicodeString(
                     &valueName,
                     L"ValueName"
                     );

status = WdfStringCreate(
                         &ustring1,
                         WDF_NO_OBJECT_ATTRIBUTES,
                         &string1
                         );
if (NT_SUCCESS(status)) {
    status = WdfRegistryAssignString(
                                     Key,
                                     &valueName,
                                     string1
                                     );
}

Requirements

Minimum KMDF version

1.0

Minimum UMDF version

2.0

Header

Wdfregistry.h (include Wdf.h)

Library

Wdf01000.sys (KMDF);
WUDFx02000.dll (UMDF)

IRQL

PASSIVE_LEVEL

DDI compliance rules

DriverCreate, KmdfIrql, KmdfIrql2

See also

RtlInitUnicodeString
UNICODE_STRING
WdfRegistryAssignValue
WdfRegistryAssignMemory
WdfRegistryAssignMultiString
WdfRegistryAssignUnicodeString
WdfRegistryAssignULong
WdfStringCreate

 

 

Send comments about this topic to Microsoft

Show:
© 2014 Microsoft