Partager via


WdfDeviceInitSetFileObjectConfig, fonction (wdfdevice.h)

[S’applique à KMDF et UMDF]

La méthode WdfDeviceInitSetFileObjectConfig inscrit les fonctions de rappel d’événements et définit des 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 WDF_FILEOBJECT_CONFIG allouée par l’appelant.

[in, optional] FileObjectAttributes

Pointeur vers une structure 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

Aucun

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 à partir 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 le WdfSynchronizationScopeNone et valeurs WdfExecutionLevelPassive dans la structure WDF_OBJECT_ATTRIBUTES que le paramètre FileObjectAttributes spécifie. Sinon, WdfDeviceCreate retourne un code d’état d’erreur. Pour plus d’informations sur l’étendue de synchronisation et le niveau d’exécution, consultez Using Automatic Synchronization.

Pour plus d’informations sur l’appel 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
                                 );

Exigences

Exigence Valeur
plateforme cible Universel
version minimale de KMDF 1.0
version minimale de UMDF 2.0
d’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), KmdfIrqlExplicit(kmdf), PdoDeviceInitAPI(kmdf)

Voir aussi

WDF_FILEOBJECT_CONFIG_INIT

WDF_OBJECT_ATTRIBUTES_INIT

WdfFdoInitSetEventCallbacks

WdfPdoInitSetEventCallbacks