Hola, este codigo es para cambiar la frecuencia del monitor
le pasan como valor a la funcion la frecuencia en Hz que quieren ponerle.Código:Option Explicit Private Declare Function EnumDisplaySettings Lib "user32" Alias "EnumDisplaySettingsA" (ByVal lpszDeviceName As Long, ByVal iModeNum As Long, lpDevMode As Any) As Boolean Private Declare Function ChangeDisplaySettings Lib "user32" Alias "ChangeDisplaySettingsA" (lpDevMode As Any, ByVal dwflags As Long) As Long Const CCDEVICENAME = 32 Const DM_DISPLAYFREQUENCY = &H400000 Const CCFORMNAME = 32 Private 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 Dim Dispositivo As DEVMODE Sub Cambiar_Frecuencia(Frecuencia As Single) Dim a As Boolean Dim i As Integer i = 0 Do a = EnumDisplaySettings(0&, i, Dispositivo) i = i + 1 Loop Until (a = False) Dim b& Dispositivo.dmFields = DM_DISPLAYFREQUENCY Dispositivo.dmDisplayFrequency = Frecuencia ChangeDisplaySettings Dispositivo, 0 End Sub Sub Form_Load() Call Cambiar_Frecuencia(60) End Sub
saludos.