我有同样的问题,尽管在脚本。
我已经找到这个值;
https://msdn.microsoft.com/en-us/library/aa394239(v=vs.85).aspx
Win32_OperatingSystem
ProductType
Data type: uint32
Access type: Read-only
Additional system information.
Work Station (1)
Domain Controller (2)
Server (3)
我测试了这以下的操作系统版本:
- 的Windows XP Professional SP3
- Windows 7企业版
- 的Windows 8.1专业版
- 的Windows,我使用WMI查询它8.1企业版
- Windows 10 Pro 10.0.16299
- 的Windows Server 2003 R2标准版
- 的Windows Server 2003 R2标准版64位
- 的Windows Server 2008 R2标准
- 的Windows Server 2012数据中心
- 的Windows Server 2012 R2数据中心
查找我的例子批下面的文件。
卢卡斯。
for /f "tokens=2 delims==" %%a in ('wmic.exe os get producttype /value') do (
set PRODUCT_TYPE=%%a
)
if %PRODUCT_TYPE%==1 set PRODUCT_TYPE=Workstation
if %PRODUCT_TYPE%==2 set PRODUCT_TYPE=DomainController
if %PRODUCT_TYPE%==3 set PRODUCT_TYPE=Server
echo %COMPUTERNAME%: %PRODUCT_TYPE%
您可以轻松地做到这一点在C#:
using Microsoft.Management.Infrastructure;
...
string Namespace = @"root\cimv2";
string className = "Win32_OperatingSystem";
CimInstance operatingSystem = new CimInstance(className, Namespace);
如果尼克给了你用来获取所需信息的答案,那么你应该接受那个答案而不是你自己的答案(这里的信息应该在你的问题中编辑)。 – 2010-08-30 07:02:09
尼克没有提供IsOS解决方案。因此,其他读者将我自己的答案标记为已接受的答案似乎更有用。我已经把尼克加入了票数。 – 2010-08-31 09:19:35
这是一个很好的答案感谢您的帮助。另外,当我必须调用外部方法时,我总是使用非常好的网站:http://www.pinvoke.net/ 以下是IsOS方法:http://www.pinvoke.net/default.aspx/shlwapi/IsOS .html – Major 2017-03-27 13:54:56