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

Ejecutar exe en asp

Estas en el tema de Ejecutar exe en asp en el foro de ASP Clásico en Foros del Web. Hola, a mi me pasa algo parecido a esto y no he conseguido solucionarlo. Necesito ejecutar un archivo .exe creado con el netbeans en el ...
  #1 (permalink)  
Antiguo 08/05/2009, 02:57
 
Fecha de Ingreso: mayo-2009
Mensajes: 1
Antigüedad: 16 años
Puntos: 0
Ejecutar exe en asp

Hola, a mi me pasa algo parecido a esto y no he conseguido solucionarlo.
Necesito ejecutar un archivo .exe creado con el netbeans en el servidor a través de un botón incluido en una página ASP. He probado con varios códigos que he encontrado en la Web. Tambien he probado con el componente aspexec, pero lo cierto es que soy bastante nueva en estos temas y no se si lo estre haciendo bien. Uno de los codigos que he probado es el siguiente:

<script language="vbscript">
Sub msn()
Set WshShell = CreateObject("WScript.Shell")
Return = WshShell.Run("C:Inetpubwwwrootgeneradorgenerador.e xe")
End Sub
</script>

El error que me da es: 'El componente ActiveX no puede crear el objeto 'WScript.Shell''. Si utilizo la secuencia "Server.CreateObject" me dice que se requiere un objeto 'Server'.

Tambien he probado lo siguiente:

<%
If ComponenteInstalado("WScript.Shell") Then
Dim wsh
Set wsh = createobject("WScript.Shell")
wsh.run("C:Inetpubwwwrootgeneradorgenerador.exe")
response.Write("hasta aqui llego")
Else
Response.Write "Actualmente no puedes 'correr' un programa ejecutable en el servidor usando el componente 'WScript.Shell'"
End if
%>
<%
Function ComponenteInstalado(ProgId)
Dim tmpObject
On Error Resume Next
Set tmpObject = Server.CreateObject(ProgId)
If Err.Number = 0 Then
ComponenteInstalado = True
Else
ComponenteInstalado = False
End If
Set tmpObject = Nothing
End Function
%>

En este caso no me da error, se imprime la sentencia "hasta aqui llego", pero no se ejecuta la aplicacion.

Por ultimo,tambien probé con el aspexec:

<%
dim Executor,strResult,WaitObj
Response.Buffer = true
Set Executor = Server.CreateObject("ASPExec.Execute")
Executor.Application = "C:Inetpubwwwrootgeneradorgenerador.exe"
Executor.ShowWindow = true
Response.Write "Attempting to execute " & Executor.Application & "<br>"
strResult = Executor.ExecuteWinApp
Response.Write "done: " & strResult
%>

Con este código tambien me da como resultado 'Ok', pero tampoco consigo ejecutar mi aplicacion.

He probado a registrar las .dll, a asignar permisos de ejecución a la carpeta del IIS y no se que más probar. Agradecería si alguien me pudiera ayudar puesto que estoy bastante atascada. Por eso mi mensaje es tan completito....

Saludos!

Última edición por AlZuwaga; 08/05/2009 a las 10:45 Razón: por separación de tema
  #2 (permalink)  
Antiguo 08/05/2009, 13:12
 
Fecha de Ingreso: abril-2009
Mensajes: 5
Antigüedad: 16 años
Puntos: 0
Respuesta: Ejecutar exe en asp

Tienes que ejecutar tu web y tu app pool con un usuario que permita ejecutar aplicaciones. La verdad, dudo que el usuario anónimo de IIS permita tal cosa...

El Wsh debería funcionarte, yo lo uso así:

<%
Function Ejecutar(ByVal strComando)

Dim oWsh, oExec
Set oWsh = CreateObject("WScript.Shell")
Set oExec = oWsh.Exec(strComando)

Ejecutar = oExec.StdOut.ReadAll

End Function
%>
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 17:30.