@msdn=http://search.microsoft.com/search/results.aspx?qu=$$$ @pinvoke=http://pinvoke.net/$$$.htm Summary: Checks for specified operating systems and operating system features. !!!!C# Signature: [DllImport("shlwapi.dll", SetLastError=true, EntryPoint="#437")] [return: MarshalAs(UnmanagedType.Bool)] static extern bool IsOS(OSType dwOS); !!!!VB.NET Signature: <DllImport("shlwapi.dll", SetLastError:=True, EntryPoint:="#437")> _ Private Shared Function IsOS(UInt32 dwOS) As _ <MarshalAs(UnmanagedType.Bool)> _ Boolean End Function !!!!VB Signature: Declare Function IsOS Lib "shlwapi.dll" (TODO dwOS) As TODO !!!!User-Defined Types: /// <summary> /// Options for IsOS() function /// </summary> public enum OSType : uint { /// <summary> /// The program is running on one of the following versions of Windows: /// * Windows 95 /// * Windows 98 /// * Windows Me /// Equivalent to PlatformID.Win32Windows. Note that none of those systems /// are supported at this time. IsOS(Windows) returns false on all supported /// systems. /// </summary> Windows = 0, /// <summary> /// Always returns true /// </summary> NT = 1, /// <summary> /// Always returns false /// </summary> Win95OrGreater = 2, /// <summary> /// Always returns false /// </summary> NT4OrGreater = 3, /// <summary> /// Always returns false /// </summary> Win98OrGreater = 5, /// <summary> /// Always returns false /// </summary> Win98Gold = 6, /// <summary> /// The program is running on Windows 2000 or one of its successors. /// </summary> Win2000OrGreater = 7, /// <summary> /// Do not use; use Professional. /// </summary> Win2000Pro = 8, /// <summary> /// Do not use; use Server. /// </summary> Win2000Server = 9, /// <summary> /// Do not use; use AdvancedServer. /// </summary> Win2000AdvancedServer = 10, /// <summary> /// Do not use; use DataCenter. /// </summary> Win2000DataCenter = 11, /// <summary> /// The program is running on Windows 2000 Terminal Server in either Remote /// Administration mode or Application Server mode, or Windows Server 2003 (or /// one of its successors) in Terminal Server mode or Remote Desktop for /// Administration mode. Consider using a more specific value such as /// TerminalServer, TerminalRemoteAdmin, or PersonalTerminalServer. /// </summary> Win2000Terminal = 12, /// <summary> /// The program is running on Windows Embedded, any version. Equivalent to /// SuiteMask.EmbeddedNT. /// </summary> Embedded = 13, /// <summary> /// The program is running as a Terminal Server client. Equivalent to /// GetSystemMetrics(SM_REMOTESESSION). /// </summary> TerminalClient = 14, /// <summary> /// The program is running on Windows 2000 Terminal Server in the Remote /// Administration mode or Windows Server 2003 (or one of its successors) in /// the Remote Desktop for Administration mode (these are the default /// installation modes). This is equivalent to SuiteMask.Terminal && /// SuiteMask.SingleUserTerminalServer. /// </summary> TerminalRemoteAdmin = 15, /// <summary> /// Always returns false. /// </summary> Win95Gold = 16, /// <summary> /// Always returns false. /// </summary> MEOrGreater = 17, /// <summary> /// Always returns false. /// </summary> XPOrGreater = 18, /// <summary> /// Always returns false. /// </summary> Home = 19, /// <summary> /// The program is running on Windows NT Workstation or Windows 2000 (or one of /// its successors) Professional. Equivalent to PlatformID.Win32NT && /// ProductType.NTWorkstation. /// </summary> Professional = 20, /// <summary> /// The program is running on Windows Datacenter Server or Windows Server /// Datacenter Edition, any version. Equivalent to (ProductType.NTServer || /// ProductType.NTDomainController) && SuiteMask.DataCenter. /// </summary> DataCenter = 21, /// <summary> /// The program is running on Windows Advanced Server or Windows Server /// Enterprise Edition, any version. Equivalent to (ProductType.NTServer || /// ProductType.NTDomainController) && SuiteMask.Enterprise && /// !SuiteMask.DataCenter. /// </summary> AdvancedServer = 22, /// <summary> /// The program is running on Windows Server (Standard) or Windows Server /// Standard Edition, any version. This value will not return true for /// SuiteMask.DataCenter, SuiteMask.Enterprise, SuiteMask.SmallBusiness, or /// SuiteMask.SmallBusinessRestricted. /// </summary> Server = 23, /// <summary> /// The program is running on Windows 2000 Terminal Server in Application /// Server mode, or on Windows Server 2003 (or one of its successors) in /// Terminal Server mode. This is equivalent to SuiteMask.Terminal && /// SuiteMask.SingleUserTerminalServer. /// </summary> TerminalServer = 24, /// <summary> /// The program is running on Windows XP (or one of its successors), Home /// Edition or Professional. This is equivalent to /// SuiteMask.SingleUserTerminalServer && !SuiteMask.Terminal. /// </summary> PersonalTerminalServer = 25, /// <summary> /// Fast user switching is enabled. /// </summary> FastUserSwitching = 26, /// <summary> /// Always returns false. /// </summary> WelcomeLogonUI = 27, /// <summary> /// The computer is joined to a domain. /// </summary> DomainMember = 28, /// <summary> /// The program is running on any Windows Server product. Equivalent to /// ProductType.NTServer || ProductType.NTDomainController. /// </summary> AnyServer = 29, /// <summary> /// The program is a 32-bit program running on 64-bit Windows. /// </summary> WOW6432 = 30, /// <summary> /// Always returns false. /// </summary> WebServer = 31, /// <summary> /// The program is running on Microsoft Small Business Server with restrictive /// client license in force. Equivalent to SuiteMask.SmallBusinessRestricted. /// </summary> SmallBusinessServer = 32, /// <summary> /// The program is running on Windows XP Tablet PC Edition, or one of its /// successors. /// </summary> TabletPC = 33, /// <summary> /// The user should be presented with administrator UI. It is possible to have /// server administrative UI on a non-server machine. This value informs the /// application that an administrator's profile has roamed to a non-server, and /// UI should be appropriate to an administrator. Otherwise, the user is shown /// a mix of administrator and nonadministrator settings. /// </summary> ServerAdminUI = 34, /// <summary> /// The program is running on Windows XP Media Center Edition, or one of its /// successors. Equivalent to GetSystemMetrics(SM_MEDIACENTER). /// </summary> MediaCenter = 35, /// <summary> /// The program is running on Windows Appliance Server. /// </summary> Appliance = 36, } !!!!Alternative Managed API: Do you know one? Please contribute it! !!!!Notes: None. !!!!Tips & Tricks: Please add some! !!!!Sample Code: Please add some! Documentation: IsOS@msdn on MSDN
Edit shlwapi.isos
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.