【驱动系列】C#获取电脑硬件显卡核心代号信息

欢迎来到《小5讲堂》,大家好,我是全栈小5。
这是《驱动系列》文章,每篇文章将以博主理解的角度展开讲解,
特别是针对知识点的概念进行叙说,大部分文章将会对这些概念进行实际例子验证,以此达到加深对知识点的理解和掌握。
温馨提示:博主能力有限,理解水平有限,若有不对之处望指正!

【驱动系列】C#获取电脑硬件显卡核心代号信息_第1张图片

目录

  • 背景
  • 第三方工具
    • 显卡信息
    • 传感器监控
    • 即时读取和更新
    • 导出和共享
    • 支持多款显卡
  • 实现代码

背景

在上一篇文章已经通过C#获取到电脑显卡信息,在获取显卡核心代号信息时是空值,
因此此篇文章通过另外一种方式获取到核心代号信息。
【驱动系列】C#获取电脑硬件之显卡信息

第三方工具

GPU-Z 是一种常用的免费工具,用于获取和显示计算机中显卡(图形处理单元,GPU)的详细信息。它可以提供有关显卡型号、驱动版本、显存大小、传感器数据(如温度、风扇转速等)以及其他相关硬件信息的实时读数。

显卡信息

GPU-Z 显示有关显卡的详细信息,包括显卡制造商、型号、显存类型和大小、时钟速度等。

传感器监控

它可以读取和显示显卡的各种传感器数据,如温度、负载、风扇速度、功耗等。这些数据有助于你了解显卡的性能和状态。

即时读取和更新

GPU-Z 可以实时读取硬件信息,并在显卡或驱动程序更改时自动更新。

导出和共享

你可以将 GPU-Z 的输出导出为文本文件,方便与他人共享或保存以供后续分析。

支持多款显卡

GPU-Z 可以识别和显示各种显卡品牌和型号的信息,包括 NVIDIA、AMD 和 Intel 等生产商的显卡。

实现代码

核心代号的获取可能因显卡厂商和驱动程序的不同而有所差异。
以下是一种获取核心代号的备选方法,它使用了GPU-Z工具的命令行版本:
1.首先,下载并安装GPU-Z工具的命令行版本(GPU-Z CLI)。你可以从GPU-Z官方网站(https://www.techpowerup.com/gpuz/)上找到该工具,并确保将其路径添加到系统环境变量中。
2.在C#代码中,使用
System.Diagnostics.Process类来执行GPU-Z命令并捕获输出。

using System;
using System.Diagnostics;

class Program
{
    static void Main()
    {
        // 执行GPU-Z命令行,并捕获输出结果
        Process process = new Process();
        ProcessStartInfo startInfo = new ProcessStartInfo()
        {
            FileName = "GPU-Z.exe", // GPU-Z命令行的路径
            Arguments = "-dump=nogpu -txt=gpuz.txt", // 指定输出格式为文本文件
            RedirectStandardOutput = true,
            UseShellExecute = false,
            CreateNoWindow = true
        };
        
        process.StartInfo = startInfo;
        process.Start();
        process.WaitForExit();

        // 读取输出文件中的核心代号
        string outputFilePath = "gpuz.txt"; // 指定输出文件的路径
        string[] lines = System.IO.File.ReadAllLines(outputFilePath);
        string coreName = "";

        foreach (string line in lines)
        {
            if (line.StartsWith("GPU"))
            {
                // 核心代号所在行的格式为:GPU: [核心代号]
                coreName = line.Split(':')[1].Trim();
                break;
            }
        }

        Console.WriteLine("核心代号: " + coreName);
    }
}

总结:温故而知新,不同阶段重温知识点,会有不一样的认识和理解,博主将巩固一遍知识点,并以实践方式和大家分享,若能有所帮助和收获,这将是博主最大的创作动力和荣幸。也期待认识更多优秀新老博主。

你可能感兴趣的:(驱动程序,c#)