personalizadas - Establecer System.Console.WindowHeight arroja una excepción System.NotSupportedException en Mono
throw exception c# (1)
Desde la rama principal en mono en Github Console.cs :
[MonoLimitation ("Only works on windows")]
public static int WindowHeight {
get { return ConsoleDriver.WindowHeight; }
set { ConsoleDriver.WindowHeight = value; }
}
Observe el atributo MonoLimitation
Recibo una Unhandled Exception: System.NotSupportedException: Operation is not supported.
La excepción se genera bajo Mono usando Ubuntu 11.10.
Leer la propiedad funciona . Los documentos podrían sugerir que el Método no plantea problemas.
¿Alguna idea sobre cómo manejar o arreglar mejor esta situación?
Mi solución actual es bastante incómoda y no resuelve el problema de configurar el tamaño de la ventana a través de System.Console-API:
const int defaultConsoleWindowWidth = 80;
const int defaultConsoleWindowHeight = 25;
if (pid != PlatformID.Unix && pid != (PlatformID)128) {
System.Console.WindowHeight = lastConsoleWindowHeight;
System.Console.WindowWidth = defaultConsoleWindowWidth;
}else{
//assume *NIX system
try {
var p = new Process();
p.StartInfo = new ProcessStartInfo(@"stty cols " + defaultConsoleWindowWidth + " rows " + lastConsoleWindowHeight, "-n")
{
UseShellExecute = false
};
p.Start();
p.WaitForExit();
}
catch (Exception e) { /*...*/}
}
Mi versión Mono :
lo@lo-VirtualBox:~/Desktop$ mono --version
Mono JIT compiler version 2.10.8.1 (Debian 2.10.8.1-1ubuntu2.2)
Copyright (C) 2002-2011 Novell, Inc, Xamarin, Inc and Contributors. www.mono-project.com
TLS: __thread
SIGSEGV: altstack
Notifications: epoll
Architecture: x86
Disabled: none
Misc: softdebug
LLVM: supported, not enabled.
GC: Included Boehm (with typed GC and Parallel Mark)