Función SwDeviceSetLifetime (swdevice.h)
Administra la duración de un dispositivo de software.
Sintaxis
HRESULT SwDeviceSetLifetime(
[in] HSWDEVICE hSwDevice,
[in] SW_DEVICE_LIFETIME Lifetime
);
Parámetros
[in] hSwDevice
El controlador HSWDEVICE para el dispositivo de software que se va a administrar.
[in] Lifetime
Valor con tipo SW_DEVICE_LIFETIME que indica el nuevo valor de duración del dispositivo de software. Estos son los valores posibles:
Valor devuelto
S_OK se devuelve si SwDeviceSetLifetime actualizó correctamente la duración.
Comentarios
Después de crear inicialmente un dispositivo de software llamando a SwDeviceCreate, su duración predeterminada se establece en SwDeviceLifetimeHandle. Cuando un dispositivo de software tiene una duración de SwDeviceLifetimeHandle, PnP deja de enumerar el dispositivo después de cerrar el identificador del dispositivo.
Puede usar SwDeviceSetLifetime para establecer la duración del dispositivo de software en SwDeviceLifetimeParentPresent. La duración del dispositivo de software se vincula a la duración del dispositivo primario que no es de software más cercano. A continuación, el creador del dispositivo de software puede cerrar el identificador del dispositivo de software y el dispositivo se seguirá enumerando. Esto puede ser útil para los servicios que administran dispositivos de software, pero que quieren detener la inactividad.
Una aplicación cliente solo puede llamar a SwDeviceSetLifetime después de haber recibido una llamada a su función de devolución de llamada SW_DEVICE_CREATE_CALLBACK asociada a su llamada a SwDeviceCreate.
Cuando una aplicación cliente llama a SwDeviceCreate para un dispositivo de software que se marcó previamente para SwDeviceLifetimeParentPresent, SwDeviceCreate se realiza correctamente si no hay ningún identificador de dispositivo de software abierto para el dispositivo (solo se puede abrir un identificador para un dispositivo). Después, una aplicación cliente puede recuperar el control sobre un dispositivo de software persistente con el fin de actualizar las propiedades e interfaces o cambiar la duración.
Si la aplicación cliente especifica información en SW_DEVICE_CREATE_INFO que es diferente de una enumeración anterior, el dispositivo podría dejar de enumerarse y volver a enumerarse inmediatamente para aplicar los cambios. El sistema operativo solo notifica algunas propiedades cuando PnP enumera el dispositivo.
Para desinstalar un dispositivo de software con una duración de SwDeviceLifetimeParentPresent, se recomienda cambiar la duración a SwDeviceLifetimeHandle antes de desinstalar el dispositivo.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 8.1 |
Servidor mínimo compatible | Windows Server 2012 R2 |
Plataforma de destino | Universal |
Encabezado | swdevice.h |
Library | Swdevice.lib; OneCoreUAP.lib en Windows 10 |
Archivo DLL | Cfgmgr32.dll |