Delphi - Apagar y Reiniciar la pc

 
Vista:

Apagar y Reiniciar la pc

Publicado por Ariel (5 intervenciones) el 24/09/2004 21:35:13
Buena Tarde tengo una pequeño problema con un programa que estoy realizando, es para el control de un cyber, el problema es el siguiente: cuando queiro que la terminal se apaga desde el servidor esta cierra la sesión inciada en vez de apagarla, en cambio cuando mando que la terminal se reinicie esta si lo hace, el S.O. que tengo en las terminales es Win98Se con Dfree instalado, lo pruebo en WinXp si anda pero no Tiene Dfree instalodo sera ese el problema.... Ayuda Profavor

Esta es la funcion que utilizo para re

function MyExitWindows(RebootParam: Longword): Boolean;
var
TTokenHd: THandle;
TTokenPvg: TTokenPrivileges;
cbtpPrevious: DWORD;
rTTokenPvg: TTokenPrivileges;
pcbtpPreviousRequired: DWORD;
tpResult: Boolean;
const
SE_SHUTDOWN_NAME = 'SeShutdownPrivilege';
begin
if Win32Platform = VER_PLATFORM_WIN32_NT then
begin
tpResult := OpenProcessToken(GetCurrentProcess(),
TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY,
TTokenHd);
if tpResult then
begin
tpResult := LookupPrivilegeValue(nil,
SE_SHUTDOWN_NAME,
TTokenPvg.Privileges[0].Luid);
TTokenPvg.PrivilegeCount := 1;
TTokenPvg.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
cbtpPrevious := SizeOf(rTTokenPvg);
pcbtpPreviousRequired := 0;
if tpResult then
Windows.AdjustTokenPrivileges(TTokenHd,
False,
TTokenPvg,
cbtpPrevious,
rTTokenPvg,
pcbtpPreviousRequired);
end;
end;
Result := ExitWindowsEx(RebootParam, 0);
end;

Desde ya Muchas Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Apagar y Reiniciar la pc

Publicado por bigluis (713 intervenciones) el 25/09/2004 16:57:43
En Win98 puedes utilizar esta funcion directamente de Windows.pas ya que no necesita permisos de usuario ni nada de lo que necesita el XP, 2000 etc,
ExitWindowsEx(EWX_SHUTDOWN+EWX_POWEROFF,0);
por supuesto en caso de necesitar el reinicio usa EWX_REBOOT
Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar