Fonction WdfDeviceInitSetFileObjectConfig (wdfdevice.h)
[S’applique à KMDF et UMDF]
La méthode WdfDeviceInitSetFileObjectConfig inscrit les fonctions de rappel d’événement et définit les informations de configuration pour les objets de fichier framework du pilote.
Syntaxe
void WdfDeviceInitSetFileObjectConfig(
[in] PWDFDEVICE_INIT DeviceInit,
[in] PWDF_FILEOBJECT_CONFIG FileObjectConfig,
[in, optional] PWDF_OBJECT_ATTRIBUTES FileObjectAttributes
);
Paramètres
[in] DeviceInit
Pointeur vers une structure WDFDEVICE_INIT .
[in] FileObjectConfig
Pointeur vers une structure de WDF_FILEOBJECT_CONFIG allouée par l’appelant.
[in, optional] FileObjectAttributes
Pointeur vers une structure de WDF_OBJECT_ATTRIBUTES allouée par l’appelant qui contient des attributs d’objet fournis par le pilote pour les objets de fichier framework du pilote. Ce paramètre est facultatif et peut être WDF_NO_OBJECT_ATTRIBUTES.
Valeur de retour
None
Remarques
Si un pilote appelle WdfDeviceInitSetFileObjectConfig, il doit le faire avant d’appeler WdfDeviceCreate.
Par défaut, chaque objet de fichier framework hérite de son étendue de synchronisation et de son niveau d’exécution de son objet d’appareil parent. Si l’étendue de synchronisation et le niveau d’exécution de l’objet d’appareil parent ne sont pas WdfSynchronizationScopeNone et WdfExecutionLevelPassive, le pilote doit définir les valeurs WdfSynchronizationScopeNone et WdfExecutionLevelPassive dans la structure WDF_OBJECT_ATTRIBUTES spécifiée par le paramètre FileObjectAttributes . Sinon, WdfDeviceCreate retourne une erreur status code. Pour plus d’informations sur l’étendue et le niveau d’exécution de la synchronisation, consultez Utilisation de la synchronisation automatique.
Pour plus d’informations sur l’appel de WdfDeviceCreate, consultez Création d’un objet d’appareil framework.
Pour plus d’informations sur les objets de fichier framework, consultez Framework File Objects
Exemples
L’exemple de code suivant initialise une structure WDF_OBJECT_ATTRIBUTES et une structure WDF_FILEOBJECT_CONFIG , puis appelle WdfDeviceInitSetFileObjectConfig.
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
);
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
Version KMDF minimale | 1.0 |
Version UMDF minimale | 2.0 |
En-tête | wdfdevice.h (include Wdf.h) |
Bibliothèque | Wdf01000.sys (KMDF) ; WUDFx02000.dll (UMDF) |
IRQL | <= DISPATCH_LEVEL |
Règles de conformité DDI | ChildDeviceInitAPI(kmdf),ControlDeviceInitAPI(kmdf), DeviceInitAPI(kmdf),DriverCreate(kmdf),FileObjectConfigured(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoDeviceInitAPI(kmdf) |