C sharp - Cómo Cambiar y mantener la resolución del monitor?

 
Vista:

Cómo Cambiar y mantener la resolución del monitor?

Publicado por Rudy Castañeda (24 intervenciones) el 14/08/2007 16:28:04
Bueno como siempre aca aportando...y ahora pues necesito un aporte...

resulta que mi aplicación necesita un mínimo de resolución de 1024x768 el problema es que algunos usuarios tienen menos resolución, entonces le he cambiado la resolución por código, ahora bien, el problema que tengo es que después de un tiempo y al cargar otra forma dentro de la forma "padre" me retorna a la resolución original del sistema.....
a continuación les muestro el código que utilizo:

//Leo del registro la resolución maxima.. para así ver si le puedo colocar la de 1024*768

RegistryKey mKey = Registry.LocalMachine.CreateSubKey
("SYSTEM\\CurrentControlSet\\Control\\Class\\{4D36E96E-E325-
11CE-BFC1-08002BE10318}\\0000");
if (mKey == null)
{
Console.WriteLine("Clave maestra vacía!");
MessageBox.Show("Error en la lectura del registro.", "Error",
MessageBoxButtons.OK, MessageBoxIcon.Error);
}
else
{
//Console.WriteLine("MaxResolution = {0}", mKey.GetValue("MaxResolution"));
//MessageBox.Show(mKey.GetValue("MaxResolution").ToString());
String Resolucion = mKey.GetValue("MaxResolution").ToString();
if (Convert.ToInt32(Resolucion.Split(',')[0]) >= 1024)
{//se hace el cambio, sino se deja igual
this.WindowState = FormWindowState.Normal;
DxVBLib.DirectX7 Direct = new DxVBLib.DirectX7();
DxVBLib.DirectDraw7 DirectD = Direct.DirectDrawCreate("");
DirectD.SetDisplayMode(1024, 768, 0, 0,
DxVBLib.CONST_DDSDMFLAGS.DDSDM_DEFAULT);
this.WindowState = FormWindowState.Maximized;
}
}
mKey.Close();

Espero me puedan ayudar... muchísimas gracias.. ya que es urgente..
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