Compartir a través de


Creación de escenarios WDTF

Puede comenzar los escenarios basados en WDTF mediante la creación de una instancia de la interfaz de agregación IWDTF2 , que contiene las propiedades DeviceDepot y SystemDepot .

Para recopilar uno o varios objetos de destino, use la interfaz IWDTFDeviceDepot2 y use el método Query con el lenguaje de evaluación de datos simple (SDEL).

Un script también puede examinar destinos específicos mediante el método IWDTFTarget2::Eval . Después de elegir los destinos, controlelos mediante una o varias interfaces de acción.

Antes de empezar a desarrollar escenarios WDTF, debe instalar WDTF. Consulte Inicio rápido de WDTF para obtener más información.

En las secciones siguientes de este tema se describe cómo crear escenarios básicos de WDTF.

Escenario WDTF simple

El siguiente ejemplo de código vbScript (WDTF_Sample1.vbs) muestra un escenario simplificado que usa WDTF para habilitar y deshabilitar todos los dispositivos no fantasma. Un dispositivo no fantasma es cualquier dispositivo físicamente presente. Para obtener ejemplos completos, consulte Escenarios WDTF de ejemplo.

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

Para ejecutar este escenario, ejecute CScript.exe WDTF_Sample1.vbs.

Almacenar información de destino mediante contexto

Algunos lenguajes de programación, como VBScript, no administran fácilmente las referencias de objetos. Para simplificar esta administración en WDTF, cada destino proporciona una propiedad Context que puede usar para almacenar pares clave-valor arbitrarios, incluidas las referencias a objetos activos. Esta propiedad es especialmente útil para almacenar interfaces de acción para poder usarlas más adelante. En el siguiente ejemplo de código de VBScript se almacena una acción IWDTFSimpleIOStressAction2 dentro de un elemento de contexto con nombre.

deviceObj.Context("IWDTFSimpleIOStressAction2") = SimpleIOObj

Más adelante, el escenario puede detener, pausar o reiniciar la interfaz IWDTFSimpleIOStressAction2 accediendo a ella a través de Context de nuevo, como se muestra en el ejemplo de código siguiente.

Device.Context("IWDTFSimpleIOStressAction2").Stop

Detección de dispositivos fantasma

Los dispositivos fantasma son dispositivos que se instalaron físicamente en el equipo en el pasado, pero que no están presentes actualmente. Por ejemplo, un dispositivo fantasma puede ser un mouse USB que se ha desconectado. Para acelerar y simplificar la reinstalación de un dispositivo conectado a un equipo que está activado o quitado, el sistema operativo Windows mantiene instalados los controladores de dispositivos, pero marca el dispositivo como fantasma.

Los destinos de tipo de dispositivo incluyen un atributo IsPhantom (y un atributo IsAttached , que equivale a IsPhantom=false) que especifica la presencia física del hardware. En el siguiente ejemplo de código de VBScript se muestra una colección de todos los dispositivos que están presentes físicamente en el equipo.

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

Para obtener más palabras clave de atributo, consulte Tokens SDEL.