VB如何获取硬件信息比如CPU温度,显卡,CPUID号之类的、

VB如何获取硬件信息比如CPU温度,显卡,CPUID号之类的、,第1张

  Dim MemoyCounter As New ComputerInfo()

   Dim CPUCounter As New PerformanceCounter("Processor", "% Processor Time", "_Total")

   Private Sub Timer1_Tick(ByVal sender As SystemObject, ByVal e As SystemEventArgs) Handles Timer1Tick

    Dim CPU As Double = CPUCounterNextValue

    Dim neicun As Double = (MemoyCounterTotalPhysicalMemory - MemoyCounterAvailablePhysicalMemory) / MemoyCounterTotalPhysicalMemory  100%

获取CPU及物理内存使用率

CPUID *** 作码是一个面向x86架构的处理器补充指令,它的名称派生自CPU识别,作用是允许软体发现处理器的详细信息。它由英特尔在1993年引入奔腾和SL增强486处理器。

基本介绍 中文名 :CPUID 表示 :用户计算机当今的信息处理器信息 信息资料 :型号,信息处理器家庭等 CPUID指令 :获得CPU信息的汇编指令 简介,历史,调用CPUID,x86外的特定CPU识别信息,参见, 简介 CPUID *** 作码是一个面向x86架构的处理器补充指令,它的名称派生自CPU识别,作用是允许软体发现处理器的详细信息。它由英特尔在1993年引入奔腾和SL增强486处理器。 通过使用CPUID *** 作码,软体可以确定处理器的类型和特性支持(例如MMX/SSE)。CPUID *** 作码为0Fh、A2h(双位元组形式,A20Fh为单字(word))形式,值位于EAX暂存器中,某些情况下ECX暂存器用于指定要返回的信息。 历史 在CPUID指令普遍可用前,程式设计师需要编写深奥的机器语言利用CPU行为的微小差异来确定处理器的情况和型号。 在x86系列之外,开发人员大多仍然需要使用深奥的过程来确定CPU设计存在的差异。虽然CPUID指令针对x86架构,但其他架构(例如ARM)通常提供可供读取的片上暂存器来获取与此指令提供的相同种类的信息。 调用CPUID 在汇编语言中,CPUID指令不使用参数,因为CPUID隐式使用EAX暂存器来确定返回信息的主类别。在英特尔最新的术语中,这被称为CPUID leaf。CPUID的调用应该以EAX = 0开始,这将在EAX暂存器中返回CPU支持的最高EAX调用参数(leaf)。 x86外的特定CPU识别信息 一些非x86的CPU架构也提供了有关处理器能力的某种形式的结构化信息,通常作为一组特殊暂存器: ARM架构有一个CPUID协处理器暂存器。 IBM System z大型机处理器自1983年的IBM 4381起支持“Store CPU ID”(STIDP)指令,用于查询处理器ID。 MIPS32架构定义了一个强制性的 Processor Identification (PrId)和一系列菊花链“配置暂存器”。 PowerPC处理器有32位唯读的PVR暂存器来识别使用的处理器型号。 参见 CPU-Z,一个使用CPUID等信息识别系统配置的Windows实用工具

CPUID指令是intel IA32架构下获得CPU信息的汇编指令,可以得到CPU类型,型号,制造商信息,商标信息,序列号,缓存等一系列CPU相关的东西。

比如生成查询CPU的制造商信息(Vender ID String)的代码:

string CPUID::GetVID()

{

char cVID[13]; // 字符串,用来存储制造商信息

memset(cVID, 0, 13); // 把数组清0

Executecpuid(0); // 执行cpuid指令,使用输入参数 eax = 0

memcpy(cVID, &m_ebx, 4); // 复制前四个字符到数组

memcpy(cVID+4, &m_edx, 4); // 复制中间四个字符到数组

memcpy(cVID+8, &m_ecx, 4); // 复制最后四个字符到数组

return string(cVID); // 以string的形式返回

}

恩,上面的代码没错只是取的东西不对

public static ArrayList GetCPUId()

{

ArrayList IdList = new ArrayList();

ManagementClass cimobject = new ManagementClass("Win32_Processor");

ManagementObjectCollection moc = cimobjectGetInstances();

foreach (ManagementObject mo in moc)

{

IdListAdd(moProperties["ProcessorId"]ValueToString());

}

return IdList;

}

应该取ProcessorId

以上就是关于VB如何获取硬件信息比如CPU温度,显卡,CPUID号之类的、全部的内容,包括:VB如何获取硬件信息比如CPU温度,显卡,CPUID号之类的、、CPUID详细资料大全、给定一个CPU型号,如何生成对应的cpuid指令注意不是获取是生成 !等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9334235.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-27
下一篇2023-04-27

发表评论

登录后才能评论

评论列表(0条)

    保存