¿Cómo puedo detectar que me estoy ejecutando en mono-service2? (en C# /. NET 3.5, ejecutando mono 2.6.7 en ubuntu 11)¿Cómo detectar si estoy corriendo en un servicio único?
Type.GetType("Mono.Runtime")
me dice que estoy corriendo en mono, por lo que esa parte está bien. Pero Environment.UserInteractive
siempre es falso en mono, parece ser así, por lo que estoy luchando para descubrir si realmente estoy corriendo bajo el mono-servicio2, sin consola/terminal.
Tnx. El truco 'FriendlyName' funciona bien. Pero ... No es ideal (así que dejo esta pregunta sin respuesta por un tiempo más :). Messing con FriendlyName afecta mi registro y sería mejor no tener que recordar la opción -m para el servicio único. Pero hey; gracias de cualquier manera. Voy a resolver algo. Y ahora, al menos, tengo una solución. – BaBu
Encontré una forma de averiguar si hay una consola/terminal disponible o no en mono on linux: 'Mono.Unix.Native.Syscall.isatty (0)'. Esto no funcionará en Windows pero, por supuesto, Environment.UserInteractive funciona. – BaBu
@BaBu: sí, buena idea. cuando v4.5 esté disponible, esto también será útil: http://msdn.microsoft.com/en-us/library/system.console.isoutputredirected(v=vs.110).aspx –