ASP.NET - Ejecutar aplicaciones externas desde ASP.NET

 
Vista:

Ejecutar aplicaciones externas desde ASP.NET

Publicado por jvirgo (7 intervenciones) el 11/05/2006 21:55:39
Hola a todos los participantes del foro
soy nuevo en aplicaciones en .NET, lo que intento realizar es Abrir un archivo excel desde una Pagina en ASP.NET tengo el siguiete codigo que he encontrado en internet :
'*************************************
Dim MyProcess As Diagnostics.Process = New Diagnostics.Process
MyProcess.StartInfo.UseShellExecute = True
'aplicacion a ejecutar
MyProcess.StartInfo.FileName = "EXCEL.exe"
'archivo a abrir
MyProcess.StartInfo.Arguments = "D:\compartido\PC01010832.xls"

MyProcess.Start()
'****************************
En primera instancia pense que no se ejecutaba, pero al revisar el Administrador de Tareas se ve que EXCEL esta corriendo pero no se lo puede ver.

Me parece que el problema es que se ejecuta con el usuario ASPNET (obvio por que lo abro desde pagina de ASP) y no con el SYSTEM. me gustaria me ayuden a cambiar el ususario ASPNET por SYSTEM.
De lo contrario me indique como puedo abrir un archivo EXCEL desde una pagina ASP.NET

quisiera que el excel se ejecute fuera del explorador, en el lado del cliente, el documento EXCEL a abrir debe estar en alguana carpeta del equipo del cliente.

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:Ejecutar aplicaciones externas desde ASP.NET

Publicado por davidpg (1 intervención) el 20/06/2006 18:23:10
try
{
//creamos el objeto que controlará el proceso que vamos a lanzar
ProcessStartInfo psi = new ProcessStartInfo();
//le decimos que se muestre y que no se quede en 2º plano
psi.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal;
//nombre del ejecutable
psi.FileName = "ping.exe";
psi.RedirectStandardOutput = true;
psi.UseShellExecute = false;

psi.WorkingDirectory = "C:\\";
//argumentos de la línea de comandos, si los necesita
psi.Arguments = "x.x.x.x";

//obtenemos una referencia al nuevo proceso
Process p = System.Diagnostics.Process.Start(psi);

string salida = p.StandardOutput.ReadToEnd();
Response.Write(salida.Replace("\n", "<br>"));

//y podemos esperar a que finalice su ejecución
p.WaitForExit();

//Response.AddHeader("Refresh", "2");

}
catch (Exception ex)
{
Response.Write(ex.ToString());
}
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