@msdn=http://search.microsoft.com/search/results.aspx?qu=$$$ @pinvoke=http://pinvoke.net/$$$.htm @link=http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemwindowsformssysteminformationclasstopic.asp Summary: Values to retrieve various system metrics !!!!C# Definition (with summary); [DllImport("user32.dll")] static extern int GetSystemMetrics(SystemMetric smIndex); /// <summary> /// Flags used with the Windows API (User32.dll):GetSystemMetrics(SystemMetric smIndex) /// /// This Enum and declaration signature was written by Gabriel T. Sharp /// ai_productions@verizon.net or osirisgothra@hotmail.com /// Obtained on pinvoke.net, please contribute your code to support the wiki! /// </summary> public enum SystemMetric:int { /// <summary> /// The flags that specify how the system arranged minimized windows. For more information, see the Remarks section in this topic. /// </summary> SM_ARRANGE = 56, /// <summary> /// The value that specifies how the system is started: /// 0 Normal boot /// 1 Fail-safe boot /// 2 Fail-safe with network boot /// A fail-safe boot (also called SafeBoot, Safe Mode, or Clean Boot) bypasses the user startup files. /// </summary> SM_CLEANBOOT = 67, /// <summary> /// The number of display monitors on a desktop. For more information, see the Remarks section in this topic. /// </summary> SM_CMONITORS = 80, /// <summary> /// The number of buttons on a mouse, or zero if no mouse is installed. /// </summary> SM_CMOUSEBUTTONS = 43, /// <summary> /// The width of a window border, in pixels. This is equivalent to the SM_CXEDGE value for windows with the 3-D look. /// </summary> SM_CXBORDER = 5, /// <summary> /// The width of a cursor, in pixels. The system cannot create cursors of other sizes. /// </summary> SM_CXCURSOR = 13, /// <summary> /// This value is the same as SM_CXFIXEDFRAME. /// </summary> SM_CXDLGFRAME = 7, /// <summary> /// The width of the rectangle around the location of a first click in a double-click sequence, in pixels. , /// The second click must occur within the rectangle that is defined by SM_CXDOUBLECLK and SM_CYDOUBLECLK for the system /// to consider the two clicks a double-click. The two clicks must also occur within a specified time. /// To set the width of the double-click rectangle, call SystemParametersInfo with SPI_SETDOUBLECLKWIDTH. /// </summary> SM_CXDOUBLECLK = 36, /// <summary> /// The number of pixels on either side of a mouse-down point that the mouse pointer can move before a drag operation begins. /// This allows the user to click and release the mouse button easily without unintentionally starting a drag operation. /// If this value is negative, it is subtracted from the left of the mouse-down point and added to the right of it. /// </summary> SM_CXDRAG = 68, /// <summary> /// The width of a 3-D border, in pixels. This metric is the 3-D counterpart of SM_CXBORDER. /// </summary> SM_CXEDGE = 45, /// <summary> /// The thickness of the frame around the perimeter of a window that has a caption but is not sizable, in pixels. /// SM_CXFIXEDFRAME is the height of the horizontal border, and SM_CYFIXEDFRAME is the width of the vertical border. /// This value is the same as SM_CXDLGFRAME. /// </summary> SM_CXFIXEDFRAME = 7, /// <summary> /// The width of the left and right edges of the focus rectangle that the DrawFocusRectdraws. /// This value is in pixels. /// Windows 2000: This value is not supported. /// </summary> SM_CXFOCUSBORDER = 83, /// <summary> /// This value is the same as SM_CXSIZEFRAME. /// </summary> SM_CXFRAME = 32, /// <summary> /// The width of the client area for a full-screen window on the primary display monitor, in pixels. /// To get the coordinates of the portion of the screen that is not obscured by the system taskbar or by application desktop toolbars, /// call the SystemParametersInfofunction with the SPI_GETWORKAREA value. /// </summary> SM_CXFULLSCREEN = 16, /// <summary> /// The width of the arrow bitmap on a horizontal scroll bar, in pixels. /// </summary> SM_CXHSCROLL = 21, /// <summary> /// The width of the thumb box in a horizontal scroll bar, in pixels. /// </summary> SM_CXHTHUMB = 10, /// <summary> /// The default width of an icon, in pixels. The LoadIcon function can load only icons with the dimensions /// that SM_CXICON and SM_CYICON specifies. /// </summary> SM_CXICON = 11, /// <summary> /// The width of a grid cell for items in large icon view, in pixels. Each item fits into a rectangle of size /// SM_CXICONSPACING by SM_CYICONSPACING when arranged. This value is always greater than or equal to SM_CXICON. /// </summary> SM_CXICONSPACING = 38, /// <summary> /// The default width, in pixels, of a maximized top-level window on the primary display monitor. /// </summary> SM_CXMAXIMIZED = 61, /// <summary> /// The default maximum width of a window that has a caption and sizing borders, in pixels. /// This metric refers to the entire desktop. The user cannot drag the window frame to a size larger than these dimensions. /// A window can override this value by processing the WM_GETMINMAXINFO message. /// </summary> SM_CXMAXTRACK = 59, /// <summary> /// The width of the default menu check-mark bitmap, in pixels. /// </summary> SM_CXMENUCHECK = 71, /// <summary> /// The width of menu bar buttons, such as the child window close button that is used in the multiple document interface, in pixels. /// </summary> SM_CXMENUSIZE = 54, /// <summary> /// The minimum width of a window, in pixels. /// </summary> SM_CXMIN = 28, /// <summary> /// The width of a minimized window, in pixels. /// </summary> SM_CXMINIMIZED = 57, /// <summary> /// The width of a grid cell for a minimized window, in pixels. Each minimized window fits into a rectangle this size when arranged. /// This value is always greater than or equal to SM_CXMINIMIZED. /// </summary> SM_CXMINSPACING = 47, /// <summary> /// The minimum tracking width of a window, in pixels. The user cannot drag the window frame to a size smaller than these dimensions. /// A window can override this value by processing the WM_GETMINMAXINFO message. /// </summary> SM_CXMINTRACK = 34, /// <summary> /// The amount of border padding for captioned windows, in pixels. Windows XP/2000: This value is not supported. /// </summary> SM_CXPADDEDBORDER = 92, /// <summary> /// The width of the screen of the primary display monitor, in pixels. This is the same value obtained by calling /// GetDeviceCaps as follows: GetDeviceCaps( hdcPrimaryMonitor, HORZRES). /// </summary> SM_CXSCREEN = 0, /// <summary> /// The width of a button in a window caption or title bar, in pixels. /// </summary> SM_CXSIZE = 30, /// <summary> /// The thickness of the sizing border around the perimeter of a window that can be resized, in pixels. /// SM_CXSIZEFRAME is the width of the horizontal border, and SM_CYSIZEFRAME is the height of the vertical border. /// This value is the same as SM_CXFRAME. /// </summary> SM_CXSIZEFRAME = 32, /// <summary> /// The recommended width of a small icon, in pixels. Small icons typically appear in window captions and in small icon view. /// </summary> SM_CXSMICON = 49, /// <summary> /// The width of small caption buttons, in pixels. /// </summary> SM_CXSMSIZE = 52, /// <summary> /// The width of the virtual screen, in pixels. The virtual screen is the bounding rectangle of all display monitors. /// The SM_XVIRTUALSCREEN metric is the coordinates for the left side of the virtual screen. /// </summary> SM_CXVIRTUALSCREEN = 78, /// <summary> /// The width of a vertical scroll bar, in pixels. /// </summary> SM_CXVSCROLL = 2, /// <summary> /// The height of a window border, in pixels. This is equivalent to the SM_CYEDGE value for windows with the 3-D look. /// </summary> SM_CYBORDER = 6, /// <summary> /// The height of a caption area, in pixels. /// </summary> SM_CYCAPTION = 4, /// <summary> /// The height of a cursor, in pixels. The system cannot create cursors of other sizes. /// </summary> SM_CYCURSOR = 14, /// <summary> /// This value is the same as SM_CYFIXEDFRAME. /// </summary> SM_CYDLGFRAME = 8, /// <summary> /// The height of the rectangle around the location of a first click in a double-click sequence, in pixels. /// The second click must occur within the rectangle defined by SM_CXDOUBLECLK and SM_CYDOUBLECLK for the system to consider /// the two clicks a double-click. The two clicks must also occur within a specified time. To set the height of the double-click /// rectangle, call SystemParametersInfo with SPI_SETDOUBLECLKHEIGHT. /// </summary> SM_CYDOUBLECLK = 37, /// <summary> /// The number of pixels above and below a mouse-down point that the mouse pointer can move before a drag operation begins. /// This allows the user to click and release the mouse button easily without unintentionally starting a drag operation. /// If this value is negative, it is subtracted from above the mouse-down point and added below it. /// </summary> SM_CYDRAG = 69, /// <summary> /// The height of a 3-D border, in pixels. This is the 3-D counterpart of SM_CYBORDER. /// </summary> SM_CYEDGE = 46, /// <summary> /// The thickness of the frame around the perimeter of a window that has a caption but is not sizable, in pixels. /// SM_CXFIXEDFRAME is the height of the horizontal border, and SM_CYFIXEDFRAME is the width of the vertical border. /// This value is the same as SM_CYDLGFRAME. /// </summary> SM_CYFIXEDFRAME = 8, /// <summary> /// The height of the top and bottom edges of the focus rectangle drawn byDrawFocusRect. /// This value is in pixels. /// Windows 2000: This value is not supported. /// </summary> SM_CYFOCUSBORDER = 84, /// <summary> /// This value is the same as SM_CYSIZEFRAME. /// </summary> SM_CYFRAME = 33, /// <summary> /// The height of the client area for a full-screen window on the primary display monitor, in pixels. /// To get the coordinates of the portion of the screen not obscured by the system taskbar or by application desktop toolbars, /// call the SystemParametersInfo function with the SPI_GETWORKAREA value. /// </summary> SM_CYFULLSCREEN = 17, /// <summary> /// The height of a horizontal scroll bar, in pixels. /// </summary> SM_CYHSCROLL = 3, /// <summary> /// The default height of an icon, in pixels. The LoadIcon function can load only icons with the dimensions SM_CXICON and SM_CYICON. /// </summary> SM_CYICON = 12, /// <summary> /// The height of a grid cell for items in large icon view, in pixels. Each item fits into a rectangle of size /// SM_CXICONSPACING by SM_CYICONSPACING when arranged. This value is always greater than or equal to SM_CYICON. /// </summary> SM_CYICONSPACING = 39, /// <summary> /// For double byte character set versions of the system, this is the height of the Kanji window at the bottom of the screen, in pixels. /// </summary> SM_CYKANJIWINDOW = 18, /// <summary> /// The default height, in pixels, of a maximized top-level window on the primary display monitor. /// </summary> SM_CYMAXIMIZED = 62, /// <summary> /// The default maximum height of a window that has a caption and sizing borders, in pixels. This metric refers to the entire desktop. /// The user cannot drag the window frame to a size larger than these dimensions. A window can override this value by processing /// the WM_GETMINMAXINFO message. /// </summary> SM_CYMAXTRACK = 60, /// <summary> /// The height of a single-line menu bar, in pixels. /// </summary> SM_CYMENU = 15, /// <summary> /// The height of the default menu check-mark bitmap, in pixels. /// </summary> SM_CYMENUCHECK = 72, /// <summary> /// The height of menu bar buttons, such as the child window close button that is used in the multiple document interface, in pixels. /// </summary> SM_CYMENUSIZE = 55, /// <summary> /// The minimum height of a window, in pixels. /// </summary> SM_CYMIN = 29, /// <summary> /// The height of a minimized window, in pixels. /// </summary> SM_CYMINIMIZED = 58, /// <summary> /// The height of a grid cell for a minimized window, in pixels. Each minimized window fits into a rectangle this size when arranged. /// This value is always greater than or equal to SM_CYMINIMIZED. /// </summary> SM_CYMINSPACING = 48, /// <summary> /// The minimum tracking height of a window, in pixels. The user cannot drag the window frame to a size smaller than these dimensions. /// A window can override this value by processing the WM_GETMINMAXINFO message. /// </summary> SM_CYMINTRACK = 35, /// <summary> /// The height of the screen of the primary display monitor, in pixels. This is the same value obtained by calling /// GetDeviceCaps as follows: GetDeviceCaps( hdcPrimaryMonitor, VERTRES). /// </summary> SM_CYSCREEN = 1, /// <summary> /// The height of a button in a window caption or title bar, in pixels. /// </summary> SM_CYSIZE = 31, /// <summary> /// The thickness of the sizing border around the perimeter of a window that can be resized, in pixels. /// SM_CXSIZEFRAME is the width of the horizontal border, and SM_CYSIZEFRAME is the height of the vertical border. /// This value is the same as SM_CYFRAME. /// </summary> SM_CYSIZEFRAME = 33, /// <summary> /// The height of a small caption, in pixels. /// </summary> SM_CYSMCAPTION = 51, /// <summary> /// The recommended height of a small icon, in pixels. Small icons typically appear in window captions and in small icon view. /// </summary> SM_CYSMICON = 50, /// <summary> /// The height of small caption buttons, in pixels. /// </summary> SM_CYSMSIZE = 53, /// <summary> /// The height of the virtual screen, in pixels. The virtual screen is the bounding rectangle of all display monitors. /// The SM_YVIRTUALSCREEN metric is the coordinates for the top of the virtual screen. /// </summary> SM_CYVIRTUALSCREEN = 79, /// <summary> /// The height of the arrow bitmap on a vertical scroll bar, in pixels. /// </summary> SM_CYVSCROLL = 20, /// <summary> /// The height of the thumb box in a vertical scroll bar, in pixels. /// </summary> SM_CYVTHUMB = 9, /// <summary> /// Nonzero if User32.dll supports DBCS; otherwise, 0. /// </summary> SM_DBCSENABLED = 42, /// <summary> /// Nonzero if the debug version of User.exe is installed; otherwise, 0. /// </summary> SM_DEBUG = 22, /// <summary> /// Nonzero if the current operating system is Windows 7 or Windows Server 2008 R2 and the Tablet PC Input /// service is started; otherwise, 0. The return value is a bitmask that specifies the type of digitizer input supported by the device. /// For more information, see Remarks. /// Windows Server 2008, Windows Vista, and Windows XP/2000: This value is not supported. /// </summary> SM_DIGITIZER = 94, /// <summary> /// Nonzero if Input Method Manager/Input Method Editor features are enabled; otherwise, 0. /// SM_IMMENABLED indicates whether the system is ready to use a Unicode-based IME on a Unicode application. /// To ensure that a language-dependent IME works, check SM_DBCSENABLED and the system ANSI code page. /// Otherwise the ANSI-to-Unicode conversion may not be performed correctly, or some components like fonts /// or registry settings may not be present. /// </summary> SM_IMMENABLED = 82, /// <summary> /// Nonzero if there are digitizers in the system; otherwise, 0. SM_MAXIMUMTOUCHES returns the aggregate maximum of the /// maximum number of contacts supported by every digitizer in the system. If the system has only single-touch digitizers, /// the return value is 1. If the system has multi-touch digitizers, the return value is the number of simultaneous contacts /// the hardware can provide. Windows Server 2008, Windows Vista, and Windows XP/2000: This value is not supported. /// </summary> SM_MAXIMUMTOUCHES = 95, /// <summary> /// Nonzero if the current operating system is the Windows XP, Media Center Edition, 0 if not. /// </summary> SM_MEDIACENTER = 87, /// <summary> /// Nonzero if drop-down menus are right-aligned with the corresponding menu-bar item; 0 if the menus are left-aligned. /// </summary> SM_MENUDROPALIGNMENT = 40, /// <summary> /// Nonzero if the system is enabled for Hebrew and Arabic languages, 0 if not. /// </summary> SM_MIDEASTENABLED = 74, /// <summary> /// Nonzero if a mouse is installed; otherwise, 0. This value is rarely zero, because of support for virtual mice and because /// some systems detect the presence of the port instead of the presence of a mouse. /// </summary> SM_MOUSEPRESENT = 19, /// <summary> /// Nonzero if a mouse with a horizontal scroll wheel is installed; otherwise 0. /// </summary> SM_MOUSEHORIZONTALWHEELPRESENT = 91, /// <summary> /// Nonzero if a mouse with a vertical scroll wheel is installed; otherwise 0. /// </summary> SM_MOUSEWHEELPRESENT = 75, /// <summary> /// The least significant bit is set if a network is present; otherwise, it is cleared. The other bits are reserved for future use. /// </summary> SM_NETWORK = 63, /// <summary> /// Nonzero if the Microsoft Windows for Pen computing extensions are installed; zero otherwise. /// </summary> SM_PENWINDOWS = 41, /// <summary> /// This system metric is used in a Terminal Services environment to determine if the current Terminal Server session is /// being remotely controlled. Its value is nonzero if the current session is remotely controlled; otherwise, 0. /// You can use terminal services management tools such as Terminal Services Manager (tsadmin.msc) and shadow.exe to /// control a remote session. When a session is being remotely controlled, another user can view the contents of that session /// and potentially interact with it. /// </summary> SM_REMOTECONTROL = 0x2001, /// <summary> /// This system metric is used in a Terminal Services environment. If the calling process is associated with a Terminal Services /// client session, the return value is nonzero. If the calling process is associated with the Terminal Services console session, /// the return value is 0. /// Windows Server 2003 and Windows XP: The console session is not necessarily the physical console. /// For more information, seeWTSGetActiveConsoleSessionId. /// </summary> SM_REMOTESESSION = 0x1000, /// <summary> /// Nonzero if all the display monitors have the same color format, otherwise, 0. Two displays can have the same bit depth, /// but different color formats. For example, the red, green, and blue pixels can be encoded with different numbers of bits, /// or those bits can be located in different places in a pixel color value. /// </summary> SM_SAMEDISPLAYFORMAT = 81, /// <summary> /// This system metric should be ignored; it always returns 0. /// </summary> SM_SECURE = 44, /// <summary> /// The build number if the system is Windows Server 2003 R2; otherwise, 0. /// </summary> SM_SERVERR2 = 89, /// <summary> /// Nonzero if the user requires an application to present information visually in situations where it would otherwise present /// the information only in audible form; otherwise, 0. /// </summary> SM_SHOWSOUNDS = 70, /// <summary> /// Nonzero if the current session is shutting down; otherwise, 0. Windows 2000: This value is not supported. /// </summary> SM_SHUTTINGDOWN = 0x2000, /// <summary> /// Nonzero if the computer has a low-end (slow) processor; otherwise, 0. /// </summary> SM_SLOWMACHINE = 73, /// <summary> /// Nonzero if the current operating system is Windows 7 Starter Edition, Windows Vista Starter, or Windows XP Starter Edition; otherwise, 0. /// </summary> SM_STARTER = 88, /// <summary> /// Nonzero if the meanings of the left and right mouse buttons are swapped; otherwise, 0. /// </summary> SM_SWAPBUTTON = 23, /// <summary> /// Nonzero if the current operating system is the Windows XP Tablet PC edition or if the current operating system is Windows Vista /// or Windows 7 and the Tablet PC Input service is started; otherwise, 0. The SM_DIGITIZER setting indicates the type of digitizer /// input supported by a device running Windows 7 or Windows Server 2008 R2. For more information, see Remarks. /// </summary> SM_TABLETPC = 86, /// <summary> /// The coordinates for the left side of the virtual screen. The virtual screen is the bounding rectangle of all display monitors. /// The SM_CXVIRTUALSCREEN metric is the width of the virtual screen. /// </summary> SM_XVIRTUALSCREEN = 76, /// <summary> /// The coordinates for the top of the virtual screen. The virtual screen is the bounding rectangle of all display monitors. /// The SM_CYVIRTUALSCREEN metric is the height of the virtual screen. /// </summary> SM_YVIRTUALSCREEN = 77, } !!!!C# Definition (without summary): public enum SystemMetric { SM_CXSCREEN = 0, // 0x00 SM_CYSCREEN = 1, // 0x01 SM_CXVSCROLL = 2, // 0x02 SM_CYHSCROLL = 3, // 0x03 SM_CYCAPTION = 4, // 0x04 SM_CXBORDER = 5, // 0x05 SM_CYBORDER = 6, // 0x06 SM_CXDLGFRAME = 7, // 0x07 SM_CXFIXEDFRAME = 7, // 0x07 SM_CYDLGFRAME = 8, // 0x08 SM_CYFIXEDFRAME = 8, // 0x08 SM_CYVTHUMB = 9, // 0x09 SM_CXHTHUMB = 10, // 0x0A SM_CXICON = 11, // 0x0B SM_CYICON = 12, // 0x0C SM_CXCURSOR = 13, // 0x0D SM_CYCURSOR = 14, // 0x0E SM_CYMENU = 15, // 0x0F SM_CXFULLSCREEN = 16, // 0x10 SM_CYFULLSCREEN = 17, // 0x11 SM_CYKANJIWINDOW = 18, // 0x12 SM_MOUSEPRESENT = 19, // 0x13 SM_CYVSCROLL = 20, // 0x14 SM_CXHSCROLL = 21, // 0x15 SM_DEBUG = 22, // 0x16 SM_SWAPBUTTON = 23, // 0x17 SM_CXMIN = 28, // 0x1C SM_CYMIN = 29, // 0x1D SM_CXSIZE = 30, // 0x1E SM_CYSIZE = 31, // 0x1F SM_CXSIZEFRAME = 32, // 0x20 SM_CXFRAME = 32, // 0x20 SM_CYSIZEFRAME = 33, // 0x21 SM_CYFRAME = 33, // 0x21 SM_CXMINTRACK = 34, // 0x22 SM_CYMINTRACK = 35, // 0x23 SM_CXDOUBLECLK = 36, // 0x24 SM_CYDOUBLECLK = 37, // 0x25 SM_CXICONSPACING = 38, // 0x26 SM_CYICONSPACING = 39, // 0x27 SM_MENUDROPALIGNMENT = 40, // 0x28 SM_PENWINDOWS = 41, // 0x29 SM_DBCSENABLED = 42, // 0x2A SM_CMOUSEBUTTONS = 43, // 0x2B SM_SECURE = 44, // 0x2C SM_CXEDGE = 45, // 0x2D SM_CYEDGE = 46, // 0x2E SM_CXMINSPACING = 47, // 0x2F SM_CYMINSPACING = 48, // 0x30 SM_CXSMICON = 49, // 0x31 SM_CYSMICON = 50, // 0x32 SM_CYSMCAPTION = 51, // 0x33 SM_CXSMSIZE = 52, // 0x34 SM_CYSMSIZE = 53, // 0x35 SM_CXMENUSIZE = 54, // 0x36 SM_CYMENUSIZE = 55, // 0x37 SM_ARRANGE = 56, // 0x38 SM_CXMINIMIZED = 57, // 0x39 SM_CYMINIMIZED = 58, // 0x3A SM_CXMAXTRACK = 59, // 0x3B SM_CYMAXTRACK = 60, // 0x3C SM_CXMAXIMIZED = 61, // 0x3D SM_CYMAXIMIZED = 62, // 0x3E SM_NETWORK = 63, // 0x3F SM_CLEANBOOT = 67, // 0x43 SM_CXDRAG = 68, // 0x44 SM_CYDRAG = 69, // 0x45 SM_SHOWSOUNDS = 70, // 0x46 SM_CXMENUCHECK = 71, // 0x47 SM_CYMENUCHECK = 72, // 0x48 SM_SLOWMACHINE = 73, // 0x49 SM_MIDEASTENABLED = 74, // 0x4A SM_MOUSEWHEELPRESENT = 75, // 0x4B SM_XVIRTUALSCREEN = 76, // 0x4C SM_YVIRTUALSCREEN = 77, // 0x4D SM_CXVIRTUALSCREEN = 78, // 0x4E SM_CYVIRTUALSCREEN = 79, // 0x4F SM_CMONITORS = 80, // 0x50 SM_SAMEDISPLAYFORMAT = 81, // 0x51 SM_IMMENABLED = 82, // 0x52 SM_CXFOCUSBORDER = 83, // 0x53 SM_CYFOCUSBORDER = 84, // 0x54 SM_TABLETPC = 86, // 0x56 SM_MEDIACENTER = 87, // 0x57 SM_STARTER = 88, // 0x58 SM_SERVERR2 = 89, // 0x59 SM_MOUSEHORIZONTALWHEELPRESENT = 91, // 0x5B SM_CXPADDEDBORDER = 92, // 0x5C SM_DIGITIZER = 94, // 0x5E SM_MAXIMUMTOUCHES = 95, // 0x5F SM_REMOTESESSION = 0x1000, // 0x1000 SM_SHUTTINGDOWN = 0x2000, // 0x2000 SM_REMOTECONTROL = 0x2001, // 0x2001 SM_CONVERTIBLESLATEMODE = 0x2003, SM_SYSTEMDOCKED = 0x2004, } !!!!VB Definition (bare): Public Enum SystemMetric As Integer SM_CXSCREEN = 0 SM_CYSCREEN = 1 SM_CXVSCROLL = 2 SM_CYHSCROLL = 3 SM_CYCAPTION = 4 SM_CXBORDER = 5 SM_CYBORDER = 6 SM_CXDLGFRAME = 7 SM_CYDLGFRAME = 8 SM_CYVTHUMB = 9 SM_CXHTHUMB = 10 SM_CXICON = 11 SM_CYICON = 12 SM_CXCURSOR = 13 SM_CYCURSOR = 14 SM_CYMENU = 15 SM_CXFULLSCREEN = 16 SM_CYFULLSCREEN = 17 SM_CYKANJIWINDOW = 18 SM_MOUSEPRESENT = 19 SM_CYVSCROLL = 20 SM_CXHSCROLL = 21 SM_DEBUG = 22 SM_SWAPBUTTON = 23 SM_RESERVED1 = 24 SM_RESERVED2 = 25 SM_RESERVED3 = 26 SM_RESERVED4 = 27 SM_CXMIN = 28 SM_CYMIN = 29 SM_CXSIZE = 30 SM_CYSIZE = 31 SM_CXFRAME = 32 SM_CYFRAME = 33 SM_CXMINTRACK = 34 SM_CYMINTRACK = 35 SM_CXDOUBLECLK = 36 SM_CYDOUBLECLK = 37 SM_CXICONSPACING = 38 SM_CYICONSPACING = 39 SM_MENUDROPALIGNMENT = 40 SM_PENWINDOWS = 41 SM_DBCSENABLED = 42 SM_CMOUSEBUTTONS = 43 '/*#if(WINVER >= 0x0400)*/ SM_CXFIXEDFRAME = SM_CXDLGFRAME '/* ;win40 name change */ SM_CYFIXEDFRAME = SM_CYDLGFRAME '/* ;win40 name change */ SM_CXSIZEFRAME = SM_CXFRAME '/* ;win40 name change */ SM_CYSIZEFRAME = SM_CYFRAME '/* ;win40 name change */ SM_SECURE = 44 SM_CXEDGE = 45 SM_CYEDGE = 46 SM_CXMINSPACING = 47 SM_CYMINSPACING = 48 SM_CXSMICON = 49 SM_CYSMICON = 50 SM_CYSMCAPTION = 51 SM_CXSMSIZE = 52 SM_CYSMSIZE = 53 SM_CXMENUSIZE = 54 SM_CYMENUSIZE = 55 SM_ARRANGE = 56 SM_CXMINIMIZED = 57 SM_CYMINIMIZED = 58 SM_CXMAXTRACK = 59 SM_CYMAXTRACK = 60 SM_CXMAXIMIZED = 61 SM_CYMAXIMIZED = 62 SM_NETWORK = 63 SM_CLEANBOOT = 67 SM_CXDRAG = 68 SM_CYDRAG = 69 '/*#endif /* WINVER >= 0x0400 */ SM_SHOWSOUNDS = 70 '/*#if(WINVER >= 0x0400)*/ SM_CXMENUCHECK = 71 '/* Use instead of GetMenuCheckMarkDimensions()! */ SM_CYMENUCHECK = 72 SM_SLOWMACHINE = 73 SM_MIDEASTENABLED = 74 '/*#endif /* WINVER >= 0x0400 */ '/*#if (WINVER >= 0x0500) || (_WIN32_WINNT >= 0x0400)*/ SM_MOUSEWHEELPRESENT = 75 '/*#endif*/ '/*#if(WINVER >= 0x0500)*/ SM_XVIRTUALSCREEN = 76 SM_YVIRTUALSCREEN = 77 SM_CXVIRTUALSCREEN = 78 SM_CYVIRTUALSCREEN = 79 SM_CMONITORS = 80 SM_SAMEDISPLAYFORMAT = 81 '/*#endif /* WINVER >= 0x0500 */ '/*#if(_WIN32_WINNT >= 0x0500)*/ SM_IMMENABLED = 82 '/*#endif /* _WIN32_WINNT >= 0x0500 */ '/*#if(_WIN32_WINNT >= 0x0501)*/ SM_CXFOCUSBORDER = 83 SM_CYFOCUSBORDER = 84 '/*#endif /* _WIN32_WINNT >= 0x0501 */ '/*#if(_WIN32_WINNT >= 0x0501)*/ SM_TABLETPC = 86 SM_MEDIACENTER = 87 '/*#endif /* _WIN32_WINNT >= 0x0501 */ '/*#if (WINVER < 0x0500) && (!defined(_WIN32_WINNT) || (_WIN32_WINNT < 0x0400))*/ SM_CMETRICS_OTHER = 76 '/*#elif WINVER == 0x500*/ SM_CMETRICS_2000 = 83 '/*#else*/ SM_CMETRICS_NT = 88 '/*#endif*/ '/*#if(WINVER >= 0x0500)*/ SM_REMOTESESSION = &h1000 '/*#if(_WIN32_WINNT >= 0x0501)*/ SM_SHUTTINGDOWN = &h2000 '/*#endif /* _WIN32_WINNT >= 0x0501 */ '/*#if(WINVER >= 0x0501)*/ SM_REMOTECONTROL = &h2001 '/*#endif /* WINVER >= 0x0501 */ '/*#endif /* WINVER >= 0x0500 */ End Enum !!!!VB Definition (with summary): Public Enum SystemMetric As Integer ''' <summary> ''' Width of the screen of the primary display monitor in pixels. This is the same values obtained by calling GetDeviceCaps as follows: GetDeviceCaps( hdcPrimaryMonitor HORZRES). ''' </summary> SM_CXSCREEN = 0 ''' <summary> ''' Height of the screen of the primary display monitor in pixels. This is the same values obtained by calling GetDeviceCaps as follows: GetDeviceCaps( hdcPrimaryMonitor VERTRES). ''' </summary> SM_CYSCREEN = 1 ''' <summary> ''' Height of the arrow bitmap on a vertical scroll bar, in pixels. ''' </summary> SM_CYVSCROLL = 20 ''' <summary> ''' Width of a vertical scroll bar, in pixels. ''' </summary> SM_CXVSCROLL = 2 ''' <summary> ''' Height of a caption area in pixels. ''' </summary> SM_CYCAPTION = 4 ''' <summary> ''' Width of a window border in pixels. This is equivalent to the SM_CXEDGE value for windows with the 3-D look. ''' </summary> SM_CXBORDER = 5 ''' <summary> ''' Height of a window border in pixels. This is equivalent to the SM_CYEDGE value for windows with the 3-D look. ''' </summary> SM_CYBORDER = 6 ''' <summary> ''' Thickness of the frame around the perimeter of a window that has a caption but is not sizable in pixels. SM_CXFIXEDFRAME is the height of the horizontal border and SM_CYFIXEDFRAME is the width of the vertical border. ''' </summary> SM_CXDLGFRAME = 7 ''' <summary> ''' Thickness of the frame around the perimeter of a window that has a caption but is not sizable in pixels. SM_CXFIXEDFRAME is the height of the horizontal border and SM_CYFIXEDFRAME is the width of the vertical border. ''' </summary> SM_CYDLGFRAME = 8 ''' <summary> ''' Height of the thumb box in a vertical scroll bar in pixels ''' </summary> SM_CYVTHUMB = 9 ''' <summary> ''' Width of the thumb box in a horizontal scroll bar in pixels. ''' </summary> SM_CXHTHUMB = 10 ''' <summary> ''' Default width of an icon in pixels. The LoadIcon function can load only icons with the dimensions specified by SM_CXICON and SM_CYICON ''' </summary> SM_CXICON = 11 ''' <summary> ''' Default height of an icon in pixels. The LoadIcon function can load only icons with the dimensions SM_CXICON and SM_CYICON. ''' </summary> SM_CYICON = 12 ''' <summary> ''' Width of a cursor in pixels. The system cannot create cursors of other sizes. ''' </summary> SM_CXCURSOR = 13 ''' <summary> ''' Height of a cursor in pixels. The system cannot create cursors of other sizes. ''' </summary> SM_CYCURSOR = 14 ''' <summary> ''' Height of a single-line menu bar in pixels. ''' </summary> SM_CYMENU = 15 ''' <summary> ''' Width of the client area for a full-screen window on the primary display monitor in pixels. To get the coordinates of the portion of the screen not obscured by the system taskbar or by application desktop toolbars call the SystemParametersInfo function with the SPI_GETWORKAREA value. ''' </summary> SM_CXFULLSCREEN = 16 ''' <summary> ''' Height of the client area for a full-screen window on the primary display monitor in pixels. To get the coordinates of the portion of the screen not obscured by the system taskbar or by application desktop toolbars call the SystemParametersInfo function with the SPI_GETWORKAREA value. ''' </summary> SM_CYFULLSCREEN = 17 ''' <summary> ''' For double byte character set versions of the system this is the height of the Kanji window at the bottom of the screen in pixels ''' </summary> SM_CYKANJIWINDOW = 18 ''' <summary> ''' Nonzero if a mouse with a wheel is installed; zero otherwise ''' </summary> SM_MOUSEWHEELPRESENT = 75 ''' <summary> ''' Height of a horizontal scroll bar, in pixels. ''' </summary> SM_CYHSCROLL = 3 ''' <summary> ''' Width of the arrow bitmap on a horizontal scroll bar in pixels. ''' </summary> SM_CXHSCROLL = 21 ''' <summary> ''' Nonzero if the debug version of User.exe is installed; zero otherwise. ''' </summary> SM_DEBUG = 22 ''' <summary> ''' Nonzero if the left and right mouse buttons are reversed; zero otherwise. ''' </summary> SM_SWAPBUTTON = 23 ''' <summary> ''' Reserved for future use ''' </summary> SM_RESERVED1 = 24 ''' <summary> ''' Reserved for future use ''' </summary> SM_RESERVED2 = 25 ''' <summary> ''' Reserved for future use ''' </summary> SM_RESERVED3 = 26 ''' <summary> ''' Reserved for future use ''' </summary> SM_RESERVED4 = 27 ''' <summary> ''' Minimum width of a window in pixels. ''' </summary> SM_CXMIN = 28 ''' <summary> ''' Minimum height of a window in pixels. ''' </summary> SM_CYMIN = 29 ''' <summary> ''' Width of a button in a window's caption or title bar in pixels. ''' </summary> SM_CXSIZE = 30 ''' <summary> ''' Height of a button in a window's caption or title bar in pixels. ''' </summary> SM_CYSIZE = 31 ''' <summary> ''' Thickness of the sizing border around the perimeter of a window that can be resized in pixels. SM_CXSIZEFRAME is the width of the horizontal border and SM_CYSIZEFRAME is the height of the vertical border. ''' </summary> SM_CXFRAME = 32 ''' <summary> ''' Thickness of the sizing border around the perimeter of a window that can be resized in pixels. SM_CXSIZEFRAME is the width of the horizontal border and SM_CYSIZEFRAME is the height of the vertical border. ''' </summary> SM_CYFRAME = 33 ''' <summary> ''' Minimum tracking width of a window in pixels. The user cannot drag the window frame to a size smaller than these dimensions. A window can override this value by processing the WM_GETMINMAXINFO message. ''' </summary> SM_CXMINTRACK = 34 ''' <summary> ''' Minimum tracking height of a window in pixels. The user cannot drag the window frame to a size smaller than these dimensions. A window can override this value by processing the WM_GETMINMAXINFO message ''' </summary> SM_CYMINTRACK = 35 ''' <summary> ''' Width of the rectangle around the location of a first click in a double-click sequence in pixels. The second click must occur within the rectangle defined by SM_CXDOUBLECLK and SM_CYDOUBLECLK for the system to consider the two clicks a double-click ''' </summary> SM_CXDOUBLECLK = 36 ''' <summary> ''' Height of the rectangle around the location of a first click in a double-click sequence in pixels. The second click must occur within the rectangle defined by SM_CXDOUBLECLK and SM_CYDOUBLECLK for the system to consider the two clicks a double-click. (The two clicks must also occur within a specified time.) ''' </summary> SM_CYDOUBLECLK = 37 ''' <summary> ''' Width of a grid cell for items in large icon view in pixels. Each item fits into a rectangle of size SM_CXICONSPACING by SM_CYICONSPACING when arranged. This value is always greater than or equal to SM_CXICON ''' </summary> SM_CXICONSPACING = 38 ''' <summary> ''' Height of a grid cell for items in large icon view in pixels. Each item fits into a rectangle of size SM_CXICONSPACING by SM_CYICONSPACING when arranged. This value is always greater than or equal to SM_CYICON. ''' </summary> SM_CYICONSPACING = 39 ''' <summary> ''' Nonzero if drop-down menus are right-aligned with the corresponding menu-bar item; zero if the menus are left-aligned. ''' </summary> SM_MENUDROPALIGNMENT = 40 ''' <summary> ''' Nonzero if the Microsoft Windows for Pen computing extensions are installed; zero otherwise. ''' </summary> SM_PENWINDOWS = 41 ''' <summary> ''' Nonzero if User32.dll supports DBCS; zero otherwise. (WinMe/95/98): Unicode ''' </summary> SM_DBCSENABLED = 42 ''' <summary> ''' Number of buttons on mouse or zero if no mouse is installed. ''' </summary> SM_CMOUSEBUTTONS = 43 ''' <summary> ''' Identical Values Changed After Windows NT 4.0 ''' </summary> SM_CXFIXEDFRAME = SM_CXDLGFRAME ''' <summary> ''' Identical Values Changed After Windows NT 4.0 ''' </summary> SM_CYFIXEDFRAME = SM_CYDLGFRAME ''' <summary> ''' Identical Values Changed After Windows NT 4.0 ''' </summary> SM_CXSIZEFRAME = SM_CXFRAME ''' <summary> ''' Identical Values Changed After Windows NT 4.0 ''' </summary> SM_CYSIZEFRAME = SM_CYFRAME ''' <summary> ''' Nonzero if security is present; zero otherwise. ''' </summary> SM_SECURE = 44 ''' <summary> ''' Width of a 3-D border in pixels. This is the 3-D counterpart of SM_CXBORDER ''' </summary> SM_CXEDGE = 45 ''' <summary> ''' Height of a 3-D border in pixels. This is the 3-D counterpart of SM_CYBORDER ''' </summary> SM_CYEDGE = 46 ''' <summary> ''' Width of a grid cell for a minimized window in pixels. Each minimized window fits into a rectangle this size when arranged. This value is always greater than or equal to SM_CXMINIMIZED. ''' </summary> SM_CXMINSPACING = 47 ''' <summary> ''' Height of a grid cell for a minimized window in pixels. Each minimized window fits into a rectangle this size when arranged. This value is always greater than or equal to SM_CYMINIMIZED. ''' </summary> SM_CYMINSPACING = 48 ''' <summary> ''' Recommended width of a small icon in pixels. Small icons typically appear in window captions and in small icon view ''' </summary> SM_CXSMICON = 49 ''' <summary> ''' Recommended height of a small icon in pixels. Small icons typically appear in window captions and in small icon view. ''' </summary> SM_CYSMICON = 50 ''' <summary> ''' Height of a small caption in pixels ''' </summary> SM_CYSMCAPTION = 51 ''' <summary> ''' Width of small caption buttons in pixels. ''' </summary> SM_CXSMSIZE = 52 ''' <summary> ''' Height of small caption buttons in pixels. ''' </summary> SM_CYSMSIZE = 53 ''' <summary> ''' Width of menu bar buttons such as the child window close button used in the multiple document interface in pixels. ''' </summary> SM_CXMENUSIZE = 54 ''' <summary> ''' Height of menu bar buttons such as the child window close button used in the multiple document interface in pixels. ''' </summary> SM_CYMENUSIZE = 55 ''' <summary> ''' Flags specifying how the system arranged minimized windows ''' </summary> SM_ARRANGE = 56 ''' <summary> ''' Width of a minimized window in pixels. ''' </summary> SM_CXMINIMIZED = 57 ''' <summary> ''' Height of a minimized window in pixels. ''' </summary> SM_CYMINIMIZED = 58 ''' <summary> ''' Default maximum width of a window that has a caption and sizing borders in pixels. This metric refers to the entire desktop. The user cannot drag the window frame to a size larger than these dimensions. A window can override this value by processing the WM_GETMINMAXINFO message. ''' </summary> SM_CXMAXTRACK = 59 ''' <summary> ''' Default maximum height of a window that has a caption and sizing borders in pixels. This metric refers to the entire desktop. The user cannot drag the window frame to a size larger than these dimensions. A window can override this value by processing the WM_GETMINMAXINFO message. ''' </summary> SM_CYMAXTRACK = 60 ''' <summary> ''' Default width in pixels of a maximized top-level window on the primary display monitor. ''' </summary> SM_CXMAXIMIZED = 61 ''' <summary> ''' Default height in pixels of a maximized top-level window on the primary display monitor. ''' </summary> SM_CYMAXIMIZED = 62 ''' <summary> ''' Least significant bit is set if a network is present; otherwise it is cleared. The other bits are reserved for future use ''' </summary> SM_NETWORK = 63 ''' <summary> ''' Value that specifies how the system was started: 0-normal 1-failsafe 2-failsafe /w net ''' </summary> SM_CLEANBOOT = 67 ''' <summary> ''' Width of a rectangle centered on a drag point to allow for limited movement of the mouse pointer before a drag operation begins in pixels. ''' </summary> SM_CXDRAG = 68 ''' <summary> ''' Height of a rectangle centered on a drag point to allow for limited movement of the mouse pointer before a drag operation begins. This value is in pixels. It allows the user to click and release the mouse button easily without unintentionally starting a drag operation. ''' </summary> SM_CYDRAG = 69 ''' <summary> ''' Nonzero if the user requires an application to present information visually in situations where it would otherwise present the information only in audible form; zero otherwise. ''' </summary> SM_SHOWSOUNDS = 70 ''' <summary> ''' Width of the default menu check-mark bitmap in pixels. ''' </summary> SM_CXMENUCHECK = 71 ''' <summary> ''' Height of the default menu check-mark bitmap in pixels. ''' </summary> SM_CYMENUCHECK = 72 ''' <summary> ''' Nonzero if the computer has a low-end (slow) processor; zero otherwise ''' </summary> SM_SLOWMACHINE = 73 ''' <summary> ''' Nonzero if the system is enabled for Hebrew and Arabic languages zero if not. ''' </summary> SM_MIDEASTENABLED = 74 ''' <summary> ''' Nonzero if a mouse is installed; zero otherwise. This value is rarely zero because of support for virtual mice and because some systems detect the presence of the port instead of the presence of a mouse. ''' </summary> SM_MOUSEPRESENT = 19 ''' <summary> ''' Windows 2000 (v5.0+) Coordinate of the top of the virtual screen ''' </summary> SM_XVIRTUALSCREEN = 76 ''' <summary> ''' Windows 2000 (v5.0+) Coordinate of the left of the virtual screen ''' </summary> SM_YVIRTUALSCREEN = 77 ''' <summary> ''' Windows 2000 (v5.0+) Width of the virtual screen ''' </summary> SM_CXVIRTUALSCREEN = 78 ''' <summary> ''' Windows 2000 (v5.0+) Height of the virtual screen ''' </summary> SM_CYVIRTUALSCREEN = 79 ''' <summary> ''' Number of display monitors on the desktop ''' </summary> SM_CMONITORS = 80 ''' <summary> ''' Windows XP (v5.1+) Nonzero if all the display monitors have the same color format zero otherwise. Note that two displays can have the same bit depth but different color formats. For example the red green and blue pixels can be encoded with different numbers of bits or those bits can be located in different places in a pixel's color value. ''' </summary> SM_SAMEDISPLAYFORMAT = 81 ''' <summary> ''' Windows XP (v5.1+) Nonzero if Input Method Manager/Input Method Editor features are enabled; zero otherwise ''' </summary> SM_IMMENABLED = 82 ''' <summary> ''' Windows XP (v5.1+) Width of the left and right edges of the focus rectangle drawn by DrawFocusRect. This value is in pixels. ''' </summary> SM_CXFOCUSBORDER = 83 ''' <summary> ''' Windows XP (v5.1+) Height of the top and bottom edges of the focus rectangle drawn by DrawFocusRect. This value is in pixels. ''' </summary> SM_CYFOCUSBORDER = 84 ''' <summary> ''' Nonzero if the current operating system is the Windows XP Tablet PC edition zero if not. ''' </summary> SM_TABLETPC = 86 ''' <summary> ''' Nonzero if the current operating system is the Windows XP Media Center Edition zero if not. ''' </summary> SM_MEDIACENTER = 87 ''' <summary> ''' Metrics Other ''' </summary> SM_CMETRICS_OTHER = 76 ''' <summary> ''' Metrics Windows 2000 ''' </summary> SM_CMETRICS_2000 = 83 ''' <summary> ''' Metrics Windows NT ''' </summary> SM_CMETRICS_NT = 88 ''' <summary> ''' Windows XP (v5.1+) This system metric is used in a Terminal Services environment. If the calling process is associated with a Terminal Services client session the return value is nonzero. If the calling process is associated with the Terminal Server console session the return value is zero. The console session is not necessarily the physical console - see WTSGetActiveConsoleSessionId for more information. ''' </summary> SM_REMOTESESSION = &H1000 ''' <summary> ''' Windows XP (v5.1+) Nonzero if the current session is shutting down; zero otherwise ''' </summary> SM_SHUTTINGDOWN = &H2000 ''' <summary> ''' Windows XP (v5.1+) This system metric is used in a Terminal Services environment. Its value is nonzero if the current session is remotely controlled; zero otherwise ''' </summary> SM_REMOTECONTROL = &H2001 End Enum !!!!Notes: This set of constants has been replaced in .NET (2002 - 2003) by the [System.Windows.Forms.SystemInformation] class. This contains all the information about the system metrics. This summary information was obtained from MSDN 2006, and integrated by Gabriel T. Sharp (of AI Productions) ai_prodcutions@verizon.net Documentation: SystemMetric@msdn on MSDN .NET SystemInformation@link on MSDN
Edit Enums.SystemMetric
You do not have permission to change this page. If you feel this is in error, please send feedback with the contact link on the main page.