Re: StartInfo no trabaja

Rafael Rueda <[email protected]>
Newsgroups gmane.comp.gnome.mono.hispano
Message-ID <1248212061.7358.7.camel@localhost>
Hice algunos cambios:

     if (Environment.OSVersion.Platform == PlatformID.Unix) {
	p.StartInfo.FileName = "/syanet/net/printreport.exe ";
	p.StartInfo.Arguments = @"-preview ConOces.rep";	
	p.Start();
     }
     if (Environment.OSVersion.Platform == PlatformID.Win32NT) {
     try {
	p.StartInfo.FileName = @"\syanet\net\printreport.exe ";
	p.StartInfo.Arguments = @"-preview ConOces.rep";
	p.Start();
     }
     catch (Exception e) {
     Console.WriteLine("valor excepción {0}",e);
     }
     }
     p.WaitForExit();

Sin embargo en Windows sigue con el problema:
"Printreport.exe ha detectado un problema y debe cerrarse."
No se genera ningún Exception.
Serías tan amable de darme un ejemplo al 4 punto que tu planteas. "Si
estás invocando un programa managed, ¿por qué no lo invocas como una
biblioteca?"

Rafael Rueda	

El lun, 20-07-2009 a las 00:10 -0400, Juan C. Olivares escribió:
> Rafael:
> 
> 
> 1.- La forma para definir en cuál sistema operativo estás es
> utilizando Environment.OSVersion.Platform
> 2.- ¿Qué significa exactamente "el sistema ya estaría bajo la opción
> mono"?
> 3.- ¿Tienes algún tipo de log dentro de printreport? ¿se ejecuta el
> programa? ¿atrapas alguna exception dentro de printreport?
> 4.- Si estás invocando un programa managed, ¿por qué no lo invocas
> como una biblioteca?
> 5.- ¿Intentaste hacer debug?
> 
> 2009/7/19 Rafael Rueda <[email protected]>
>         Es necesario que clarifique lo siguiente:
>         
>                Process p = new Process();
>                try
>         
>                //Esta parte es cuando la acción se ejecuta con sistema
>         operativo Linux
>         y por tanto sigue esta ruta
>                {
>                        p.StartInfo.FileName =
>         "/syanet/net/printreport.exe ";
>                        p.StartInfo.Arguments = @"-preview
>         ConOces.rep";
>         
>                        p.Start();
>                }
>                catch
>                {
>                // Esta Excepción se daría cuando el sistema operativo
>         no es Linux y
>         por tanto debería escoger la ruta para Windows que es la que
>         sigue a
>         continuación
>                        p.StartInfo.FileName = @"\syanet\net
>         \printreport.exe ";
>                        p.StartInfo.Arguments = @"-preview
>         ConOces.rep";
>         
>                        p.Start();
>                }
>                p.WaitForExit();
>         
>         Ahora el catch puede tomar cualquiera de estas dos formas:
>                -catch ó
>                -catch (Exception)
>         y ninguna se ellas afectaría el resultado.
>         
>         Lo raro es el mensaje:
>         
>         "Printreport.exe ha detectado un problema y debe cerrarse." Y
>         esto se dá
>         porque es un programa en C# o sea según ese mensaje esperaría
>         que se
>         antepusiera la opción
>         "mpno \syanet\net\printreport.exe -preview ConOces.rep" pero
>         esto no lo
>         permite por cuanto el sistema ya esta bajo la opción "mono" y
>         generaría
>         conflictos mayores porque internamente lo dejaría asi:
>         "mono mono \syanet\net\printreport.exe -preview ConOces.rep"
>         
>         Te repito, esto venía trabajando en versiones anteriores y
>         esto es lo
>         que me tiene totalmente desubicado. No le he cambiado nada a
>         las
>         instrucciones.
>         
>         Rafael Rueda
>         
>         El dom, 19-07-2009 a las 22:01 -0400, Juan C. Olivares
>         escribió:
>         
>         > Por favor, intenta reportar mejor los supuestos errores.
>         ¿Cuál es la
>         > exception? ¿por qué no la estás controlando?.
>         >
>         >
>         > Mi impresión es que no estás decidiendo el working directory
>         y no
>         > encuentra el archivo "ConOces.rep", pero es imposible saber
>         con tan
>         > poca información.
>         >
>         > 2009/7/19 Rafael Rueda <[email protected]>
>         >         Trabajo con versión monodevelop 2.0, mono 2.4.2.2 en
>         Linux y
>         >         Windows,
>         >         Windows con Framework 3.5 aunque debería trabajar
>         con
>         >         Framework 2.0.
>         >         También lo hago con System.Windows.Forms o con Gtk.
>         >
>         >         Si lo hago fuera de la aplicación que estoy
>         ejecutando con la
>         >         siguiente
>         >         instrucción lo realiza correctamente:
>         >         mono  \syanet\net\printreport.exe -preview
>         ConOces.rep
>         >
>         >         Si trabajaba correctamente en forma directa ¿porque
>         no lo hace
>         >         en la
>         >         aplicación principal?. ¿Que tengo mal en las
>         instrucciones que
>         >         escribí?
>         >
>         >         Nota: Soy consciente que la siguiente instrucción
>         sobra:
>         >         p.StartInfo.WindowStyle = ProcessWindowStyle.Normal;
>         >
>         >
>         >         Rafael Rueda
>         >
>         >         El sáb, 18-07-2009 a las 06:34 +0000,
>         [email protected]
>         >         escribió:
>         >         > Hola amigo, a que te refieres con las ultimas
>         versiones no
>         >         funciona en
>         >         > Win ? si te refieres que te corria en versiones
>         del
>         >         > framework antiguas, la solucion mas facil es
>         compilar el
>         >         soft para
>         >         > ellas, a no ser que uses algo novedoso creo que lo
>         mas
>         >         > recomendable. Lo otro, la propiedad WindowStyle
>         por defecto
>         >         viene en
>         >         > Normal, no hace falta especificarlo, a menos que
>         lo
>         >         > cambies en el codigo que precede al fragmento, por
>         supuesto.
>         >
>         >         >
>         >         > On Jul 18, 2009 12:58am, Rafael Rueda
>         <[email protected]>
>         >         wrote:
>         >         > > Hola amigos necesito su ayuda:
>         >         > >
>         >         > >
>         >         > >
>         >         > > Genero con monodevelop un reporte realizado con
>         reportman.
>         >         El
>         >         > sistema
>         >         > >
>         >         > > debe trabajar en Linux y Windows. Venía
>         trabajando bién en
>         >         Linux y
>         >         > >
>         >         > > Windows pero con las ultimas versiones de C# ya
>         no trabaja
>         >         en
>         >         > Windows.
>         >         > >
>         >         > > Alguién podría darme una mano?.
>         >         > >
>         >         > >
>         >         > >
>         >         > > Este es el código sobre un archivo de reporte ya
>         generado:
>         >         > "ConOces.rep.
>         >         > >
>         >         > >
>         >         > >
>         >         > >        using System.Diagnostics;
>         >         > >
>         >         > >        ...
>         >         > >
>         >         > >
>         >         > >
>         >         > >        Process p = new Process();
>         >         > >
>         >         > >        try
>         >         > >
>         >         > >        {
>         >         > >
>         >         > >                //Para Linux trabaja perfecto
>         >         > >
>         >         > >                p.StartInfo.FileName =
>         >         "/syanet/net/printreport.exe
>         >         > ";
>         >         > >
>         >         > >                p.StartInfo.Arguments =
>         @"-preview
>         >         ConOces.rep";
>         >         > >
>         >         > >                p.StartInfo.WindowStyle =
>         >         ProcessWindowStyle.Normal;
>         >         > >
>         >         > >                p.Start();
>         >         > >
>         >         > >        }
>         >         > >
>         >         > >        catch
>         >         > >
>         >         > >        {
>         >         > >
>         >         > >                //para Windows: Printreport.exe
>         ha
>         >         detectado un
>         >         > problema y debe
>         >         > >
>         >         > > cerrarse.
>         >         > >
>         >         > >                p.StartInfo.FileName = @"\syanet
>         \net
>         >         \printreport.exe
>         >         > ";
>         >         > >
>         >         > >                p.StartInfo.Arguments =
>         @"-preview
>         >         ConOces.rep";
>         >         > >
>         >         > >                p.StartInfo.WindowStyle =
>         >         ProcessWindowStyle.Normal;
>         >         > >
>         >         > >                p.Start();
>         >         > >
>         >         > >        }
>         >         > >
>         >         > >        p.WaitForExit();
>         >         > >
>         >         > >
>         >         > >
>         >         > >
>         >         > >
>         >         > >
>         >         > >
>         >         > >
>         >         > >
>         >         > >
>         >         > >
>         >         > > _______________________________________________
>         >         > >
>         >         > > Mono-hispano mailing list
>         >         > >
>         >         > > [email protected]
>         >         > >
>         >         > >
>         https://listas.hispalinux.es/mailman/listinfo/mono-hispano
>         >         > >
>         >         > >
>         >
>         >         _______________________________________________
>         >         Mono-hispano mailing list
>         >         [email protected]
>         >
>         https://listas.hispalinux.es/mailman/listinfo/mono-hispano
>         >
>         >
>         >
>         >
>         > --
>         > Atte,
>         > Juan Cristóbal Olivares
 <         <חואנכרי
>         >
>         > ==============
>         >
>         > Renovarse o morir: Mi PC de los sesenta tenía veinte mil
>         militantes. Y
>         > mi PC del siglo XXI tiene cuarenta gigabytes.
>         >
>         
>         
> 
> 
> 
> -- 
> Atte,
> Juan Cristóbal Olivares
 <חואנכרי
> 
> ==============
> 
> Renovarse o morir: Mi PC de los sesenta tenía veinte mil militantes. Y
> mi PC del siglo XXI tiene cuarenta gigabytes.
> 

_______________________________________________
Mono-hispano mailing list
[email protected]
https://listas.hispalinux.es/mailman/listinfo/mono-hispano
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.