PDA

Ver la Versión Completa : Apagar Windows


yoennis
27-03-2009, 03:18:26
Hola nuevamente como estan? bien como ya saben soy un usuario restringido y generalmente mis programas son solo para usuarios restringidos, entonces si utilizo el ExitWindowsEx('EWX_PowerOff',0) lo que hace es que cierra la sesión y yo quiero que apague.

rgstuamigo
06-04-2009, 22:18:18
Mira aca (http://www.clubdelphi.com/foros/showpost.php?p=131482&postcount=4) o este hilo (http://www.clubdelphi.com/foros/showthread.php?t=64087). que tú mismo abriste;):D
Saludos..:)

roman
06-04-2009, 23:40:54
Pues para algo están los permisos en Windows. Si un usuario no tiene permiso de apagar el equipo, pues no podrá hacerlo. Solución: asignar a dicho usuario permiso para apagar el equipo.

// Saludos

escafandra
09-04-2009, 11:57:46
Pues para algo están los permisos en Windows. Si un usuario no tiene permiso de apagar el equipo, pues no podrá hacerlo. Solución: asignar a dicho usuario permiso para apagar el equipo.

That is the question (http://www.clubdelphi.com/foros/showpost.php?p=343910&postcount=6)

Saludos.

roman
09-04-2009, 18:04:50
That is the question (http://www.clubdelphi.com/foros/showpost.php?p=343910&postcount=6)


El caso es que si no tienes permiso para apagar el equipo, no podrás habilitar el privilegio de apagar el equipo y, por tanto, no podrás apagarlo.

Es decir, hasta donde yo entiendo, los privilegios son banderas que se prenden o apagan, pero hay que tener esas banderas en primera instancia.

Ese código lo acabo de probar con una cuenta a la que previamente le quite el permiso de apagar el equipo (mejor dicho, quité el grupo al que pertenecía el usuario) y no pude apagar nada.

// Saludos

escafandra
09-04-2009, 23:25:55
El caso es que si no tienes permiso para apagar el equipo, no podrás habilitar el privilegio de apagar el equipo y, por tanto, no podrás apagarlo.

Claro, si no existe el permiso no lo podrás obtener, pero puede existir y estar deshabilitado. Entonces lo podrás habilitar. Por defecto todos los usuarios tienen ese permiso, pero deshabilitado, incluidos los administradores. Entonces, para que la aplicación pueda apagar, hace falta habilitar dicho permiso, incluso si eres administrador. Esta imagen es el conjunto de permisos de una aplicación de un usuario restringido, obtenido con Process Explorer de Sysinternals:
http://s3.subirimagenes.com/imagen/previo/thump_2317630dibujo.png (http://www.subirimagenes.com/imagen-dibujo-2317630.html)

Puede verse como SeShutdownPrivilege está deshabilitado, pero existe. En el caso de un administrador, pasa lo mismo. Estos son los casos mas comunes para Windows.

Si se elimina el Luid de SeShutdownPrivilege no se podrá ganar el privilegio y por tanto la aplicación jamás podrá apagar el sistema, al menos por "métodos legales".

Saludos.

roman
10-04-2009, 04:04:04
Así es, es lo que quería decir en el mensaje anterior, que una cosa son los permisos y otra los privilegios. Sin permiso, no hay privilegio.

// Saludos