GRACIAS.
|
|
#2 (permalink) |
![]() |
En un modulo colocas:
Public Declare Function EnumDisplaySettings Lib "user32.dll" Alias "EnumDisplaySettingsA" (ByVal lpszDeviceName As Long, ByVal iModeNum As Long, lpDevMode As Any) As Boolean Public Declare Function ChangeDisplaySettings Lib "user32.dll" Alias "ChangeDisplaySettingsA" (lpDevMode As Any, ByVal dwFlags As Long) As Long Public Declare Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long Public Const CCDEVICENAME = 32 Public Const CCFORMNAME = 32 Public Const DM_PELSWIDTH = &H80000 Public Const DM_PELSHEIGHT = &H100000 Public Type DEVMODE dmDeviceName As String * CCDEVICENAME dmSpecVersion As Integer dmDriverVersion As Integer dmSize As Integer dmDriverExtra As Integer dmFields As Long dmOrientation As Integer dmPaperSize As Integer dmPaperLength As Integer dmPaperWidth As Integer dmScale As Integer dmCopies As Integer dmDefaultSource As Integer dmPrintQuality As Integer dmColor As Integer dmDuplex As Integer dmYResolution As Integer dmTTOption As Integer dmCollate As Integer dmFormName As String * CCFORMNAME dmUnusedPadding As Integer dmBitsPerPel As Integer dmPelsWidth As Long dmPelsHeight As Long dmDisplayFlags As Long dmDisplayFrequency As Long End Type Public DevChg As DEVMODE Public Sub ChangeRes(iWidth As Single, iHeight As Single) Dim a As Boolean Dim I& I = 0 Do a = EnumDisplaySettings(0&, I&, DevChg) I = I + 1 Loop Until (a = False) Dim b& DevChg.dmFields = DM_PELSWIDTH Or DM_PELSHEIGHT DevChg.dmPelsWidth = iWidth DevChg.dmPelsHeight = iHeight b = ChangeDisplaySettings(DevChg, 0) End Sub Y en el formulario: Public Sub CheckRes() Dim X As Long, Y As Long Dim MsgTitle As String Dim MsgStyle As Long Dim msg As String Dim MsgResponse As Long Y = GetSystemMetrics(0) X = GetSystemMetrics(1) If "" & Y & "x" & X <> "1024x768" Then 'Aqui es donde comparas la resolucion MsgBox "La resolución de su monitor es " & Y & "x" & X & " Call ChangeRes(1024, 768) 'Aqui asignas la resolucion que quieres End If End Sub Pruebalo... ![]() |
|
|
|