• Miércoles 20 de Noviembre de 2024, 18:33

Autor Tema:  Pequeña Pregunta  (Leído 1694 veces)

menska

  • Nuevo Miembro
  • *
  • Mensajes: 12
    • Ver Perfil
Pequeña Pregunta
« en: Miércoles 9 de Junio de 2004, 20:32 »
0
Buenas, tengo una duda existencial sobre como ejecutar una aplicación desde C#.

  Yo lo que hago es abrir una ventana de sistema en el directorio donde está la aplicación y la abro, pero queda ahí la ventana de consola y no es muy estético que digamos....

  No sé... Y para abrir un .html (en local) en el IE??

  Gracias!  :hola:

desgraciado

  • Miembro activo
  • **
  • Mensajes: 30
    • Ver Perfil
    • http://desgrasoft.esp.st/
Re: Pequeña Pregunta
« Respuesta #1 en: Domingo 12 de Septiembre de 2004, 03:31 »
0
puedes usar System.Diagnostics.ProcessStartInfo, System.Diagnostics.Process
que es equivalente a system() C++

esto lo saque de la MSDN

Código: Text
  1.  
  2. using System;
  3. using System.Diagnostics;
  4. using System.ComponentModel;
  5.  
  6. namespace MyProcessSample
  7. {
  8.     /// <summary>
  9.     /// Shell for the sample.
  10.     /// </summary>
  11.     public class MyProcess
  12.     {
  13.        
  14.         /// <summary>
  15.         /// Opens the Internet Explorer application.
  16.         /// </summary>
  17.         public void OpenApplication(string myFavoritesPath)
  18.         {
  19.             // Start Internet Explorer. Defaults to the home page.
  20.             Process.Start("IExplore.exe");
  21.                    
  22.             // Display the contents of the favorites folder in the browser.
  23.             Process.Start(myFavoritesPath);
  24.  
  25.         }
  26.        
  27.         /// <summary>
  28.         /// Opens urls and .html documents using Internet Explorer.
  29.         /// </summary>
  30.         public void OpenWithArguments()
  31.         {
  32.             // url's are not considered documents. They can only be opened
  33.             // by passing them as arguments.
  34.             Process.Start("IExplore.exe", "www.northwindtraders.com");
  35.            
  36.             // Start a Web page using a browser associated with .html and .asp files.
  37.             Process.Start("IExplore.exe", "C:\\myPath\\myFile.htm");
  38.             Process.Start("IExplore.exe", "C:\\myPath\\myFile.asp");
  39.         }
  40.        
  41.         /// <summary>
  42.         /// Uses the ProcessStartInfo class to start new processes, both in a minimized
  43.         /// mode.
  44.         /// </summary>
  45.         public void OpenWithStartInfo()
  46.         {
  47.            
  48.             ProcessStartInfo startInfo = new ProcessStartInfo("IExplore.exe");
  49.             startInfo.WindowStyle = ProcessWindowStyle.Minimized;
  50.            
  51.             Process.Start(startInfo);
  52.            
  53.             startInfo.Arguments = "www.northwindtraders.com";
  54.            
  55.             Process.Start(startInfo);
  56.            
  57.         }
  58.  
  59.         public static void Main()
  60.         {
  61.                     // Get the path that stores favorite links.
  62.                     string myFavoritesPath =
  63.                     Environment.GetFolderPath(Environment.SpecialFolder.Favorites);
  64.                
  65.                     MyProcess myProcess = new MyProcess();
  66.          
  67.             myProcess.OpenApplication(myFavoritesPath);
  68.             myProcess.OpenWithArguments();
  69.             myProcess.OpenWithStartInfo();
  70.  
  71.          }    
  72.     }
  73. }
  74.  
  75.  

menska

  • Nuevo Miembro
  • *
  • Mensajes: 12
    • Ver Perfil
Re: Pequeña Pregunta
« Respuesta #2 en: Lunes 27 de Septiembre de 2004, 10:47 »
0
Gracias por tu ayuda... desgraciado (gegege, que nick :P ). Lo probaré!

Johan Hernandez

  • Nuevo Miembro
  • *
  • Mensajes: 17
    • Ver Perfil
Re: Pequeña Pregunta
« Respuesta #3 en: Miércoles 27 de Octubre de 2004, 22:47 »
0
Si necesitas direccionar el Stream de salida,error de una aplicacion como IE, utilizar la redireccion de Streams en la clase ProcessStartInfo + un hilo que espere mientras Stream.ReadLine() te devuelve cada linea que ese proceso manda a traves de su Stream de salida, en.NET, Console.WriteLine(). :)