Creazione di scenari WDTF

È possibile iniziare gli scenari basati su WDTF creando un'istanza dell'interfaccia di aggregazione IWDTF2 , che contiene le proprietà DeviceDepot e SystemDepot .

Per raccogliere uno o più oggetti di destinazione, usare l'interfaccia IWDTFDeviceDepot2 e usare il metodo Query con Simple Data Evaluation Language (SDEL).

Uno script può anche esaminare destinazioni specifiche usando il metodo IWDTFTarget2::Eval . Dopo aver scelto le destinazioni, controllarle usando una o più interfacce di azione.

Prima di iniziare a sviluppare scenari WDTF, è necessario installare WDTF. Per altre informazioni, vedere Avvio rapido WDTF .

Le sezioni seguenti di questo argomento descrivono come creare scenari WDTF di base.

Scenario WDTF semplice

L'esempio di codice VBScript seguente (WDTF_Sample1.vbs) illustra uno scenario semplificato che usa WDTF per abilitare e disabilitare ogni dispositivo non fantasma. Un dispositivo non fantasma è qualsiasi dispositivo fisicamente presente. Per esempi completi, vedere Esempi di scenari 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

È possibile eseguire questo scenario eseguendo CScript.exe WDTF_Sample1.vbs.

Archiviazione delle informazioni di destinazione tramite il contesto

Alcuni linguaggi di programmazione, ad esempio VBScript, non gestiscono facilmente i riferimenti agli oggetti. Per semplificare questa gestione in WDTF, ogni destinazione fornisce una proprietà Context che è possibile usare per archiviare coppie chiave/valore arbitrarie, inclusi i riferimenti agli oggetti attivi. Questa proprietà è particolarmente utile per archiviare le interfacce di azione in modo da poterle usare in un secondo momento. Nell'esempio di codice VBScript seguente viene archiviata un'azione IWDTFSimpleIOStressAction2 all'interno di un elemento Context denominato.

deviceObj.Context("IWDTFSimpleIOStressAction2") = SimpleIOObj

Successivamente, lo scenario può arrestare, sospendere o riavviare l'interfaccia IWDTFSimpleIOStresAction2 accedendola di nuovo tramite Context , come illustrato nell'esempio di codice seguente.

Device.Context("IWDTFSimpleIOStressAction2").Stop

Rilevamento di dispositivi fantasma

I dispositivi fantasma sono dispositivi che sono stati fisicamente installati nel computer in passato, ma non sono attualmente presenti. Ad esempio, un dispositivo fantasma può essere un mouse USB scollegato. Per velocizzare e semplificare l'installazione di un dispositivo collegato a un computer attivato o rimosso, il sistema operativo Windows mantiene installati i driver di dispositivo, ma contrassegna il dispositivo come fantasma.

Le destinazioni di tipo dispositivo includono un attributo IsPhantom (e l'attributo IsAttached , equivalente a IsPhantom=false) che specifica la presenza fisica dell'hardware. Nell'esempio di codice VBScript seguente viene elencata una raccolta di tutti i dispositivi presenti fisicamente nel computer.

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

Per altre parole chiave di attributo, vedere Token SDEL.