c# - 查询机器规范

标签 c# wmi

有哪些方法可以通过编程接口(interface)查询本地机器的规范(包括 CPU 规范、操作系统版本、显卡规范和驱动程序等)?我们正在用 C# 编写一个简单的应用程序来测试我们的主要应用程序的兼容性,并希望它转储一些系统指标,但我似乎无法找到从哪里开始,使用什么接口(interface),库,任何东西。

我尝试了各种搜索,但只能找到需要用户交互或必须安装的程序和 GUI 程序。

或者,一个小型的命令行程序也可以正常工作,只要我们被允许将它与测试应用程序一起分发即可。

我找到了一个程序,可以满足我想要的一些规范,PsInfo .然而,它似乎要求每个用户在第一次运行时同意一些许可,即使它是一个命令行应用程序。另外,它只处理 OS/CPU 信息,我需要的不止这些。

此外:忘记明确提及,但这确实只对 Windows 机器是必需的。你们真快!

编辑:这个 WMI 确实符合我的需要,谢谢!虽然有很多蠕虫,所以我必须深入研究。它提到对于某些事情,用户必须具有管理员权限;这可能不会是一个大问题,但它可能会稍微限制它。

最佳答案

也许考虑使用 Windows Management Instrumentation (WMI),假设它是您计划查询的 Windows 机器。看看 WMI Code Creator来自微软。它可以让您轻松使用几种语言的代码示例。

WMI 在 Windows 2000 时代一直运行良好,但在一些帮助下也可以在 Win98 机器上运行。

只要您拥有或可以提供您尝试查询的机器的管理员凭据,WMI 绝对是您的不二之选。

关于c# - 查询机器规范,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/202328/

相关文章:

c# - 泛型类型推断在 C# 中如何工作?

c# - 并行编程 TPL

c# - 在C#源代码中使用特殊字符是否错误,例如 "ñ"?

c# - 在哪里生成 SignInManager IdentityUser .cshtml 文件

c# - 如何提高 'ManagementEventWatcher'逻辑的响应能力?

c# - 从 VID/PID 中查找 USB 盘符(XP 及更高版本需要)

powershell - 超时 Get-WMIObject cmdlet

c# - 在 C# 中访问内部绑定(bind)类方法的更好方法是什么?

c# - 查询 WMI 类 Win32_QuickFixEngineering 返回许多奇怪的时间戳 (C#)

c++ - 在 C++ 中获取 WMI 查询的行数