Partager via


Création de scénarios WDTF

Vous pouvez commencer vos scénarios basés sur WDTF en créant un instance de l’interface d’agrégation IWDTF2, qui contient les propriétés DeviceDepot et SystemDepot.

Pour collecter un ou plusieurs objets cibles, utilisez l’interface IWDTFDeviceDepot2 et utilisez la méthode Query avec le langage SDEL ( Simple Data Evaluation Language ).

Un script peut également examiner des cibles spécifiques à l’aide de la méthode IWDTFTarget2::Eval . Après avoir choisi les cibles, contrôlez-les à l’aide d’une ou plusieurs interfaces d’action.

Avant de commencer à développer des scénarios WDTF, vous devez installer WDTF. Pour plus d’informations, consultez Démarrage rapide WDTF .

Les sections suivantes de cette rubrique décrivent comment créer des scénarios WDTF de base.

Scénario WDTF simple

L’exemple de code VBScript suivant (WDTF_Sample1.vbs) montre un scénario simplifié qui utilise WDTF pour activer et désactiver chaque appareil non fantôme. Un appareil non fantôme est un appareil physiquement présent. Pour obtenir des exemples complets, consultez Exemples de scénarios WDTF.

Set WDTF = WScript.CreateObject("WDTF.WDTF")
For Each Device In WDTF.DeviceDepot.Query("IsPhantom=false AND IsDisableable")
    On Error Resume Next
    Set DevMan = Device.GetInterface("DeviceManagement")
    If err <> 0 Then
 DevMan.Disable()
 DevMan.Enable()
    End If
Next

Vous pouvez exécuter ce scénario en exécutant CScript.exe WDTF_Sample1.vbs.

Stockage des informations cibles à l’aide du contexte

Certains langages de programmation, tels que VBScript, ne gèrent pas facilement les références d’objets. Pour simplifier cette gestion dans WDTF, chaque cible fournit une propriété Context que vous pouvez utiliser pour stocker des paires clé/valeur arbitraires, y compris des références à des objets actifs. Cette propriété est particulièrement utile pour stocker les interfaces d’action afin que vous puissiez les utiliser ultérieurement. L’exemple de code VBScript suivant stocke une action IWDTFSimpleIOStressAction2 dans un élément context nommé.

deviceObj.Context("IWDTFSimpleIOStressAction2") = SimpleIOObj

Plus tard, votre scénario peut arrêter, suspendre ou redémarrer l’interface IWDTFSimpleIOStressAction2 en y accédant à nouveau via Context , comme le montre l’exemple de code suivant.

Device.Context("IWDTFSimpleIOStressAction2").Stop

Détection des appareils fantômes

Les appareils fantômes sont des appareils qui ont été physiquement installés sur l’ordinateur dans le passé, mais qui ne sont pas présents actuellement. Par exemple, un appareil fantôme peut être une souris USB qui a été débranchée. Pour accélérer et simplifier la réinstallation d’un appareil branché sur un ordinateur qui est allumé ou supprimé, le système d’exploitation Windows conserve les pilotes de périphérique installés, mais marque l’appareil comme un fantôme.

Les cibles de type d’appareil incluent un attribut IsPhantom (et l’attribut IsAttached , qui est équivalent à IsPhantom=false) qui spécifie la présence physique du matériel. L’exemple de code VBScript suivant répertorie une collection de tous les appareils physiquement présents sur l’ordinateur.

Set NonPhantomDevices = WDTF.DeviceDepot.Query ("IsAttached")

Pour plus de mots clés d’attribut, consultez Jetons SDEL.