public static extern int ChangeDisplaySettings(ref DEVMODE1 devMode, int flags);
public static extern int EnumDisplaySettings(string deviceName, int modeNum, ref DEVMODE1 devMode);
void ChangeScreenResoltion(int width, int height) { DEVMODE1 dm = new DEVMODE1(); dm.dmDeviceName = new String(new char[32]); dm.dmFormName = new String(new char[32]); dm.dmSize = (short)System.Runtime.InteropServices.Marshal.SizeOf(dm); if (Win32.EnumDisplaySettings(null, Win32.ENUM_CURRENT_SETTINGS, ref dm) != 0) { dm.dmPelsWidth = width; dm.dmPelsHeight = height; int result = Win32.ChangeDisplaySettings(ref dm, Win32.CDS_TEST); if (result != Win32.DISP_CHANGE_FAILED) { Win32.ChangeDisplaySettings(ref dm, Win32.CDS_UPDATEREGISTRY); } } }