FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Apagar desde la "pantalla de bienvenida"
Hola
El otro día hice el típico programa de novato para probar los distintos modos de apagar el ordenador: Funciona como esperaba, excepto cuando pongo la "pantalla de bienvenida" de Windows, pulsando, por ejemplo, Win+L (observad que he puesto una cuenta atrás, de 5 segundos, para que me dé tiempo), en este caso no se apaga el PC, ni aunque se ejecute ExitWindowsEx(EWX_POWEROFF, FORCE), se limita a cerrar la cuenta. ¿Se puede solucionar esto, es decir, poder apagar, mediante código, aunque esté puesta la "pantalla de bienvenida"? (Como cosa curiosa, hibernar sí se puede). Última edición por Wellnic fecha: 30-04-2007 a las 20:29:17. |
#2
|
||||
|
||||
Respuesta
Talvez no sea la respuesta que esperas... no se me ocurrió hacer tal asunto (Win+L) + Cuenta regresiva de apagado. Pero tengo una solucion que te va a funcionar.
Utiliza programa shutdown.exe que viene junto con tu S.O. correlo sin parámetros para ver con cuales cuenta y una descripcion de ellos. Para correrlo usa WinExec o CreateProcess con los parametros que veas necesarios. Suerte. |
#3
|
|||
|
|||
otra forma muy bonita !
Hola ! Probablemente usted ya conozca esta forma, pero la pongo aqui, porque quizas a otros les pueda servir. ( hace poco que yo la descubri, y me gusto mucho ! ).
la idea es "terminar ( forzado )" alguna tarea que sea fundamental para win... Por ejemplo, si uno va al task-manager ( ctrl - alt - del ) y termina el proceso LSASS.EXE, win... decide apagar la PC de una forma muy bonita. Hasta le pone un timer regresivo y toda la cosa !!. Hay un comando en DOS que permite hacer eso: TASKKILL.EXE Tiene muchas formas diferentes para decirle cual(es) tareas terminar. Para ejecutarlo desde Delphi, hay que usar el WinExec, de esta forma: winExec( 'TASKKILL.EXE /F /IM LSASS.EXE', SW_HIDE ); ( pon esto adentro de un boton, guarda todos tus trabajos, y despues lo pruebas..., veras que bonito se apaga la PC !!. ). Puedes experimentar con terminar el EXPLORER.EXE y otras tareas que aparecen en el Task-manager, .... realmente interesante !! ( ... y si a alguien le interesa hacer que la PC no pueda encender otra vez despues de apagarla.. y que se pierda todo lo que hay en ella..., inclusive el win..., que me escriba un correo ! -jaja quizas a algun politico le interese algun programa asi, para una emergencia ! ) Saludos, ojala y esto le sirva a alguien |
#4
|
||||
|
||||
Ok
Estimado aprendiz2, dos cosas:
1. el "shutdown -f - ..." te pone justamente ese mensajito que tanto os gusta. 2. El lsass.exe es un nombre de proceso crítico, el cual no puede ser finalizado con los utilitarios que el Güindos nos da (Ej. TaskKill). Finalizandolo por código... eso si. Cita:
Saludos |
#5
|
|||
|
|||
taskkill + lo otro
Cita:
Hola cHackAll, gracias por escribir !!. En mi PC y otras que he probado, el taskkill.exe de DOS, sí termina la tarea lsass.exe. ( la mayoria del las otras tareas no las termina, o vuelven a arrancar automaticamente ). Es mas, desde el task manager de Windows puedo terminar esa tarea en mi PC. En otras PC que he probado (con XP), tambien !. Quizas en tu PC se porta diferente. Me da curiosidad.. dejame saber !!! Puedes probarlo desde DOS facilmente...( estoy seguro que sabes mas de este tema que yo !! ). c:\> taskkill /F /IM LSASS.EXE ( hace poco hubo un virus rodando que hacia eso exactamente! Terminaba el lsass.exe. Por eso me dio curiosidad probar... Quizas sea util en alguna ocasion !!! -no para virus, por supuesto- ). En cuanto al otro tema.... simplemente escribir "basura" en sectores importantes del disco duro. Para mi sorpresa, Win2 no protesta !!! ( en un principio, estaba yo en el tema de leer un CD por sectores, y leer/escribir a un CD-RW por sectores..., con proposito de un hacer un disco "llave", di muchas vueltas con las benditas API createFile, readFile... setFilePointer...,y despues de lograrlo, me doy cuenta que puedo hacer lo mismo con los antiguos "read" y "write" de Pascal, mucho mas sencillo. Despues me dio curiosidad... y probe leer un sector del disco duro, y lo leyo... y despues me pregunte.. y se podra escribir ?... la respuesta fue, si!Win2 no los protege.
( disculpe si hay algun error de compilacion, el programa que teclee arriba no paso por el compilador, pero la idea esta ahi ). Espero le sirva para algo ! Última edición por aprendiz2 fecha: 03-05-2007 a las 02:40:08. |
#6
|
|||
|
|||
desde el task-manager no se puede
Cita:
Pero desde DOS, en todas las que he probado si se puede con el taskkill.exe ( las PC tienen Win XP original, S.Pack 2 ). Con el WinExec desde Dephi tambien lo hace. Saludos, buenas noches !! |
#7
|
||||
|
||||
Local Security Authority System Service
Cita:
Motivo: Acceso denegado. En definitiva no se como te funciona a tí, me llama la atención porque puede depender ésto del estado de las directivas de seguridad de los equipos donde haces la prueba. Sin ir más allá lo que decías de tu procedimiento "adios": En definitiva me gusta por lo que hace más que cómo lo hace. Cuida tus inclinaciones del lado obscuro amigo mio, pues en algun momento (si es que no lo hizo ya), te acabará gustando! PD: Yo cási aseguro que la mayoría de los antivirus protegen el MBR, Boot, etc. d los sistemas de archivos de los equipos que resguardan. Te aconsejo (repito: si te gusta), que utilices la misma idea pero en el momento propicio, cuando el Antivirus (cualfuese), todavía no esté funcionando... Suerte! |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Necesito llamar a métodos de clases "hija" desde su clase "padre" | Flecha | OOP | 17 | 20-04-2007 00:03:53 |
Ventana MDI, "Siempre visible" y "Pantalla completa" | ixMike | API de Windows | 7 | 11-04-2007 18:36:55 |
"Apagar" el cursor en un TEdit | gluglu | Varios | 1 | 17-11-2005 19:34:20 |
Mi mensaje nº 300 "Me pagan por Mirar una pantalla" | tcp_ip_es | Humor | 1 | 16-07-2004 16:54:30 |
|