La Web del Programador: Comunidad de Programadores
 
    Pregunta:  1678 - CAMBIAR LA RESOLUCION DE WINDOWS MEDIANTE CODIGO
Autor:  Manuel Peiró Biosca
Hola. Cuando creo programas en una resolución y los ejecuto en otra resolución diferente, los controles no aparecen como yo los puse y no tienen el programa no tiene el mismo aspecto. Por favor, si sabeis como cambiar la resolución mediante código, responder. Gracias.

  Respuesta:  Ramon Beltran E.
Hola, a mi me pasaba lo mismo pero utilice la API y problema resuelto te mando un ejemplo de ello:

esta funcion me permite checar al momento de inicializar la aplicacion que resolucion tiene la pantalla,

En un archivo *.bas de la aplicacion coloca lo siguiente:

' Declarar funcion de la API
Declare Function GetDeviceCaps Lib "Gdi32" (ByVal hdc As Long, ByVal nIndex As Long) As Long

' en el formulario inicial de la aplicacion, en el evento load checar los siguiente

' Obtener la resolucion de la pantalla
Horizontal = GetDeviceCaps(hdc, HORZRES)
Vertical = GetDeviceCaps(hdc, VERTRES)
' Si la resolucion no es de 800 X 600 Salirse del programa
If Horizontal <> 800 And Vertical <> 600 Then
Msg1$ = "El sistema trabaja únicamente a una resolución de 800 X 600." + Chr(13)
Msg2$ = "Cambie la configuración he inténtelo de nuevo."
MsgBox Msg1$ & Msg2$, vbCritical, "Configuración del sistema"
End
End If

de esta forma ya no se carga tu aplicacion si no es la configuracion correcta, tu la puedes modificar en la condición.

Saludos

  Respuesta:  Pedro Valencia
Hola amigo,
en la respuestas de Visual Basic (1371) esta la solución a tu problema. No obstante aqui te paso la imformacion necesaria. Yo lo probe y a parte de ser sencilo, es eficaz.

Existe un control llamado FREESIZE, solo colocalo sobre el formulario y listo (casi no hay que ajustar los parametros). Este control es freeware, puedes bajarlo de www.shareware.com, o si gustas te lo mando por e-mail

Un saludo