Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 01-11-2007
Avatar de jorgegetafe
jorgegetafe jorgegetafe is offline
Miembro
 
Registrado: dic 2006
Posts: 238
Poder: 18
jorgegetafe Va por buen camino
Suspender e hibernar el pc

Se como apagar y reiniciar el pc, pero alguien me podria dar el codigo para hibernar y suspender el pc? no lo encuentro por los trucos... :-(

gracias.
__________________
Explicate como si fuese tonto, soy nuevo en esto de hacer programas!!!! XD
Responder Con Cita
  #2  
Antiguo 01-11-2007
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 21
enecumene Va por buen camino
Hola jorgegetafe, intenta con esto:

Código Delphi [-]
SetSystemPowerState(FALSE,FALSE);

Saludos.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #3  
Antiguo 01-11-2007
Avatar de jorgegetafe
jorgegetafe jorgegetafe is offline
Miembro
 
Registrado: dic 2006
Posts: 238
Poder: 18
jorgegetafe Va por buen camino
Cita:
Empezado por enecumene Ver Mensaje
Hola jorgegetafe, intenta con esto:


Código Delphi [-]SetSystemPowerState(FALSE,FALSE);



Saludos.
No me hace nada el codigo cuando lo ejecuto :-(
__________________
Explicate como si fuese tonto, soy nuevo en esto de hacer programas!!!! XD
Responder Con Cita
  #4  
Antiguo 01-11-2007
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 21
enecumene Va por buen camino
Hola, Que raro, en el uses tienes puesto la ShellApi?

Saludos.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #5  
Antiguo 01-11-2007
Avatar de jorgegetafe
jorgegetafe jorgegetafe is offline
Miembro
 
Registrado: dic 2006
Posts: 238
Poder: 18
jorgegetafe Va por buen camino
Si, me pasa lo mismo tambien cuando quiero apagar la pantalla, que no hace nada.
__________________
Explicate como si fuese tonto, soy nuevo en esto de hacer programas!!!! XD
Responder Con Cita
  #6  
Antiguo 01-11-2007
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 21
enecumene Va por buen camino
Que raro, porque lo acabo de probar y me funciona. prueba tratando de configurar la energia del monitor en las propiedades del escritorio en la paleta del protector de pantalla a ver, luego me comentas.

Saludos.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #7  
Antiguo 02-11-2007
Avatar de jorgegetafe
jorgegetafe jorgegetafe is offline
Miembro
 
Registrado: dic 2006
Posts: 238
Poder: 18
jorgegetafe Va por buen camino
En opciones de energia tengo habilitado: "habilitar hibernacion" y en combinaciones de energia tengo: "escritorio u oficina" y aun asi no me hace nada el código cuando lo ejecuto.
__________________
Explicate como si fuese tonto, soy nuevo en esto de hacer programas!!!! XD
Responder Con Cita
  #8  
Antiguo 02-11-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Igual no tienes permisos para ejecutar esas tareas, o tu proceso requiere permisos de administrador.

Me pasó al migrar un programa a XP.

Código Delphi [-]
function TFrmteclas.ShutDownWindows(Flag: Word): Boolean;
var
  TokenPriv: TTokenPrivileges;
  H:         DWord;
  HToken:    THandle;
begin

  Flag := EWX_POWEROFF; // EWX_REBOOT, ETC.

  if Win32Platform = VER_PLATFORM_WIN32_NT then
  begin
    OpenProcessToken(GetCurrentProcess,
      TOKEN_ADJUST_PRIVILEGES, HToken);
    LookUpPrivilegeValue(NIL, 'SeShutdownPrivilege',
      TokenPriv.Privileges[0].Luid);
    TokenPriv.PrivilegeCount := 1;
    TokenPriv.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
    H := 0;
    AdjustTokenPrivileges(HToken, FALSE,
      TokenPriv, 0, PTokenPrivileges(NIL)^, H);
    CloseHandle(HToken);
  end;
  Result := ExitWindowsEx(Flag, 0);
end;

Para apagar el monitor basta con:
Código Delphi [-]
  Application.ProcessMessages;
  Sleep(150);
  PostMessage(Application.Handle , WM_SYSCOMMAND, SC_MONITORPOWER,1);
Ojo al Sleep. Se puede procesar el postMessage pero por el ciclo de mensajes, se puede activar de nuevo y aparentar que no hace nada la instrucción.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #9  
Antiguo 02-11-2007
Avatar de jorgegetafe
jorgegetafe jorgegetafe is offline
Miembro
 
Registrado: dic 2006
Posts: 238
Poder: 18
jorgegetafe Va por buen camino
Me salen algunos errores y no entiendo la función, me dice por ejemplo que la funcion necesita un resultado aunque se lo das mas abajo y algunas variables que no estan declaradas...
__________________
Explicate como si fuese tonto, soy nuevo en esto de hacer programas!!!! XD
Responder Con Cita
  #10  
Antiguo 02-11-2007
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 21
enecumene Va por buen camino
Hombre lo tuyo esta complicado, el mismo codigo de lepe lo acabo de probar y no me tira errores, revisa el codigo bien si hay alguna laguna.

Saludos.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #11  
Antiguo 02-11-2007
Avatar de jorgegetafe
jorgegetafe jorgegetafe is offline
Miembro
 
Registrado: dic 2006
Posts: 238
Poder: 18
jorgegetafe Va por buen camino
Copio y pego tal cual el codigo que me indicais, este es el resultado:

http://img514.imageshack.us/img514/8646/erroryd2.jpg
__________________
Explicate como si fuese tonto, soy nuevo en esto de hacer programas!!!! XD
Responder Con Cita
  #12  
Antiguo 02-11-2007
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 21
enecumene Va por buen camino
Seguro tienes SHellApi en el Uses? si es asi y sigues con el problema vamos a esperar al Maestro Lepe a ver que te dice? digame una cosa que version de delphi usas?

Saludos.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #13  
Antiguo 02-11-2007
Avatar de jorgegetafe
jorgegetafe jorgegetafe is offline
Miembro
 
Registrado: dic 2006
Posts: 238
Poder: 18
jorgegetafe Va por buen camino
Tengo delphi 7.0 y si, tengo ShellApi incluido en mi uses.

Pos tocara esperar, gracias.
__________________
Explicate como si fuese tonto, soy nuevo en esto de hacer programas!!!! XD
Responder Con Cita
  #14  
Antiguo 02-11-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Hombre.... copiar y pegar... no sé yo.

Mi ventana se llama FrmTeclas, la tuya no sé.
Tendrás que declarar el prototipo de la función (o hacerla un procedimiento), es decir, declararla en:
Código Delphi [-]
class TForm23= class(TForm)

private
   function ShutDownWindows(Flag: Word): Boolean;
end;

Dentro de la función asigno el valor de "Flag", esa línea la puedes quitar, era solo de ejemplo para que vieses el valor que puede tomar.

Si acaso faltase algún "uses" podría ser "shlobj", pero si te dice Undeclared identifier, haces un clic sobre la palabra en cuestión en el editor de código fuente y pulsas F1 (el compilador no sabe donde está declarada, pero la ayuda de delphi si).

PD: Muy bueno el nombre de tu unidad ... "somnifero.pas" deja bien claro lo que hace dicha unidad .

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #15  
Antiguo 02-11-2007
Avatar de jorgegetafe
jorgegetafe jorgegetafe is offline
Miembro
 
Registrado: dic 2006
Posts: 238
Poder: 18
jorgegetafe Va por buen camino
Gracias probaré lo que me has comentado.
__________________
Explicate como si fuese tonto, soy nuevo en esto de hacer programas!!!! XD
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como Suspender y volver a Activar. Paradiso Varios 3 31-01-2005 13:21:01


La franja horaria es GMT +2. Ahora son las 07:25:46.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi