SoloCodigo

Programación General => C/C++ => Mensaje iniciado por: AnioN en Martes 24 de Octubre de 2006, 23:29

Título: Suspender El Monitor
Publicado por: AnioN en Martes 24 de Octubre de 2006, 23:29
Hola, necesito un codigo que me permita suspender el monitor. Se que se puede hacer con la API de windows pero nunca la use. Alguien tiene algun codigo para pasarme?.

PD:no tengo tiempo para estudiar ahora la API, o sino si conocen algun programa ya hecho que haga lo que neceisto.

Muchas Gracias.
Título: Re: Suspender El Monitor
Publicado por: JuanK en Miércoles 25 de Octubre de 2006, 17:22
que tanto tiempo tardarias en haber hecho esto?

Codigo (http://www.google.com.co/search?hl=es&q=win32api+monitor+suspend&btnG=B%C3%BAsqueda+en+Google&meta=)
Título: Re: Suspender El Monitor
Publicado por: AnioN en Miércoles 25 de Octubre de 2006, 21:26
disculpame, es que no se me ocurrio buscarlo de esa manera. No fue con mala intension.
Título: Re: Suspender El Monitor
Publicado por: JuanK en Miércoles 25 de Octubre de 2006, 22:13
No hay problema , pero siempre es bueno habituarce a buscar primero y con eso puedes aportar de acuerdo a lo que aprendas  :rolleyes:
Título: Re: Suspender El Monitor
Publicado por: AnioN en Sábado 28 de Octubre de 2006, 13:14
Me pasaron esta funcion para poder usar desde C.

Código: Text
  1. void v_suspendermonitor(void) {
  2.   HWND hWnd;
  3.   hWnd=GetDesktopWindow();
  4.  
  5.   //-------- Aca generas la suspensión
  6.   SendMessage(hWnd,WM_SYSCOMMAND,SC_MONITORPOWER,2);
  7. }
  8.  
  9.  
Aclaro que no tengo idea de como usar la API. Prove este codigo, perono funciona.

Código: Text
  1. #include<windows.h>
  2.  
  3. void v_suspendermonitor(void) {
  4.   HWND hWnd;
  5.   hWnd=GetDesktopWindow();
  6.  
  7.   //-------- Aca generas la suspensión
  8.   SendMessage(hWnd,WM_SYSCOMMAND,SC_MONITORPOWER,2);
  9. }
  10.  
  11. void main() {
  12.   v_suspendermonitor();
  13. }
  14.  
  15.  
Título: Re: Suspender El Monitor
Publicado por: Eternal Idol en Sábado 28 de Octubre de 2006, 15:10
Funciona perfectamente.

¿Lo pudiste compilar? ¿Lo pudiste enlazar? Si la respuesta es si a las dos preguntas entonces depuralo.
Título: Re: Suspender El Monitor
Publicado por: AnioN en Sábado 28 de Octubre de 2006, 15:49
si, lo pude hacer, pero no funciona. En teoria tendria que suspender el monitor al ejecutarlo, no?
Título: Re: Suspender El Monitor
Publicado por: Eternal Idol en Sábado 28 de Octubre de 2006, 17:14
Cita de: "AnioN"
si, lo pude hacer, pero no funciona. En teoria tendria que suspender el monitor al ejecutarlo, no?
En teoria ... y en la practica es lo que hace, suspender el monitor ... me imagino que tendras la posibilidad de hacerlo con tu hardware ... ¿Lo depuraste?
Título: Re: Suspender El Monitor
Publicado por: AnioN en Sábado 28 de Octubre de 2006, 21:08
si, pero no funciona. Uso como complilador el borland c/c++ 5.02. Lo compilo y no me arroja ningun error. Lo ejecuto y no hace nada.
Título: Re: Suspender El Monitor
Publicado por: Eternal Idol en Sábado 28 de Octubre de 2006, 21:47
Cita de: "AnioN"
si, pero no funciona. Uso como complilador el borland c/c++ 5.02. Lo compilo y no me arroja ningun error. Lo ejecuto y no hace nada.
Depuralo, linea por linea viendo que devuelve ...
Título: Re: Suspender El Monitor
Publicado por: Drache en Domingo 29 de Octubre de 2006, 03:54
jajaja yo no habia pensado en esa idea, pero en 2 minutos de leer este post pude suspender el monitor.

solo copie y pegue el codigo que pusistes, pero, el siguiente codigo lo agregue en el evento OnClick de un simple boton...  y cuando lo presiono se suspende

v_suspendermonitor();
Título: Re: Suspender El Monitor
Publicado por: AnioN en Domingo 29 de Octubre de 2006, 17:06
Me sigue sin funcionar, no se que puede ser.
Título: Re: Suspender El Monitor
Publicado por: Eternal Idol en Domingo 29 de Octubre de 2006, 17:20
Cita de: "AnioN"
Me sigue sin funcionar, no se que puede ser.
Ni lo vas a saber hasta que no depures linea por linea el programa ...................