一种硬件检测自动报警的方法及装置的制作方法

文档序号:6430720阅读:256来源:国知局
专利名称:一种硬件检测自动报警的方法及装置的制作方法
技术领域
本发明涉及硬件配置信息处理的技术领域,特别是涉及一种硬件检测自动报警的方法,以及,一种硬件检测自动报警的装置。
背景技术
目前,人们在购买用户设备、优化用户设备配置、了解用户设备的应用环境等诸多需求中需要详细了解用户设备的硬件信息,例如CPU、主板、内存、显卡、显示器、硬盘、网卡、 声卡,以及所有接入的USB设备等信息。现有技术中,一些操作系统为用户提供了查看主要硬件信息的工具,如Windows 系统的“设备管理器”和“系统信息”工具。但不法商家可能会对此信息进行修改,例如,原本CPU的主频是800Mhz,而通过操作系统进行检测时,显示CPU的主频可能是1066Mhz,如此,操作系统获得信息与设备的真实信息并不一致。用户不知如何获取真实的设备信息的情况下,并不能获得自己所需要的设备。另外,管理员对其所在局域网的用户设备进行管理时,若用户设备中被更换了硬件,而服务器预存的对应的硬件信息并没有改变,这时,管理员并不知道其硬件的真实信息,从而无法对这些用户设备进行有效管理。因此,目前需要本领域技术人员迫切解决的一个技术问题就是提供一种硬件检测自动报警的机制,从而可以获知当前设备所描述的硬件信息与其真实硬件信息是否一致。

发明内容
本发明所要解决的技术问题是提供一种硬件检测自动报警的方法,使用户直接获知所用设备的描述与其真实信息是否一致。本发明还提供了一种硬件检测自动报警的装置,用以保证上述方法在实际中的应用及实现。为了解决上述问题,本发明实施例公开了一种硬件检测自动报警的方法,包括通过访问用户设备的底层硬件,作为硬件信息获取的第一来源,获得当前用户设备的硬件信息;从硬件信息获取的第二来源,获取相同用户设备的硬件信息,所述第二来源为与第一来源不同的硬件信息获取源;对比所述第一来源的硬件信息与第二来源的硬件信息是否一致;若否,则生成报警提示。优选的,所述从硬件信息获取的第二来源,获取相同用户设备的硬件信息的步骤包括获取用户设备所安装的操作系统反馈的硬件信息。优选的,所述从硬件信息获取的第二来源,获取相同用户设备的硬件信息的步骤包括 访问用户设备所安装的Windows操作系统的应用程序接口 API或Windows管理规范WMI,以及,硬件驱动程序,获得当前用户设备的硬件信息。优选的,所述用户设备具有终端标识,所述从硬件信息获取的第二来源,获取相同用户设备的硬件信息的步骤包括根据所述终端标识从服务器端获取其预存的对应用户设备的硬件信息。优选的,所述对比第一来源的硬件信息与第二来源的硬件信息是否一致的操作, 以及,生成报警提示的操作由服务器完成,所述方法还包括将所述第一来源的硬件信息,以及,所述第二来源的硬件信息上传至服务器。优选的,所述对比第一来源的硬件信息与第二来源的硬件信息是否一致的操作, 以及,生成报警提示的操作由服务器完成,所述方法还包括将所述第一来源的硬件信息及对应用户设备的终端标识上传至服务器。优选的,所述对比第一来源的硬件信息与第二来源的硬件信息是否一致的操作, 以及,生成报警提示的操作在当前用户设备上完成。优选的,所述用户设备具有终端标识,所述方法还包括若所述第一来源的硬件信息与第二来源的硬件信息一致,则根据所述终端标识从服务器端获取其预存的对应用户设备的硬件信息;将所述第一来源的硬件信息或第二来源的硬件信息,与所述服务器预存的硬件信息进行对比,若不一致,则生成报警提示。优选的,所述方法还包括若所述第一来源的硬件信息与第二来源的硬件信息一致,则获取用户设备所安装的操作系统反馈的硬件信息;将所述第一来源的硬件信息或第二来源的硬件信息,与所述操作系统反馈的硬件信息进行对比,若不一致,则生成报警提示。优选的,所述方法还包括若所述第一来源的硬件信息与第二来源的硬件信息一致,则通过访问用户设备所安装的Windows操作系统的应用程序接口 API或Windows管理规范WMI,以及,硬件驱动程序,获得当前用户设备的硬件信息;将所述第一来源的硬件信息或第二来源的硬件信息,与所获得的硬件信息进行对比,若不一致,则生成报警提示。优选的,所述通过访问用户设备的底层硬件,作为硬件信息获取的第一来源,获得当前用户设备的硬件信息的步骤包括访问底层硬件,获得用户设备中的硬件标识信息;依据所述硬件标识信息,在预置的硬件信息库中提取对应的硬件参数信息。优选的,所述硬件标识信息包括厂商ID与硬件设备ID,所述底层硬件包括系统总线、系统管理基本输入输出系统SMBIOS和/或外设端口,所述访问底层硬件的步骤具体包括遍历系统总线,所述系统总线包括外设部件互连PCI总线、系统管理SMBUS总线、 I2C总线和/或工业标准结构ISA总线;
和/或,读取系统管理基本输入输出系统SMBIOS的信息;和/或,访问外设端口,发起与对应外设的I/O操作。优选的,所述方法还包括 依据所述用户设备第一来源的硬件信息,更新服务器端预存的对应用户设备的硬件fe息。本发明还提供了一种硬件检测自动报警的装置,包括第一来源硬件信息获取模块,用于通过访问用户设备的底层硬件,作为硬件信息获取的第一来源,获得当前用户设备的硬件信息;第二来源硬件信息获取模块,用于从硬件信息获取的第二来源,获取相同用户设备的硬件信息;所述第二来源为与第一来源不同的硬件信息获取源;硬件信息对比模块,用于对比所述第一来源的硬件信息与第二来源的硬件信息是
否一致;报警模块,用于若否,则生成报警提示。优选的,所述第二来源硬件信息获取模块包括系统硬件信息获取子模块,用于获取用户设备所安装的操作系统反馈的硬件信肩、ο优选的,所述第二来源硬件信息获取模块包括系统接口硬件信息获取子模块,用于访问用户设备所安装的Windows操作系统的应用程序接口 API或Windows管理规范WMI,以及,硬件驱动程序,获得当前用户设备的硬件 fn息ο优选的,所述用户设备具有终端标识,所述第二来源硬件信息获取模块包括终端标识硬件信息获取子模块,用于根据所述终端标识从服务器端获取其预存的对应用户设备的硬件信息。优选的,所述硬件信息对比模块,以及,报警模块由服务器完成,所述装置还包括信息上传模块,用于将所述第一来源的硬件信息,以及,所述第二来源的硬件信息上传至服务器。优选的,所述硬件信息对比模块,以及,报警模块由服务器完成,所述装置还包括终端标识上传模块,用于将所述第一来源的硬件信息及对应用户设备的终端标识上传至服务器。优选的,所述硬件信息对比模块,以及,报警模块在当前用户设备上完成。优选的,所述用户设备具有终端标识,所述装置还包括预存信息获取模块,用于若所述第一来源的硬件信息与第二来源的硬件信息一致,则根据所述终端标识从服务器端获取其预存的对应用户设备的硬件信息;预存信息对比模块,用于将所述第一来源的硬件信息或第二来源的硬件信息,与所述服务器预存的硬件信息进行对比,若不一致,则生成报警提示。优选的,所述装置还包括操作系统信息获取模块,用于若所述第一来源的硬件信息与第二来源的硬件信息一致,则获取用户设备所安装的操作系统反馈的硬件信息; 操作系统信息对比模块,用于将所述第一来源的硬件信息或第二来源的硬件信息,与所述操作系统反馈的硬件信息进行对比,若不一致,则生成报警提示。优选的,所述装置还包括操作系统接口信息获取模块,用于若所述第一来源的硬件信息与第二来源的硬件信息一致,则通过访问用户设备所安装的Windows操作系统的应用程序接口 API或Windows 管理规范WMI,以及,硬件驱动程序,获得当前用户设备的硬件信息;操作系统接口信息对比模块,用于将所述第一来源的硬件信息或第二来源的硬件信息,与所获得的硬件信息进行对比,若不一致,则生成报警提示。优选的,所述第一来源硬件信息获取模块包括底层硬件访问子模块,用于访问底层硬件,获得用户设备中的硬件标识信息;硬件参数信息提取子模块,用于依据所述硬件标识信息,在预置的硬件信息库中提取对应的硬件参数信息。优选的,所述硬件标识信息包括厂商ID与硬件设备ID,所述底层硬件包括系统总线、系统管理基本输入输出系统SMBIOS和/或外设端口,所述底层硬件访问子模块具体包括系统总线遍历子模块,用于遍历系统总线,所述系统总线包括外设部件互连PCI 总线、系统管理SMBUS总线、I2C总线和/或工业标准结构ISA总线;和/或,主板信息读取子模块,用于读取系统管理基本输入输出系统SMBIOS的信息;和/或,外设端口访问子模块,用于访问外设端口,发起与对应外设的I/O操作。优选的,所述装置还包括硬件信息更新模块,用于依据所述用户设备第一来源的硬件信息,更新服务器端预存的对应用户设备的硬件信息。与现有技术相比,本发明具有以下优点本发明通过直接访问底层硬件可以获得最为真实、准确、客观的硬件参数信息,并将该硬件信息与通过操作系统、操作系统的应用程序接口 API或Windows管理规范WMI获得的硬件信息进行对比,在信息不一致的情况下向用户发出报警提示,由此,可以帮助用户了解设备的真实配置,有效防止用户被不法商贩所蒙骗。另外,本发明还对比通过访问底层硬件获取的硬件信息与预存在服务器中的硬件信息是否一致,在不一致的情况下对服务器中预存的硬件信息进行修改,方便了管理员对其所在局域网的多台用户设备进行有效管理。


图1是本发明的一种硬件检测自动报警的方法实施例1的步骤流程图;图2是本发明的一种硬件检测自动报警的方法实施例2的步骤流程图;图3是本发明的一种硬件检测自动报警的方法实施例3的步骤流程图;图4是本发明的一种硬件检测自动报警的方法实施例4的步骤流程图;图5是本发明的一种硬件检测自动报警的装置实施例1的结构框图6是本发明的一种硬件检测自动报警的装置实施例2的结构框图;图7是本发明的一种硬件检测自动报警的装置实施例3的结构框图;图8是本发明的一种硬件检测自动报警的装置实施例4的结构框图。
具体实施例方式为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式
对本发明作进一步详细的说明。对于现有技术而言,用户可以通过操作系统查看当前设备的硬件信息,如Windows 系统的“设备管理器”和“系统信息”工具。而实际中,不法商家可能会对操作系统显示的信息进行修改,使操作系统获取的信息与该设备的实际信息不一致,用户无法获知该设备的真实硬件信息的情况下并不能获得自己所需的设备。本发明实施例的核心构思之一在于,检测用户的装机配置信息,通过访问用户设备的底层硬件获取当前用户设备的第一来源的硬件信息,若此硬件信息与用户设备的第二来源的硬件信息不一致,则生成报警提示,使用户直接获知所用设备的描述与其真实信息
是否一致。参考图1,示出了本发明的一种硬件检测自动报警的方法实施例1的步骤流程图, 具体可以包括以下步骤步骤101、通过访问用户设备的底层硬件,作为硬件信息获取的第一来源,获得当前用户设备的硬件信息。在本发明的一种优选实施例中,所述步骤101可以包括子步骤S11、访问底层硬件,获得用户设备中的硬件标识信息。在具体的实现中,所述硬件标识信息可以包括厂商ID与硬件设备ID,所述底层硬件包括系统总线、系统管理基本输入输出系统SMBIOS和/或外设端口,所述子步骤Sll具体可以包括子步骤S11-1、遍历系统总线,所述系统总线包括外设部件互连PCI总线、系统管理SMBUS总线、I2C总线和/或工业标准结构ISA总线;子步骤SllUP /或,读取系统管理基本输入输出系统SMBIOS的信息;子步骤S11-3、和/或,访问外设端口,发起与对应外设的I/O操作。例如,可以通过遍历PCI总线读取主板上PCI设备的信息,以及读取SMBIOS主板信息检测到主板的厂商ID及硬件设备ID。或者,可以通过遍历PCI总线读取PCI设备上的显卡类别数据检测到的显卡的厂商ID及硬件设备ID。或者,可以采用SetupAPI的方式访问外设端口,发起与外设端口的I/O操作请求判断是否连接有外设,如收到外设针对该请求返回的信息,则进一步向该外设发送信息获取请求,然后接收外设返回的厂商ID及硬件设备ID。例如,对于CPU、内存、硬盘或光驱等硬件而言,在通过读取SMBIOS的信息,和/或, 遍历PCI总线、SMBUS总线、I2C总线和ISA总线后,还需要进一步与对应的硬件进行指令交互才能 读出该硬件的厂商信息和标识信息。详言之,如要获取CPU的信息,可以通过先读取SMBIOS信息,然后进一步对CPU指令寄存器(包括CPUID和MSR寄存器)进行数据分析获得。
在具体实现中,所述用户设备可以发起硬件检测请求的用户设备。当接收到所述硬件检测请求,针对发起所述请求的用户设备启动硬件检测驱动程序(或硬件检测引擎), 由所述硬件检测驱动程序(或硬件检测引擎)访问硬件底层,当所述用户设备为计算机时, 所访问的硬件底层具体包括CPU底层访问、SMBIOS底层访问、PCI总线数据读取、SMBUS总线数据读取、ISA总线数据读取、IDE(硬盘驱动器)和Smart(自我检测、分析、报告技术) 硬盘数据读取、SCSI (小型计算机系统接口)硬盘数据读取、EEDID (扩展显示标识数据)显示器数据读取、I2C总线数据扫描后,查找到以下硬件的厂商ID及硬件ID,包括CPU、主板、 显卡、显示器、内存、硬盘、光驱、声卡、电池、网卡、鼠标键盘和/或摄像头。 子步骤S12、依据所述硬件标识信息,在预置的硬件信息库中提取对应的硬件参数 fn息ο作为一种具体应用的示例,可以预置硬件生产厂商数据库、硬件型号数据库、硬件规格数据库和/或硬件配置参数数据库等多个硬件信息库,当检测到厂商ID及硬件设备 ID,逐个分别在上述多个硬件信息库中匹配,然后筛选出需要展现给用户的硬件参数信息。作为另一种具体应用的示例,可以预置一个硬件信息库,该硬件信息库中具有多条与硬件标识信息对应的硬件参数信息记录,其中每条硬件参数信息记录中都包括硬件品牌、硬件名称、硬件型号、硬件规格和/或硬件配置参数等信息。当然,上述方法仅仅用作示例,本领域技术人员可以依据实际需求设置取用何种硬件标识信息,如在只展现硬件品牌、硬件名称的情况下,则只取用厂商ID,或如,在展现硬件型号、硬件规格和硬件配置参数的情况下,则只取用硬件设备ID,所述硬件标识信息还可以其它任一种客观表征用户设备中所采用硬件的相关信息,本发明对此无需加以限制。在实际中,对于所取得的硬件信息可以进行合理性验证,如果第一候选值不合法, 就采用第二候选值,若第二候选值不合法,就采用第三候选值,以此类推。步骤102、从硬件信息获取的第二来源,获取相同用户设备的硬件信息,所述第二来源为与第一来源不同的硬件信息获取源。需要说明的是,在本发明实施例中,所述从第二来源所获取到的用户设备的硬件信息,是客观反映当前用户设备中硬件配置情况的信息,包括操作系统提供的硬件信息、产品生产商提供的设备硬件配置单等。在本发明的一种优选的实施例中,所述步骤102可以包括获取用户设备所安装的操作系统反馈的硬件信息。现有技术中,一些操作系统为用户提供了查看主要硬件信息的工具,如Windows 系统的“设备管理器”和“系统信息”工具。具体而言,用户可以右击桌面上的“我的电脑”, 从快捷菜单中选择“属性”命令打开“系统属性”窗口 ;或者从控制面板中打开“系统属性” 窗口,切换到“硬件”标签页,点击“设备管理器”按钮以查看当前用户设备的主要硬件信息。 或者从Windows系统的开始菜单中的附件选项下找到“系统工具”,然后选择“系统信息”; 或者,在“运行”对话框中直接输入“mSinf032. exe"以查看当前用户设备的主要硬件信息。例如,如果用户想要查看硬盘型号和工作模式,可以打开“设备管理器”窗口,从 “磁盘处理器”下查看当前系统中所安装的硬盘型号,然后从“IDE ATA/ATAPI控制器”下选择一个IDE通道查看硬盘的工作模式。如果用户需要查看显示信息,可以打开“系统工具” 中“DirectX诊断工具一显示”的标签页来查看显卡的名称、制造商、芯片类型、DAC类型、内存容量等常规显示信息,或进一步从控制面板中打开“显示属性一设置”窗口查看BIOS版本、系统内存、视频内存、驱动程序版本、OpenGL ICD的DLL文件名和版本号等显示信息;或者打开“系统信息一组件一显示”窗口,查看设备ID、INF文件、颜色表项目、分辨率、内存地址等显示信息在本发明的另一种优选的实施例中,所述步骤102可以包括访问用户设备所安装的Windows操作系统的应用程序接口 API或Windows管理规范WMI,以及,硬件驱动程序,获得当前用户设备的硬件信息。Windows操作系统的应用程序接口 API是应用程序和Windows交通的接口, 包括几千个可调用的函数,调用相应的函数可以得到用户设备的硬件信息。例如通过 GetSysColor判断指定windows显示对象的颜色;通过GetSystemPowerStatus获得与当前系统电源状态有关的信息;通过GetKeyboardType 了解与正在使用的键盘有关的信息;通过GetSystemInfo可以获取CPU信息。Windows管理规范WMI是一项核心的Windows管理技术,WMI作为一种规范和基础结构,通过它可以访问、配置、管理和监视几乎所有的Windows资源,比如用户可以在远程计算机器上启动一个进程;设定一个在特定日期和时间运行的进程;远程启动计算机; 获得本地或远程计算机的已安装程序列表;查询本地或远程计算机的Windows事件日志等等。在实际操作中,通过WMI提供程序代表使用者应用程序和脚本从WMI托管资源请求信息,并发送指令到WMI托管资源。例如Win32提供程序提供关于计算机、磁盘、外围设备、 文件、文件夹、文件系统、网络组件、操作系统、打印机、进程、安全性、服务、共享、SAM用户及组,以及更多资源的信息。步骤103、对比所述第一来源的硬件信息与第二来源的硬件信息是否一致。步骤104、若否,则生成报警提示。在实际中,用户可以通过第二来源获取设备的硬件信息,由于该信息可能会被修改过,所以需要将其与通过访问底层硬件获取的硬件信息进行对比,若不一致,说明通过第二来源获取的硬件信息被修改过,并非真实信息。在本发明的一种优选的实施例中,所述对比第一来源的硬件信息与第二来源的硬件信息是否一致的操作,以及,生成报警提示的操作在当前用户设备上完成。即,在用户当前所用设备上对比硬件信息是否一致,若不一致,在用户设备的界面上生成报警提示,用户可以直接获知该提示。参考图2,示出了本发明的一种硬件检测自动报警的方法实施例2的步骤流程图, 具体可以包括以下步骤步骤201、通过访问用户设备的底层硬件,作为硬件信息获取的第一来源,获得当前用户设备的硬件信息;步骤202、从硬件信息获取的第二来源,获取相同用户设备的硬件信息,所述第二来源为与第一来源不同的硬件信息获取源。在本发明的一种优选的实施例中,所述步骤202可以包括获取用户设备所安装的操作系统反馈的硬件信息。在本发明的另一种优选的实施例中,所述步骤202可以包括访问用户设备所安装的Windows操作系统的应用程序接口 API或Windows管理规范WMI,以及,硬件驱动程序,获得当前用户设备的硬件信息。 步骤203、将所述第一来源的硬件信息,以及,所述第二来源的硬件信息上传至服务器。在本实施例中,所述第一来源的硬件信息与第二来源的硬件信息是否一致的操作,以及,生成报警提示的操作可以由服务器完成,在现实中可以理解为将报警提示提供给多个用户设备的管理员,这两个来源的硬件信息都是由系统提供,所以需要先上传到服务器再进行对比。步骤204、对比所述第一来源的硬件信息与第二来源的硬件信息是否一致;若是, 则执行步骤205和步骤206 ;若否,则执行步骤207。步骤205、所述用户设备具有终端标识,根据所述终端标识从服务器端获取其预存的对应用户设备的硬件信息。在本实施例中,将第一来源的硬件信息与第二来源的硬件信息进行对比后,还需要将其与服务器端预存的对应用户设备的硬件信息进行对比。服务器中预存了多个终端的标识信息及其一一对应的硬件信息,根据终端标识可以提取相应的硬件信息。此处,在服务器中预存的硬件信息可以是产品生产商提供的设备硬件配置单。步骤206、将所述第一来源的硬件信息或第二来源的硬件信息,与所述服务器预存的硬件信息进行对比,若不一致,则生成报警提示。通过与预存的硬件信息的比较可以得知该设备的配置信息是否为真实信息,若不一致,则由服务器端发出报警提示。步骤207、生成报警提示。步骤208、依据所述用户设备第一来源的硬件信息,更新服务器端预存的对应用户设备的硬件信息。若第一来源的硬件信息,即通过访问底层硬件获知的硬件信息与服务器端预存的硬件信息不一致时,以第一来源的硬件信息为准确信息,并按照第一来源的硬件信息对预存的硬件信息进行修改。参考图3,示出了本发明的一种硬件检测自动报警的方法实施例3的步骤流程图, 具体可以包括以下步骤步骤301、通过访问用户设备的底层硬件,作为硬件信息获取的第一来源,获得当前用户设备的硬件信息;步骤302、从硬件信息获取的第二来源,获取相同用户设备的硬件信息,所述第二来源为与第一来源不同的硬件信息获取源;在本发明的一种优选的实施例中,所述用户设备具有终端标识,所述步骤302可以包括根据所述终端标识从服务器端获取其预存的对应用户设备的硬件信息。区别于上个实施例,在本实施例中,所述第二来源的硬件信息为服务器端预存的硬件信息,此步骤是将通过访问底层硬件获取的硬件信息与预存的硬件信息进行对比。步骤303、将所述第一来源的硬件信息及对应用户设备的终端标识上传至服务器。在本实施例中,所述第一来源的硬件信息与第二来源的硬件信息是否一致的操作,以及,生成报警提示的操作可以由服务器完成。第二来源的硬件信息是由服务器提供,而第一来源的硬件信息是由系统提供,所以此处需将第一来源的硬件信息和对应的用户设备的终端标识上传到服务器。步骤304、对比所述第一来源的硬件信息与第二来源的硬件信息是否一致;若是, 则执行步骤305和步骤306 ;若否,则执行步骤307。步骤305、获取用户设备所安装的操作系统反馈的硬件信息。 步骤306、将所述第一来源的硬件信息或第二来源的硬件信息,与所述操作系统反馈的硬件信息进行对比,若不一致,则生成报警提示。本实施例中,在之前的步骤对比了通过访问底层硬件获取的硬件信息与服务器中预存的硬件信息,在对比一致的情况下,还需与通过操作系统获取的硬件信息进行对比,若不一致则在服务器端发出报警提示。步骤307、生成报警提示。步骤308、依据所述用户设备第一来源的硬件信息,更新服务器端预存的对应用户设备的硬件信息。参考图4,示出了本发明的一种硬件检测自动报警的方法实施例4的步骤流程图, 具体可以包括以下步骤步骤401、通过访问用户设备的底层硬件,作为硬件信息获取的第一来源,获得当前用户设备的硬件信息;步骤402、从硬件信息获取的第二来源,获取相同用户设备的硬件信息,所述第二来源为与第一来源不同的硬件信息获取源;在本发明的一种优选的实施例中,所述用户设备具有终端标识,所述步骤402可以包括根据所述终端标识从服务器端获取其预存的对应用户设备的硬件信息。步骤403、将所述第一来源的硬件信息及对应用户设备的终端标识上传至服务器。步骤404、对比所述第一来源的硬件信息与第二来源的硬件信息是否一致;若是, 则执行步骤405和步骤406 ;若否,则执行步骤407。步骤405、通过访问用户设备所安装的Windows操作系统的应用程序接口 API或 Windows管理规范WMI,以及,硬件驱动程序,获得当前用户设备的硬件信息;步骤406、将所述第一来源的硬件信息或第二来源的硬件信息,与所获得的硬件信息进行对比,若不一致,则生成报警提示。区别于上个实施例,本实施例中,在之前的步骤对比了通过访问底层硬件获取的硬件信息与服务器中预存的硬件信息,在对比一致的情况下,将第一或第二来源的硬件信息与通过操作系统的应用程序接口 API或Windows管理规范丽I获取的硬件信息进行对比,若不一致则在服务器端发出报警提示。步骤407、若否,则生成报警提示。在本发明的一种优选的实施例中,所述对比第一来源的硬件信息与第二来源的硬件信息是否一致的操作,以及,生成报警提示的操作可以由服务器完成。步骤408、依据所述用户设备第一来源的硬件信息,更新服务器端预存的对应用户设备的硬件信息。在具体的实现中,本发明的一种硬件检测自动报警的方法可以按照预设频率定期执行。综上所述,本发明提供了一种硬件检测自动报警的方法,通过直接访问底层硬件可以获得最为真实、准确、客观的硬件参数信息,并将该硬件信息与通过操作系统、操作系统的应用程序接口 API或Windows管理规范WMI获得的硬件信息进行对比,在信息不一致的情况下向用户发出报警提示,由此,可以帮助用户了解设备的真实配置,有效防止用户被不法商贩所蒙骗。另外,本发明还对比通过访问底层硬件获取的硬件信息与预存在服务器中的硬件信息是否一致,在不一致的情况下对服务器中预存的硬件信息进行修改,方便了管理员对其所在局域网的多台用户设备进行有效管理。本说明书中的各个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。需要说明的是,在本发明实施例中,所述硬件是指用户设备中的硬件,所述用户设备包括计算机、手机、PDA等,所述硬件包括CPU、主板、显卡、显示器、内存、硬盘、光驱、声卡、电池、网卡、鼠标键盘和/或摄像头等。本发明实施例不仅可以应用于单台设备的应用环境中,还可以应用于服务器-客户端的应用环境,或者进一步应用于基于云技术的应用环境中。对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。参考图5,示出了本发明的一种硬件检测自动报警的装置实施例1的结构框图,具体可以包括以下模块第一来源硬件信息获取模块501,用于通过访问用户设备的底层硬件,作为硬件信息获取的第一来源,获得当前用户设备的硬件信息;第二来源硬件信息获取模块502,用于从硬件信息获取的第二来源,获取相同用户设备的硬件信息,所述第二来源为与第一来源不同的硬件信息获取源;硬件信息对比模块503,用于对比所述第一来源的硬件信息与第二来源的硬件信
息是否一致;报警模块504,用于若否,则生成报警提示。在本发明的一种优选实施例中,所述第一来源硬件信息获取模块可以包括底层硬件访问子模块,用于访问底层硬件,获得用户设备中的硬件标识信息;硬件参数信息提取子模块,用于依据所述硬件标识信息,在预置的硬件信息库中提取对应的硬件参数信息。在本发明的一种优选实施例中,所述硬件标识信息包括厂商ID与硬件设备ID,所述底层硬件包括系统总线、系统管理基本输入输出系统SMBIOS和/或外设端口,所述底层硬件访问子模块具体包括系统总线遍历子 模块,用于遍历系统总线,所述系统总线包括外设部件互连PCI 总线、系统管理SMBUS总线、I2C总线和/或工业标准结构ISA总线;和/或,主板信息读取子模块,用于读取系统管理基本输入输出系统SMBIOS的信息; 和/或,外设端口访问子模块,用于访问外设端口,发起与对应外设的I/O操作。在本发明的一种优选的实施例中,所述硬件信息对比模块,以及,报警模块在当前用户设备上完成。参考图6,示出了本发明的一种硬件检测自动报警的生成装置实施例2的结构框图,具体可以包括以下模块第一来源硬件信息获取模块601,用于通过访问用户设备的底层硬件,作为硬件信息获取的第一来源,获得当前用户设备的硬件信息;第二来源硬件信息获取模块602,用于从硬件信息获取的第二来源,获取相同用户设备的硬件信息,所述第二来源为与第一来源不同的硬件信息获取源;在本发明的一种优选的实施例中,所述第二来源硬件信息获取模块可以包括系统硬件信息获取子模块,用于获取用户设备所安装的操作系统反馈的硬件信息。在本发明的另一种优选的实施例中,所述第二来源硬件信息获取模块可以包括 系统接口硬件信息获取子模块,用于访问用户设备所安装的Windows操作系统的应用程序接口 API或Windows管理规范丽I,以及,硬件驱动程序,获得当前用户设备的硬件信息。信息上传模块603,用于将所述第一来源的硬件信息,以及,所述第二来源的硬件信息上传至服务器。硬件信息对比模块604,用于对比所述第一来源的硬件信息与第二来源的硬件信息是否一致;若是,则执行模块605和模块606 ;若否,则执行模块607。预存信息获取模块605,用于所述用户设备具有终端标识,根据所述终端标识从服务器端获取其预存的对应用户设备的硬件信息;预存信息对比模块606,用于将所述第一来源的硬件信息或第二来源的硬件信息, 与所述服务器预存的硬件信息进行对比,若不一致,则生成报警提示。报警模块607,用于生成报警提示。硬件信息更新模块608,用于依据所述用户设备第一来源的硬件信息,更新服务器端预存的对应用户设备的硬件信息。在本发明的一种优选的实施例中,所述硬件信息对比模块,以及,报警模块由服务器完成。参考图7,示出了本发明的一种硬件检测自动报警的装置实施例3的结构框图,具体可以包括以下模块第一来源硬件信息获取模块701,用于通过访问用户设备的底层硬件,作为硬件信息获取的第一来源,获得当前用户设备的硬件信息;第二来源硬件信息获取模块702,用于从硬件信息获取的第二来源,获取相同用户设备的硬件信息,所述第二来源为与第一来源不同的硬件信息获取源;在本发明的一种优选的实施例中,所述用户设备具有终端标识,所述第二来源硬件信息获取模块包括终端标识硬件信息获取子模块,用于根据所述终端标识从服务器端获取其预存的对应用户设备的硬件信息。终端标识上传模块703,用于将所述第一来源的硬件信息及对应用户设备的终端标识上传至服务器。硬件信息对比模块704,用于对比所述第一来源的硬件信息与第二来源的硬件信息是否一致;若是,则执行模块705和模块706 ;若否,则执行模块707。操作系统信息 获取模块705,用于获取用户设备所安装的操作系统反馈的硬件信肩、ο操作系统信息对比模块706,用于将所述第一来源的硬件信息或第二来源的硬件信息,与所述操作系统反馈的硬件信息进行对比,若不一致,则生成报警提示。报警模块707,用于生成报警提示。在本发明的一种优选的实施例中,所述硬件信息对比模块,以及,报警模块由服务器完成。硬件信息更新模块708,用于依据所述用户设备第一来源的硬件信息,更新服务器端预存的对应用户设备的硬件信息。参考图8,示出了本发明的一种硬件检测自动报警的装置实施例4的结构框图,具体可以包括以下模块第一来源硬件信息获取模块801,用于通过访问用户设备的底层硬件,作为硬件信息获取的第一来源,获得当前用户设备的硬件信息;第二来源硬件信息获取模块802,用于从硬件信息获取的第二来源,获取相同用户设备的硬件信息,所述第二来源为与第一来源不同的硬件信息获取源;在本发明的一种优选的实施例中,所述用户设备具有终端标识,所述第二来源硬件信息获取模块包括终端标识硬件信息获取子模块,用于根据所述终端标识从服务器端获取其预存的对应用户设备的硬件信息。终端标识上传模块803,用于将所述第一来源的硬件信息及对应用户设备的终端标识上传至服务器。硬件信息对比模块804,用于对比所述第一来源的硬件信息与第二来源的硬件信息是否一致;若是,则执行模块805和模块806 ;若否,则执行模块807。操作系统接口信息获取模块805,用于通过访问用户设备所安装的Windows操作系统的应用程序接口 API或Windows管理规范WMI,以及,硬件驱动程序,获得当前用户设备的硬件信息;操作系统接口信息对比模块806,用于将所述第一来源的硬件信息或第二来源的硬件信息,与所获得的硬件信息进行对比,若不一致,则生成报警提示。报警模块807,用于生成报警提示。在本发明的一种优选的实施例中,所述硬件信息对比模块,以及,报警模块由服务器完成。硬件信息更新模块808,用于依据所述用户设备第一来源的硬件信息,更新服务器端预存的对应用户设备的硬件信息。本发明实施例不仅可以应用于单台设备的应用环境中,还可以应用于服务器_客户端的应用环境,或者进一步应用于基于云技术的应用环境中。 由于所述装置实施例基本相应于前述方法实施例,故本实施例的描述中未详尽之处,可以参见前述实施例中的相关说明,在此就不赘述了。本发明装置实施例和系统实施例中所涉及的模块、子模块和单元可以为软件,可以为硬件,也可以为软件和硬件的组合。本发明可用于众多通用或专用的计算系统环境或配置中。例如个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任 何系统或设备的分布式计算环境等等。本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有
更多限制的情况下,由语句“包括一个......,,限定的要素,并不排除在包括所述要素的过
程、方法、物品或者设备中还存在另外的相同要素。最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或
者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,
并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。以上对本发明所提供的一种硬件检测自动报警的方法和一种硬件检测自动报警的装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述, 以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
1.一种硬件检测自动报警的方法,其特征在于,包括通过访问用户设备的底层硬件,作为硬件信息获取的第一来源,获得当前用户设备的硬件信息;从硬件信息获取的第二来源,获取相同用户设备的硬件信息,所述第二来源为与第一来源不同的硬件信息获取源;对比所述第一来源的硬件信息与第二来源的硬件信息是否一致;若否,则生成报警提示。
2.如权利要求1所述的方法,其特征在于,所述从硬件信息获取的第二来源,获取相同用户设备的硬件信息的步骤包括获取用户设备所安装的操作系统反馈的硬件信息。
3.如权利要求1所述的方法,其特征在于,所述从硬件信息获取的第二来源,获取相同用户设备的硬件信息的步骤包括访问用户设备所安装的Windows操作系统的应用程序接口 API或Windows管理规范 WMI,以及,硬件驱动程序,获得当前用户设备的硬件信息。
4.如权利要求1所述的方法,其特征在于,所述用户设备具有终端标识,所述从硬件信息获取的第二来源,获取相同用户设备的硬件信息的步骤包括根据所述终端标识从服务器端获取其预存的对应用户设备的硬件信息。
5.如权利要求2或3所述的方法,其特征在于,所述对比第一来源的硬件信息与第二来源的硬件信息是否一致的操作,以及,生成报警提示的操作由服务器完成,所述方法还包括将所述第一来源的硬件信息,以及,所述第二来源的硬件信息上传至服务器。
6.如权利要求4所述的方法,其特征在于,所述对比第一来源的硬件信息与第二来源的硬件信息是否一致的操作,以及,生成报警提示的操作由服务器完成,所述方法还包括将所述第一来源的硬件信息及对应用户设备的终端标识上传至服务器。
7.如权利要求1所述的方法,其特征在于,所述对比第一来源的硬件信息与第二来源的硬件信息是否一致的操作,以及,生成报警提示的操作在当前用户设备上完成。
8.如权利要求2或3所述的方法,其特征在于,所述用户设备具有终端标识,所述方法还包括若所述第一来源的硬件信息与第二来源的硬件信息一致,则根据所述终端标识从服务器端获取其预存的对应用户设备的硬件信息;将所述第一来源的硬件信息或第二来源的硬件信息,与所述服务器预存的硬件信息进行对比,若不一致,则生成报警提示。
9.如权利要求4所述的方法,其特征在于,还包括若所述第一来源的硬件信息与第二来源的硬件信息一致,则获取用户设备所安装的操作系统反馈的硬件信息;将所述第一来源的硬件信息或第二来源的硬件信息,与所述操作系统反馈的硬件信息进行对比,若不一致,则生成报警提示。
10.如权利要求4所述的方法,其特征在于,还包括若所述第一来源的硬件信息与第二来源的硬件信息一致,则通过访问用户设备所安装的Windows操作系统的应用程序接口 API或Windows管理规范丽I,以及,硬件驱动程序,获得当前用户设备的硬件信息;将所述第一来源的硬件信息或第二来源的硬件信息,与所获得的硬件信息进行对比, 若不一致,则生成报警提示。
11.如权利要求1所述的方法,其特征在于,所述通过访问用户设备的底层硬件,作为硬件信息获取的第一来源,获得当前用户设备的硬件信息的步骤包括访问底层硬件,获得用户设备中的硬件标识信息;依据所述硬件标识信息,在预置的硬 件信息库中提取对应的硬件参数信息。
12.如权利要求11所述的方法,其特征在于,所述硬件标识信息包括厂商ID与硬件设备ID,所述底层硬件包括系统总线、系统管理基本输入输出系统SMBIOS和/或外设端口,所述访问底层硬件的步骤具体包括遍历系统总线,所述系统总线包括外设部件互连PCI总线、系统管理SMBUS总线、I2C总线和/或工业标准结构ISA总线;和/或,读取系统管理基本输入输出系统SMBIOS的信息; 和/或,访问外设端口,发起与对应外设的I/O操作。
13.如权利要求4或8所述的方法,其特征在于,还包括依据所述用户设备第一来源的硬件信息,更新服务器端预存的对应用户设备的硬件信肩、ο
14.一种硬件检测自动报警的装置,其特征在于,包括第一来源硬件信息获取模块,用于通过访问用户设备的底层硬件,作为硬件信息获取的第一来源,获得当前用户设备的硬件信息;第二来源硬件信息获取模块,用于从硬件信息获取的第二来源,获取相同用户设备的硬件信息;所述第二来源为与第一来源不同的硬件信息获取源;硬件信息对比模块,用于对比所述第一来源的硬件信息与第二来源的硬件信息是否一致;报警模块,用于若否,则生成报警提示。
15.如权利要求14所述的装置,其特征在于,所述第二来源硬件信息获取模块包括 系统硬件信息获取子模块,用于获取用户设备所安装的操作系统反馈的硬件信息。
16.如权利要求14所述的装置,其特征在于,所述第二来源硬件信息获取模块包括 系统接口硬件信息获取子模块,用于访问用户设备所安装的Windows操作系统的应用程序接口 API或Windows管理规范丽I,以及,硬件驱动程序,获得当前用户设备的硬件信肩、ο
17.如权利要求14所述的装置,其特征在于,所述用户设备具有终端标识,所述第二来源硬件信息获取模块包括终端标识硬件信息获取子模块,用于根据所述终端标识从服务器端获取其预存的对应用户设备的硬件信息。
18.如权利要求15或16所述的装置,其特征在于,所述硬件信息对比模块,以及,报警模块由服务器完成,所述装置还包括信息上传模块,用于将所述第一来源的硬件信息,以及,所述第二来源的硬件信息上传至服务器。
19.如权利要求17所述的装置,其特征在于,所述硬件信息对比模块,以及,报警模块由服务器完成,所述装置还包括终端标识上传模块,用于将所述第一来源的硬件信息及对应用户设备的终端标识上传至服务器。
20.如权利要求14所述的装置,其特征在于,所述硬件信息对比模块,以及,报警模块在当前用户设备上完成。
21.如权利要求15或16所述的装置,其特征在于,所述用户设备具有终端标识,所述装置还包括预存信息获取模块,用于若所述第一来源的硬件信息与第二来源的硬件信息一致,则根据所述终端标识从服务器端获取其预存的对应用户设备的硬件信息;预存信息对比模块,用于将所述第一来源的硬件信息或第二来源的硬件信息,与所述服务器预存的硬件信息进行对比,若不一致,则生成报警提示。
22.如权利要求17,所述的装置,其特征在于,还包括操作系统信息获取模块,用于若所述第一来源的硬件信息与第二来源的硬件信息一致,则获取用户设备所安装的操作系统反馈的硬件信息;操作系统信息对比模块,用于将所述第一来源的硬件信息或第二来源的硬件信息,与所述操作系统反馈的硬件信息进行对比,若不一致,则生成报警提示。
23.如权利要求17,所述的装置,其特征在于,还包括操作系统接口信息获取模块,用于若所述第一来源的硬件信息与第二来源的硬件信息一致,则通过访问用户设备所安装的Windows操作系统的应用程序接口 API或Windows管理规范WMI,以及,硬件驱动程序,获得当前用户设备的硬件信息;操作系统接口信息对比模块,用于将所述第一来源的硬件信息或第二来源的硬件信息,与所获得的硬件信息进行对比,若不一致,则生成报警提示。
24.如权利要求14所述的装置,其特征在于,所述第一来源硬件信息获取模块包括底层硬件访问子模块,用于访问底层硬件,获得用户设备中的硬件标识信息;硬件参数信息提取子模块,用于依据所述硬件标识信息,在预置的硬件信息库中提取对应的硬件参数信息。
25.如权利要求24所述的装置,其特征在于,所述硬件标识信息包括厂商ID与硬件设备ID,所述底层硬件包括系统总线、系统管理基本输入输出系统SMBIOS和/或外设端口,所述底层硬件访问子模块具体包括系统总线遍历子模块,用于遍历系统总线,所述系统总线包括外设部件互连PCI总线、 系统管理SMBUS总线、I2C总线和/或工业标准结构ISA总线;和/或,主板信息读取子模块,用于读取系统管理基本输入输出系统SMBIOS的信息;和/或,外设端口访问子模块,用于访问外设端口,发起与对应外设的I/O操作。
26.如权利要求17或21所述的装置,其特征在于,还包括硬件信息更新模块,用于依据所述用户设备第一来源的硬件信息,更新服务器端预存的对应用户设备的硬件信息。
全文摘要
本发明提供了一种硬件检测自动报警的方法及装置。所述方法包括通过访问用户设备的底层硬件,作为硬件信息获取的第一来源,获得当前用户设备的硬件信息;从硬件信息获取的第二来源,获取相同用户设备的硬件信息,所述第二来源为与第一来源不同的硬件信息获取源;对比所述第一来源的硬件信息与第二来源的硬件信息是否一致;若否,则生成报警提示。本发明可以使用户直接获知所用设备的描述与其真实信息是否一致。
文档编号G06F11/30GK102306117SQ201110231199
公开日2012年1月4日 申请日期2011年8月12日 优先权日2011年8月12日
发明者李煜, 鲁锦 申请人:奇智软件(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1