[Windows编程] 利用dxdiag获取用户机器硬件及OS信息

简介:
诊断用户机器上出现的问题的时候,机器的硬件以及OS信息是非常有帮助的。 检查机器上各个硬件信息的代码工作量非常大, 这里介绍一个快速便捷的方法: 利用windows自带工具dxdiag.exe 来生成硬件检测的报告,然后读取报告文件即可。 示例代码如下:
view plaincopy to clipboardprint?
STARTUPINFO si = {sizeof(si), 0};   
PROCESS_INFORMATION pi = {0};   
TCHAR szCmdLine[MAX_PATH] = _T("dxdiag.exe /whql:off /t dxdiag_output.txt");   
  
if (CreateProcess(   
        NULL,    
        szCmdLine,   
        NULL,   
        NULL,   
        TRUE,   
        NULL,   
        NULL,   
        NULL,   
        &si,   
        &pi))   
{   
  
   WaitForSingleObject (pi.hProcess, INFINITE); // 等待dxdiag.exe执行结束   
    CloseHandle (pi.hProcess);   
   CloseHandle (pi.hThread);    
  
    //读取dxdiag_output.txt  文件,获取用户机器的硬件/OS信息   
    HANDLE hFile = CreateFile(_T("dxdiag_output.txt"), GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);    
 if (hFile != INVALID_HANDLE_VALUE)   
 {   
      DWORD dwBytesRead = 0;   
      char szBuffer[BUFFER_SIZE];   
      ReadFile(hFile, szBuffer, BUFFER_SIZE-1, &dwBytesRead, NULL);    
  
      ...   
  
      }   
      CloseHandle(hFile);   
 }   
}


 本文转自 陈本峰 51CTO博客,原文链接:http://blog.51cto.com/wingeek/274057,如需转载请自行联系原作者

相关文章
|
5月前
|
关系型数据库 虚拟化 UED
Omnissa Horizon Windows OS Optimization Tool 2503 - Windows 系统映像优化工具
Omnissa Horizon Windows OS Optimization Tool 2503 - Windows 系统映像优化工具
208 7
Omnissa Horizon Windows OS Optimization Tool 2503 - Windows 系统映像优化工具
|
4月前
|
Ubuntu 虚拟化 Windows
无影云电脑选择哪个操作系统Windows server 2019还是Ubuntu?
在选择阿里云无影云电脑的操作系统时,Windows Server 2019 和 Ubuntu 各有优势。Windows适合依赖微软生态的企业级应用,提供图形化界面和高安全性;Ubuntu则轻量、经济,适合开源工具链和容器化部署。根据应用场景、资源占用、安全性、开发效率及成本考量,选择最适合的系统。条件允许下,可采用混合方案满足多样化需求。
|
7月前
|
中间件 关系型数据库 数据库
docker快速部署OS web中间件 数据库 编程应用
通过Docker,可以轻松地部署操作系统、Web中间件、数据库和编程应用。本文详细介绍了使用Docker部署这些组件的基本步骤和命令,展示了如何通过Docker Compose编排多容器应用。希望本文能帮助开发者更高效地使用Docker进行应用部署和管理。
195 19
|
7月前
|
数据管理 Linux iOS开发
Splunk Enterprise 9.4.1 (macOS, Linux, Windows) 发布 - 机器数据管理和分析
Splunk Enterprise 9.4.1 (macOS, Linux, Windows) 发布 - 机器数据管理和分析
130 0
Splunk Enterprise 9.4.1 (macOS, Linux, Windows) 发布 - 机器数据管理和分析
|
7月前
|
人工智能 安全 Anolis
打造更 AI 的操作系统 《龙蜥+超级探访》第三期走进浪潮信息
且看龙蜥社区如何联合浪潮信息向更高层次的操作系统智能化迈进?
打造更 AI 的操作系统 《龙蜥+超级探访》第三期走进浪潮信息
|
8月前
|
缓存 安全 Linux
Linux系统查看操作系统版本信息、CPU信息、模块信息
在Linux系统中,常用命令可帮助用户查看操作系统版本、CPU信息和模块信息
1486 23
|
8月前
|
存储 弹性计算 运维
云端问道 7 期实践教学-使用操作系统智能助手 OS Copilot 轻松运维与编程
使用操作系统智能助手 OS Copilot 轻松运维与编程
168 14
|
8月前
|
弹性计算 人工智能 运维
新手训练营——使用操作系统智能助手OS Copilot轻松运维与编程
本文摘自阿里云操作系统团队的林演(林生)关于操作系统智能助手创新产品的分享,围绕“OS Copilot的高效运维与编程”展开,主要包括以下几方面的内容: 1. 行业痛点击及背景 2. 产品与架构 3. 典型应用场景 4. 实验及反馈渠道
193 1
|
8月前
|
人工智能 弹性计算 运维
云端问道7期方案教学-使用操作系统智能助手OS Copilot轻松运维与编程
本文介绍了阿里云基础软件团队推出的操作系统智能助手 OS Copilot,旨在解决 Linux 开发与运维中的痛点。OS Copilot 基于大模型和操作系统领域知识构建,支持自然语言问答、命令辅助执行、系统运维优化及代码生成等功能,极大降低了学习成本和工作量。文章详细阐述了其产品架构、典型应用场景以及实验反馈渠道,帮助用户更高效地进行系统管理和编程。目前该产品处于公测阶段,免费提供给阿里云 ECS 实例和 Alinux 3 系统用户使用。
133 1
|
10月前
|
NoSQL Linux PHP
如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤
本文介绍了如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤。接着,对比了两种常用的 PHP Redis 客户端扩展:PhpRedis 和 Predis,详细说明了它们的安装方法及优缺点。最后,提供了使用 PhpRedis 和 Predis 在 PHP 中连接 Redis 服务器及进行字符串、列表、集合和哈希等数据类型的基本操作示例。
461 4

热门文章

最新文章

推荐镜像

更多