Foros del Web » Programando para Internet » ASP Clásico »

apaga windows con asp.

Estas en el tema de apaga windows con asp. en el foro de ASP Clásico en Foros del Web. hola tengo este codigo qeu supuestamente apaga el windows, lo necesito para un proyecto que tengo de controlar la intranet casi en su totalidad.. pero ...
  #1 (permalink)  
Antiguo 05/02/2005, 22:52
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 22 años, 5 meses
Puntos: 4
apaga windows con asp.

hola tengo este codigo qeu supuestamente apaga el windows, lo necesito para un proyecto que tengo de controlar la intranet casi en su totalidad..

pero no me funciona al parecer no me funciona eso de wscript que tengo que hacer para que me funcione ?
gracias,. tengo win xp pro.


Código:
<% 
Dim WshShell
	Set WshShell = WScript.CreateObject ("WScript.Shell")
	WshShell.Run "%windir%\RunDll32.exe user,ExitWindows", 1, -1
%>
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com
  #2 (permalink)  
Antiguo 07/02/2005, 11:04
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
Qué error da? (si es que da alguno)
__________________
...___...
  #3 (permalink)  
Antiguo 07/02/2005, 14:50
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 22 años, 5 meses
Puntos: 4
me saca este error
Se requiere un objeto: 'WScript'

tengo win xp professional..
ke sera? sera que no tengo ese componente? si es asi de donde lo puedo bajar?
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com
  #4 (permalink)  
Antiguo 07/02/2005, 15:15
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
Bueno, por la descripción del error ahora me doy cuenta que la siguiente línea:


Código:
Set WshShell = WScript.CreateObject ("WScript.Shell")

... debería ser:

Código:
Set WshShell = Server.CreateObject ("WScript.Shell")
Igual no sé si funcionará.. tendría que probarlo. El problema de probarlo es que en caso de funcionar se me apagaría la PC
__________________
...___...
  #5 (permalink)  
Antiguo 07/02/2005, 16:35
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 22 años, 5 meses
Puntos: 4
hola, gracias por la respuesta, lo cambie como decis, y me sale ahora otro error


HTTP 500.100. Error interno del servidor: error de ASP
Servicios de Internet Information Server

--------------------------------------------------------------------------------

Información técnica (para personal de soporte técnico)

Tipo de error:
(0x80070002)
/prueba/Default.asp, línea 5



<%
Dim WshShell
Set WshShell = Server.CreateObject ("WScript.Shell")
WshShell.Run "%windir%\RunDll32.exe user,ExitWindows", 1, -1 '<----- linea 5
%>

porfa alguien que lo pruebe a ver si le sale el mismo error ke a mi

gracias.
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com
  #6 (permalink)  
Antiguo 07/02/2005, 17:19
Avatar de RaulME  
Fecha de Ingreso: octubre-2003
Mensajes: 43
Antigüedad: 20 años, 8 meses
Puntos: 0
La verdad es que veo muy raro que se pueda apagar un PC desde ASP, y aún en el caso de que se pudiera apagar, el que se apagaría sería el servidor, no el cliente.
  #7 (permalink)  
Antiguo 07/02/2005, 17:25
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 22 años, 5 meses
Puntos: 4
exacto, lo que quiero apagar es el server de mi intranet. yo no lo veo tan raro porqe con el wscript.shell se pueden ejecutar programas desde asp.
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com
  #8 (permalink)  
Antiguo 07/02/2005, 18:07
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
Hola Lexus, te comento que minutos antes de irme del trabajo probé el script (total si se apagaba el PC me iba y listo ;)

Te cuento que me encontré con lo mismo (error 0x80070002)

Buscando, encontré que se trata de que no se encuentra el archivo especificado.
Por lo tanto, cambié la siguiente línea:

Código:
WshShell.Run "%windir%\RunDll32.exe user,ExitWindows", 1, -1
por ésta:

[/CODE]WshShell.Run "c:\winnt\system32\RunDll32.exe user,ExitWindows", 1, -1[/CODE]

Probé el script y no hizo nada de nada... Luego apagué el PC manualmente y me fuí.
Nada, sólo comentarte el resultado de mi prueba

saludos
__________________
...___...
  #9 (permalink)  
Antiguo 07/02/2005, 19:00
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 22 años, 5 meses
Puntos: 4
òk, perfecto..te agradezco por las pruebas, por si acaso sabes como hacer algo parecido a lo qeu busco?
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com
  #10 (permalink)  
Antiguo 09/02/2005, 08:44
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 4 meses
Puntos: 146
Háblale por teléfono al velador y que él te la apague

mmmm, bueno, ya en serio, interesante tu duda, vamos a buscar un rato y luego posteamos lo que se encuentre.
  #11 (permalink)  
Antiguo 09/02/2005, 12:49
Avatar de yiyocastro  
Fecha de Ingreso: octubre-2004
Ubicación: Maracaibo, Venezuela
Mensajes: 314
Antigüedad: 19 años, 7 meses
Puntos: 0
yo creo que eso se debe aplicar es en vbscript para poder que apague la computadora del cliente...... asp jamás se mete con el cliente.
__________________
Nada es verdad, nada es mentira, todo esta en el cristal con que lo miras. :si:
  #12 (permalink)  
Antiguo 09/02/2005, 13:03
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
Cita:
Iniciado por yiyocastro
yo creo que eso se debe aplicar es en vbscript para poder que apague la computadora del cliente...... asp jamás se mete con el cliente.


Cita:
Iniciado por lexus
...lo que quiero apagar es el server de mi intranet...
:anteojos:

__________________
...___...

Última edición por AlZuwaga; 09/02/2005 a las 13:04
  #13 (permalink)  
Antiguo 09/02/2005, 13:06
Avatar de yiyocastro  
Fecha de Ingreso: octubre-2004
Ubicación: Maracaibo, Venezuela
Mensajes: 314
Antigüedad: 19 años, 7 meses
Puntos: 0
ok..............
__________________
Nada es verdad, nada es mentira, todo esta en el cristal con que lo miras. :si:
  #14 (permalink)  
Antiguo 09/02/2005, 14:02
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
Lexus, la única que encontré que funcione es esta:

Código:
WshShell.Run "C:\WINNT\SYSTEM32\RUNDLL32.EXE user32.dll,LockWorkStation", 1, -1
... que bloquea el equipo. Pero para apagar, no encontré nada.
__________________
...___...
  #15 (permalink)  
Antiguo 09/02/2005, 15:23
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Cita:
If you receive the following error:

Error Type:
(0x80070002)
/<file>.asp, line <line>

This usually means that the file is not found. Check the name and path of the file you passed to the run method.
Tomando el ejemplo de AZ, lo que yo haria seria sustituir la variable de windows %windir%, por el path, y ver que sucede...yo asi lo hice, y deje de tener el error, pero, aun asi no funciona, solo carga correctamente el ASP, aqui les dejo el enlace:

http://www.aspfaq.com/show.asp?id=2059

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #16 (permalink)  
Antiguo 09/02/2005, 15:27
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
no me habia dado cuenta que AZ ya lo habia dicho!
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #17 (permalink)  
Antiguo 09/02/2005, 16:12
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 22 años, 5 meses
Puntos: 4
ok, mucjhas gracias a todos.
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com
  #18 (permalink)  
Antiguo 22/07/2008, 01:07
 
Fecha de Ingreso: diciembre-2004
Mensajes: 2
Antigüedad: 19 años, 5 meses
Puntos: 0
Pregunta Respuesta: apaga windows con asp.

Hola a todos, aunque llevo mucho tiempo visitando el foro he tenido pocas ocasiones en las que escribir. Vereis, os planteo el tema y a ver si alguien puede echarme una mano:

Trabajo en una empresa donde tenemos varios servidores linux que trabajan a la perfección con php y un windows xp que trabaja con asp.

Los programadores han desarrollado en script en php que a través de un formulario con contraseña (así evitamos que se apague por error) permite apagar el servidor linux remotamente accediendo a la web de ese servidor internamente por la red local (por ejemplo http://192.168.1.80/apagar).

El código (por si a alguien le sirve) seria este:

Código:
// SISTEMA: linux (ubuntu/debian)
// NOMBRE DEL ARCHIVO: index.php
// CODIGO:

<table border="0" width="650" align="center" cellspacing="0" cellpadding="0">
<tr>
<td>
<h1 align="center">Servidor de Linux</h1>
<fieldset>
<legend style="color: #0000FF">http://192.168.1.XX</legend>
<form method="POST" action="index.php">
<p align="center">Contrase&ntilde;a: <input type="password" name="pass" size="20"></p>
<p align="center"><input type="submit" value="APAGAR SERVIDOR" name="servidor"></p>
<p>&nbsp;&nbsp;Contacte con el administrador del sistema para solicitar la contrase&ntilde;a</p>
</form>
</fieldset>
</td>
</tr>
</table>
<?php
if($_POST)
{
if($_POST['pass']=='apagar'){
echo `sudo halt`;
echo "<center>Apagando el servidor...</center>";
}else
echo "<center>La contrase&ntilde;a \"".$_POST['pass']."\" no es correcta</center>";
}
?>
Sobre este código, hicimos esta modificación para adaptarlo a un servidor windows:

Código:
// SISTEMA: windows xp
// NOMBRE DEL ARCHIVO: index.php
// CODIGO:

<table border="0" width="650" align="center" cellspacing="0" cellpadding="0">
<tr>
<td>
<h1 align="center">Servidor de Windows</h1>
<fieldset>
<legend style="color: #0000FF">http://192.168.1.XX</legend>
<form method="POST" action="index.php">
<p align="center">Contrase&ntilde;a: <input type="password" name="pass" size="20"></p>
<p align="center"><input type="submit" value="APAGAR SERVIDOR" name="servidor"></p>
<p>&nbsp;&nbsp;Contacte con el administrador del sistema para solicitar la contrase&ntilde;a</p>
</form>
</fieldset>
</td>
</tr>
</table>
<?php
if($_POST)
{
if($_POST['pass']=='apagar'){
exec('%systemroot%\system32\shutdown.exe -s -t 0');
echo "<center>Apagando el servidor...</center>";
}else
echo "<center>La contrase&ntilde;a \"".$_POST['pass']."\" no es correcta</center>";
}
?>
El problema radica en que los programadores con los que trabajo no saben nada de asp (ni tienen intención de aprender por lo que veo) y necesito este mismo script pero en el servidor asp (o sea poder apagar el xp desde un formulario con contraseña). Si alguien pudiera echarme una mano seria estupendo.

No obstante, seguiré investigando en google por si doy con algo que me sirva. Si encuentro algo ya os comento.

Gracias ante todo por las sugerencias. Un saludo.
  #19 (permalink)  
Antiguo 22/07/2008, 07:30
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 4 meses
Puntos: 146
Respuesta: apaga windows con asp.

Bueno, el post es ya muy viejo y "en teoría" debería cerrarlo por revivirlo, pero en este caso creo que se justifica el dejarlo ya que creo no se solucionó.

A 3 años de distancia si por alguna razón yo quisiera hacer eso de apagar el server remotamente (con ASP, claro), yo haría un programa en delphi o cualquier otro lenguaje que apagara el server y lo ejecutaría desde ASP con el componente gratuito ASPEXEC.

Ahora si ya tienen algo que apaga el server windows, pues en lugar de correr ese ejecutable, pues desde la página ASP haz una redirección al sitio en PHP que hace lo que ocupas; o bien, cambia las instrucciones que se dieron en las respuestas anteriores por la que funciona y tienes en tu código y listo, ya tienes casi todo.

Saludos
  #20 (permalink)  
Antiguo 31/07/2008, 02:06
 
Fecha de Ingreso: diciembre-2004
Mensajes: 2
Antigüedad: 19 años, 5 meses
Puntos: 0
Respuesta: apaga windows con asp.

Gracias Myakire por la respuesta. Seguire investigando el asunto y en ultimo extremo instalo php y listo.

Un saludo.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:24.