Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
[Gilt nur für KMDF]
Die WdfPdoInitAddDeviceText- Methode fügt einem Gerät eine Gerätebeschreibung und einen Gerätespeicherort für ein angegebenes Gebietsschema hinzu.
Syntax
NTSTATUS WdfPdoInitAddDeviceText(
[in] PWDFDEVICE_INIT DeviceInit,
[in] PCUNICODE_STRING DeviceDescription,
[in] PCUNICODE_STRING DeviceLocation,
[in] LCID LocaleId
);
Die Parameter
[in] DeviceInit
Ein Zeiger auf eine WDFDEVICE_INIT Struktur.
[in] DeviceDescription
Ein Zeiger auf eine UNICODE_STRING-Struktur, die eine Gerätebeschreibung enthält, die für das angegebene Gebietsschema formatiert ist. Der Treiber kann den Puffer der Zeichenfolge aus dem ausgelagerten Pool zuordnen.
[in] DeviceLocation
Ein Zeiger auf eine UNICODE_STRING Struktur, die eine Beschreibung der Position im Bus enthält, an der das übergeordnete Gerät das untergeordnete Gerät gefunden hat. Der Treiber kann den Puffer der Zeichenfolge aus dem ausgelagerten Pool zuordnen.
[in] LocaleId
Ein Gebietsschemabezeichner (Locale Identifier, LCID), der das Gebietsschema der Unicode-Zeichenfolgen darstellt. Weitere Informationen finden Sie unter Gebietsschemabezeichner.
Rückgabewert
Wenn der Vorgang erfolgreich ist, gibt die Methode STATUS_SUCCESS zurück. Weitere Rückgabewerte sind:
| Rückgabecode | BESCHREIBUNG |
|---|---|
|
Der Treiber initialisiert einen FDO anstelle eines PDO. |
|
Der Treiber konnte keinen Speicherplatz zuordnen, um die Zeichenfolgen zu speichern. |
Die Methode kann auch andere NTSTATUS-Wertezurückgeben.
Bemerkungen
Das Framework speichert den angegebenen Gerätetext und übergibt ihn als Reaktion auf eine IRP_MN_QUERY_DEVICE_TEXT Anforderung an den PnP-Manager. Der von Ihnen angegebenen Text sollte dem Benutzer helfen, das Gerät zu identifizieren. Der PnP-Manager zeigt manchmal den Text an, während versucht wird, zusätzliche Treiber für das Gerät zu installieren.
Sie können WdfPdoInitAddDeviceText mehrmals aufrufen und Gerätetext für mehrere Gebietsschemas hinzufügen. Wenn der Text vom System angezeigt wird, wählt es den Text aus, der dem aktuellen Gebietsschema entspricht, sofern verfügbar. Andernfalls wird die Zeichenfolge für das Standardgebietsschema verwendet. Der Treiber kann das Standardgebietsschema des Treibers angeben, indem WdfPdoInitSetDefaultLocaleaufgerufen wird.
Der Treiber muss WdfPdoInitAddDeviceText- aufrufen, bevor WdfDeviceCreateaufgerufen wird. Weitere Informationen zum Aufrufen WdfDeviceCreatefinden Sie unter Creating a Framework Device Object.
Beispiele
Im folgenden Codebeispiel werden Unicode-Zeichenfolgen für den Standort und die Beschreibung eines Geräts bereitgestellt. Die Beschreibung enthält eine Instanznummer. Ein vollständiges Beispiel, das WdfPdoInitAddDeviceText-verwendet, finden Sie im beispieltreiber KbFiltr.
DECLARE_CONST_UNICODE_STRING(deviceLocation,L"Keyboard Filter\0" );
DECLARE_UNICODE_STRING_SIZE(buffer, MAX_ID_LEN);
status = RtlUnicodeStringPrintf(
&buffer,
L"Keyboard_Filter_%02d",
InstanceNo
);
if (!NT_SUCCESS(status)) {
goto Cleanup;
}
status = WdfPdoInitAddDeviceText(
pDeviceInit,
&buffer,
&deviceLocation,
0x409
);
if (!NT_SUCCESS(status)) {
goto Cleanup;
}
Anforderungen
| Anforderung | Wert |
|---|---|
| Zielplattform | universell |
| Minimale KMDF-Version | 1.0 |
| Kopfzeile | wdfpdo.h (include Wdf.h) |
| Bibliothek | Wdf01000.sys (siehe Framework-Bibliotheksversionsverwaltung.) |
| IRQL | PASSIVE_LEVEL |
| DDI-Complianceregeln | ChildDeviceInitAPI(kmdf), DriverCreate(kmdf), InitFreeDeviceCallback(kmdf), InitFreeDeviceCreate(kmdf), InitFreeNull(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoDeviceInitAPI(kmdf), PdoInitFreeDeviceCallback(kmdf), PdoInitFreeDeviceCreate(kmdf) |