C#实现获取电脑硬件显卡信息的示例代码

 更新时间:2024年01月26日 15:54:23   作者:全栈小5  
这篇文章主要为大家详细介绍了如何使用C#实现获取电脑硬件显卡信息,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下

显卡信息

输出显示,显卡名称、显存容量、驱动程序版本

转换

B是字节 Byte;

KB是千字节 Kilobyte;

MB是兆字节 MegaByte;

GB是千兆字节 Gigabyte;

TB是太兆字节 Terabyte;

换算关系

1KB=1024B

1MB=1024KB

1GB=1024MB

1TB=1024GB

全部字段效果

全部字段代码

// 获取显卡信息
ManagementObjectSearcher searcher1 = new ManagementObjectSearcher("SELECT * FROM Win32_VideoController");
foreach (ManagementObject queryObj in searcher1.Get())
{
    textBox1.AppendText($"显卡名称: {queryObj["Name"]}\r\n");
    textBox1.AppendText($"显存大小(字节): {queryObj["AdapterRAM"]}\r\n");
    textBox1.AppendText($"驱动程序版本: {queryObj["DriverVersion"]}\r\n");
}

// 输出所有显卡字段信息
var scope = new ManagementScope("\\\\.\\ROOT\\CIMV2");
var query = new ObjectQuery("SELECT * FROM Win32_VideoController");

using (var searcher = new ManagementObjectSearcher(scope, query))
{
    foreach (ManagementObject obj in searcher.Get())
    {
        foreach (PropertyData property in obj.Properties)
        {
            textBox1.AppendText($"{property.Name}: {obj[property.Name]}\r\n");
        }
    }
}

主要信息效果

主要信息代码

// 获取显卡信息
ManagementObjectSearcher searcher1 = new ManagementObjectSearcher("SELECT * FROM Win32_VideoController");
var countData = searcher1.Get(); // 可能会有多条记录

string vName = string.Empty;
string vRam = string.Empty;
string vDriverVersion = string.Empty;
string vDriverDate = string.Empty;
string vAdapterCompatibility = string.Empty;

foreach (ManagementObject queryObj in countData)
{
    vName = $"{queryObj["Name"]}";
    vRam = $"{queryObj["AdapterRAM"]}";
    vDriverVersion = $"{queryObj["DriverVersion"]}";
    vDriverDate = $"{queryObj["DriverDate"]}";
    vAdapterCompatibility = $"{queryObj["AdapterCompatibility"]}";
}

// 容量单位转换
int byteData = 0;
int.TryParse(vRam, out byteData);
int megaByte = byteData / (1024 * 1024);

// 驱动日期
string vDriverDateNew = string.Empty;
if (!string.IsNullOrEmpty(vDriverDate) && vDriverDate.Length >= 8)
{
    vDriverDateNew = $"{vDriverDate.Substring(0, 4)}年{vDriverDate.Substring(4, 2)}月{vDriverDate.Substring(6, 2)}日";
}

textBox1.AppendText($"显卡名称: {vName}\r\n");
textBox1.AppendText($"显存大小: {vRam}B,{megaByte}MB\r\n");
textBox1.AppendText($"显卡厂商: {vAdapterCompatibility}\r\n");
textBox1.AppendText($"驱动版本: {vDriverVersion}\r\n");
textBox1.AppendText($"驱动日期: {vDriverDateNew}\r\n");

显卡作用

电脑显卡是计算机中一种重要的硬件组件,主要负责处理和输出图形和视频信号。

它有以下几个作用

图形渲染

显卡承担了计算机图形渲染的主要任务。它可以加速图形处理,对图像进行复杂的计算和处理,并将结果实时显示在屏幕上。
比如,在电脑游戏中,显卡负责渲染画面、计算光照效果、投射阴影等。

显示输出

显卡将图形信号转换为显示器所需的视频信号,通过连接线将信号传输到显示器上进行显示。显卡能够支持不同的分辨率和刷新率,以适应不同显示设备和用户需求。

多显示器支持

许多显卡支持多显示器设置,允许用户同时连接多个显示器或投影仪,扩展或镜像显示桌面。这对于多任务处理、多媒体制作和游戏体验都非常有用。

视频加速和解码

显卡通常具备硬件加速功能,可以协助解码和播放高清视频。通过使用视频解码器或GPU编解码器,显卡可以减轻CPU的负担,提供更平滑的视频播放和更低的能耗。

3D建模和渲染

对于专业的图形设计师、建筑师和动画师等,强大的显卡能够提供快速高效的3D建模和渲染能力,加速设计和创作过程,并呈现出逼真的图像效果。

总体而言,显卡在计算机图形处理和视频显示方面起到了至关重要的作用,对于提供流畅的游戏体验、高清视频播放和专业图形设计有着重要的影响。

不同的显卡型号和配置可以提供不同级别的性能和功能,用户可以根据自己的需求选择适合的显卡。

到此这篇关于C#实现获取电脑硬件显卡信息的示例代码的文章就介绍到这了,更多相关C#获取电脑硬件显卡信息内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 利用C#实现合并Word文档功能

    利用C#实现合并Word文档功能

    合并Word文档可以快速地将多份编辑好的文档合在一起,避免复制粘贴时遗漏内容,以及耗费不必要的时间。本文将分为以下两部分介绍如何通过C#合并Word文档,并附上VB.NET代码供大家参考,希望对大家有所帮助
    2022-12-12
  • C#9.0新特性详解——顶级程序语句(Top-Level Programs)

    C#9.0新特性详解——顶级程序语句(Top-Level Programs)

    这篇文章主要介绍了C#9.0新特性详解——顶级程序语句(Top-Level Programs)的相关资料,帮助大家更好的理解和学习c#,感兴趣的朋友可以了解下
    2020-12-12
  • C#如何使用Task类解决线程的等待问题

    C#如何使用Task类解决线程的等待问题

    这篇文章主要介绍了C#如何使用Task类解决线程的等待问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06
  • C#异步调用示例详解

    C#异步调用示例详解

    这篇文章主要为大家详细介绍了C#异步调用的示例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • C#操作CSV文件类实例

    C#操作CSV文件类实例

    这篇文章主要介绍了C#操作CSV文件类,涉及C#针对csv文件的读取、转化等常用操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • C# VB 实现10进制 16进制之间互相转换

    C# VB 实现10进制 16进制之间互相转换

    如何将10进制转成16进制,又如何将16进制数转成10进制,本文将介绍C#和VB实现代码,需要了解的朋友可以参考下
    2012-11-11
  • C#实现跨线程操作控件方法

    C#实现跨线程操作控件方法

    这篇文章主要介绍了C#实现跨线程操作控件方法,主要采用异步访问方式实现,需要的朋友可以参考下
    2014-10-10
  • 使用aspose.word 第三方的插件实现导出word

    使用aspose.word 第三方的插件实现导出word

    本文给大家分享的是一个使用使用aspose.word 第三方的插件实现导出word的实例,十分的实用,有需要的小伙伴可以参考下。
    2015-06-06
  • C#正则表达式转义字符介绍

    C#正则表达式转义字符介绍

    正则表达式,又称正规表示法、常规表示法。这篇文章主要介绍了C#正则表达式转义字符介绍的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-07-07
  • AjaxControlToolkit AjaxFileUpload 显示英文改成中文的解决方法

    AjaxControlToolkit AjaxFileUpload 显示英文改成中文的解决方法

    AjaxControlToolkit AjaxFileUpload 显示英文改成中文的解决方法,需要的朋友可以参考一下
    2013-03-03

最新评论