Control de UPS

01/10/2004 - 09:23 por ritxi | Informe spam
Lo que quiero hacer es imitar un comportamiento que he
visto: he visto que un PC que tiene instalado un programa
de control de una SAI, instantes antes de apagar el PC
(casi al apagarlo), manda una señal DTR por el puerto
serie. He comprobado que el cerrado de un PC normal envía
una señal por el Tx, no por el DTR.
Todos los programas que hago se me cierran mucho antes de
llegar este momento y entonces no sé cómo enviar esa
señal por el puerto serie. ¿Se os ocurre cómo se podría
hacer? ¿Qué debo modificar en el registro para que lo
haga?
 

Leer las respuestas

#1 andrea
01/10/2004 - 09:53 | Informe spam
desde luego nada del registro, ya que el registro es para
el uso y control de los programas que estan en ejecucion.

Veamos:

1) Si los programas de usuario se cierran antes que los
del sistema, y esto, por diseño, no puede evitarse,
implica que no podrás hacer nada en este sentido.

2) Necesitarás entonces hacer un driver (con la
complejidad que esto conlleva) sobre un dispositivo
virtual que tu te intentes, o bien un filtro (es una
modalidad de driver) sobre un dispositivos real (el
puerto serie). Dicho driver o filtro, podrá controlar lo
que quiera, y por tanto interceptar todas las señales por
el Tx, verificar si está en el cierre de windows, y en
ese caso, enviar el DTR

no es nada trivial lo que comentas, y necesitaras
comprender al detalle el DDK (Driver Development Kit) del
sistema y desarrollar el pertinente driver. Por la manera
que ha planteado su pregunta de una manera totalmente
elemental e imaginando que un simple toque de registro
pudiera hacer esto, creo que el desarrollo del driver
queda fuera de sus capacidades.





Lo que quiero hacer es imitar un comportamiento que he
visto: he visto que un PC que tiene instalado un


programa
de control de una SAI, instantes antes de apagar el PC
(casi al apagarlo), manda una señal DTR por el puerto
serie. He comprobado que el cerrado de un PC normal


envía
una señal por el Tx, no por el DTR.
Todos los programas que hago se me cierran mucho antes


de
llegar este momento y entonces no sé cómo enviar esa
señal por el puerto serie. ¿Se os ocurre cómo se podría
hacer? ¿Qué debo modificar en el registro para que lo
haga?

.

Preguntas similares