WdfDeviceInitSetFileObjectConfig-Funktion (wdfdevice.h)
[Gilt für KMDF und UMDF]
Die WdfDeviceInitSetFileObjectConfig Methode registriert Ereignisrückruffunktionen und legt Konfigurationsinformationen für die Frameworkdateiobjekte des Treibers fest.
void WdfDeviceInitSetFileObjectConfig(
[in] PWDFDEVICE_INIT DeviceInit,
[in] PWDF_FILEOBJECT_CONFIG FileObjectConfig,
[in, optional] PWDF_OBJECT_ATTRIBUTES FileObjectAttributes
);
[in] DeviceInit
Ein Zeiger auf eine WDFDEVICE_INIT Struktur.
[in] FileObjectConfig
Ein Zeiger auf eine vom Aufrufer zugewiesene WDF_FILEOBJECT_CONFIG Struktur.
[in, optional] FileObjectAttributes
Ein Zeiger auf eine vom Aufrufer zugewiesene WDF_OBJECT_ATTRIBUTES Struktur, die vom Treiber bereitgestellte Objektattribute für die Framework-Dateiobjekte des Treibers enthält. Dieser Parameter ist optional und kann WDF_NO_OBJECT_ATTRIBUTES werden.
Nichts
Wenn ein Treiber WdfDeviceInitSetFileObjectConfigaufruft, muss er dies tun, bevor er WdfDeviceCreateaufruft.
Standardmäßig erbt jedes Frameworkdateiobjekt seinen Synchronisierungsbereich und die Ausführungsebene vom übergeordneten Geräteobjekt. Wenn der Synchronisierungsbereich und die Ausführungsebene des übergeordneten Geräteobjekts nicht WdfSynchronizationScopeNone und WdfExecutionLevelPassivesind, muss der Treiber die WdfSynchronizationScopeNone und WdfExecutionLevelPassive Werte in der WDF_OBJECT_ATTRIBUTES Struktur festlegen, die der FileObjectAttributes Parameter angibt. Andernfalls gibt WdfDeviceCreate einen Fehlerstatuscode zurück. Weitere Informationen zum Synchronisierungsbereich und zur Ausführungsebene finden Sie unter Verwenden der automatischen Synchronisierung.
Weitere Informationen zum Aufrufen WdfDeviceCreatefinden Sie unter Creating a Framework Device Object.
Weitere Informationen zu Framework-Dateiobjekten finden Sie unter Framework-Dateiobjekte
Im folgenden Codebeispiel wird eine WDF_OBJECT_ATTRIBUTES Struktur und eine WDF_FILEOBJECT_CONFIG Struktur initialisiert und anschließend WdfDeviceInitSetFileObjectConfigaufgerufen.
WDF_OBJECT_ATTRIBUTES attributes;
WDF_OBJECT_ATTRIBUTES_INIT(&attributes);
attributes.SynchronizationScope = WdfSynchronizationScopeNone;
WDF_FILEOBJECT_CONFIG_INIT(
&deviceConfig,
MyEvtDeviceFileCreate,
MyEvtFileClose,
WDF_NO_EVENT_CALLBACK // No cleanup callback function
);
WdfDeviceInitSetFileObjectConfig(
DeviceInit,
&deviceConfig,
&attributes
);
Anforderung | Wert |
---|---|
Zielplattform- | Universal |
Minimale KMDF-Version | 1.0 |
Mindest-UMDF-Version | 2.0 |
Header- | wdfdevice.h (einschließen Wdf.h) |
Library | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL- | <= DISPATCH_LEVEL |
DDI-Complianceregeln | ChildDeviceInitAPI(kmdf), ControlDeviceInitAPI(kmdf), DeviceInitAPI(kmdf), DriverCreate(kmdf), FileObjectConfigured (kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoDeviceInitAPI(kmdf) |