Erstellen von WDTF-Szenarien
Sie können Ihre WDTF-basierten Szenarien beginnen, indem Sie eine instance der IWDTF2-Aggregationsschnittstelle erstellen, die die Eigenschaften DeviceDepot und SystemDepot enthält.
Verwenden Sie zum Sammeln eines oder mehrerer Zielobjekte die IWDTFDeviceDepot2-Schnittstelle und die Query-Methode mit der Simple Data Evaluation Language (SDEL).
Ein Skript kann auch bestimmte Ziele mithilfe der IWDTFTarget2::Eval-Methode untersuchen. Nachdem Sie die Ziele ausgewählt haben, steuern Sie sie mithilfe einer oder mehrerer Aktionsschnittstellen.
Bevor Sie mit der Entwicklung von WDTF-Szenarien beginnen, müssen Sie WDTF installieren. Weitere Informationen finden Sie unter WDTF-Schnellstart .
In den folgenden Abschnitten in diesem Thema wird beschrieben, wie Grundlegende WDTF-Szenarien erstellt werden.
Einfaches WDTF-Szenario
Das folgende VBScript-Codebeispiel (WDTF_Sample1.vbs) zeigt ein vereinfachtes Szenario, bei dem WDTF verwendet wird, um jedes Nicht-Phantom-Gerät zu aktivieren und zu deaktivieren. Ein nicht phantomfähiges Gerät ist jedes physisch vorhandene Gerät. Vollständige Beispiele finden Sie unter BEISPIEL-WDTF-Szenarien.
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
Sie können dieses Szenario ausführen, indem Sie CScript.exe WDTF_Sample1.vbsausführen.
Speichern von Zielinformationen mithilfe des Kontexts
Einige Programmiersprachen, z. B. VBScript, können Objektverweise nicht einfach verwalten. Um diese Verwaltung in WDTF zu vereinfachen, stellt jedes Ziel eine Context-Eigenschaft bereit, die Sie zum Speichern beliebiger Schlüssel-Wert-Paare verwenden können, einschließlich Verweise auf aktive Objekte. Diese Eigenschaft ist besonders nützlich zum Speichern von Aktionsschnittstellen, damit Sie sie später verwenden können. Im folgenden VBScript-Codebeispiel wird eine IWDTFSimpleIOStressAction2-Aktion in einem benannten Kontextelement gespeichert.
deviceObj.Context("IWDTFSimpleIOStressAction2") = SimpleIOObj
Später kann Ihr Szenario die IWDTFSimpleIOStressAction2-Schnittstelle beenden, anhalten oder neu starten, indem erneut über Context darauf zugegriffen wird, wie im folgenden Codebeispiel gezeigt.
Device.Context("IWDTFSimpleIOStressAction2").Stop
Erkennen von Phantomgeräten
Phantomgeräte sind Geräte, die in der Vergangenheit physisch auf dem Computer installiert wurden, aber derzeit nicht vorhanden sind. Ein Phantomgerät kann z. B. eine USB-Maus sein, die nicht angeschlossen wurde. Um die Neuinstallation eines Geräts zu beschleunigen und zu vereinfachen, das an einen Computer angeschlossen ist, der eingeschaltet ist, oder entfernte Geräte, hält das Windows-Betriebssystem die Gerätetreiber installiert, markiert das Gerät jedoch als Phantom.
Gerätetypziele enthalten ein IsPhantom-Attribut (und ein IsAttached-Attribut , das IsPhantom=false entspricht), das die physische Anwesenheit der Hardware angibt. Im folgenden VBScript-Codebeispiel wird eine Auflistung aller Geräte aufgelistet, die physisch auf dem Computer vorhanden sind.
Set NonPhantomDevices = WDTF.DeviceDepot.Query ("IsAttached")
Weitere Attributschlüsselwörter finden Sie unter SDEL-Token.