FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Windows 2000 y el shutdown
Bueeeeeeeeeeeeeeeeeenas a todos,
Ando algo perdido en el super registro de windows 2000, tengo que hacer que cuando se le de a la opción de "apagar el sistema" te reinicie la máquina en lugar de apagarla, es por un tema de seguridad en los que los equipos siempre tienen que estar en funcionamiento y para que no llegue un manazas y apaga el ordenador. Tambien seria una solución el poder eliminar la opción de "apagar el sistema del menú", en tal caso seria conveniente quitar el de cerrar sesión, tambien seria una buena pregunta, ¿como hacer que solo aparezca la opción de reiniciar en el menú de "Apagar".... Gracias por adelantado.... |
#2
|
||||
|
||||
Mira a ver si te funciona, la verdad no he tenido ocasión de probarlo.
Código:
var hToken: THANDLE; tkp, tkDumb: TTokenPrivileges; DumbInt: DWord; begin FillChar(tkp, sizeof(tkp), 0); // Obtengo el token de este proceso if not (OpenProcessToken(GetCurrentProcess, TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, hToken)) then raise Exception.create('OpenProcessToken falló con el código ' + inttostr(GetLastError)); // Obtengo el LUID para provilegios de Shutdown LookupPrivilegeValue(nil, pchar('SeShutdownPrivilege'), tkp.Privileges[0].Luid); tkp.PrivilegeCount := 1; tkp.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED; // Obtengo el privilegio de shutdown para este proceso AdjustTokenPrivileges(hToken, false, tkp, sizeof(tkDumb), tkDumb, DumbInt); // No puedo testear el valor de retorno de AdjustTokenPrivileges if GetLastError <> ERROR_SUCCESS then raise Exception.create('AdjustTokenPrivileges falló con el código ' + inttostr(GetLastError)); // apago el sistema, todas las aplicaciones se cerrarán if not ExitWindowsEx(EWX_POWEROFF, 0) then raise Exception.create('ExitWindowsEx falló con el código ' + inttostr(GetLastError)); end;
__________________
Guía de Estilo de los Foros Cita:
|
#3
|
|||
|
|||
Gracias por la rápida respuesta pero me referia desdel registro de windows (regedit) y no desde un programa delphi, a lo mejor no lo he puesto en el lugar adecuado.
Gracias. |
#4
|
||||
|
||||
Usa
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\NoClose para quitar el item "Apagar..." del menú inicio. y HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\ForceStartMenuLogOff para que aparezca el item "Cerrar sesión..." De esta manera sólo podrán cerrar sesión y no apagar el equipo. Puedes encontrar más información en www.winguides.com // Saludos |
#5
|
|||
|
|||
Gracias por la ayuda, ahora mismito empezare a mirarme la web ya que de momento las soluciones que me has dado no me acaban de interesar.
|
#6
|
|||
|
|||
Continuo sin encontrar la solución :'-(((
He midado la web que me han recomendado pero ninguna de las opciones que podrian ayudarme han funcionado, necesito ayuda urgentemente, es tan simple (o no) como reiniciar el equipo cuando se le da la orden de apagar en windows 2000. Gracias por la ayuda. |
|
|
|