Pregunta

Busco una API de programación acerca de cómo reiniciar cualquier dispositivo que permite activar / desactivar en el administrador de dispositivos,

tales como dispositivos de audio y adaptador de red

¿Fue útil?

Solución

tendrá que usar SETUPAPI / configmanager API . Pero tenga en cuenta que bajo x64 que APP. También debe ser 64 para activar / desactivar dispositivo (lo que no puede hacerlo directamente en Delphi en este momento - un primer momento pensé que se trata de un problema con el archivo / redirección de registro para x86-x64 aplicación bajo, pero no sirvió de nada). la numeración de dispositivos funciona bien. Hubo algo al respecto en un artículo en MSDN pero no lo encuentra en este momento. He hecho la aplicación de PF / Lázaro x64 para activar / desactivar los dispositivos bajo el sistema operativo de 64 bits.

Puede descargar WDK y buscarse un código fuente de DevCon (C: \ WinDDK \ 7600.16385.1 \ src \ setup \ devcon). En cmds.cpp hay ControlCallback función que permite dispositivo / desactiva utilizando Setupapi). Pero primero es necesario enumerar las clases de dispositivos (por GUID o el nombre de clase), y luego enumerar las instancias de dispositivo o dispositivo abierto por la cadena DeviceInstanceId. Está en C, pero debe ser fácil de aprender a utilizar esa API.

No está seguro de lo que está haciendo, pero tal vez sería más fácil de usar que devcon.exe (no sé si la licencia lo permite) y habilitar / deshabilitar los dispositivos por ella?

Otros consejos

No tengo experiencia con él, pero creo que se puede utilizar el DeviceIoControl API.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top