当正常运行的系统突然出现问题时问题大多是由程序Bug或设备驱动程序损坏造成的虽然使用Windows设备管理器能够非常容易的看到当前正在使用的某一个硬件设备的驱动程序的详细信息但是设备管理器有时候并不能解决问题 设备管理器不能保留硬件设备驱动程序的历史记录是其中一个原因当然系统产生故障时设备管理器允许你恢复硬件设备的驱动程序到一个旧的版本但是它不能显示某个设备已经安装驱动程序的版本信息使你不能够确定哪个驱动工作是正常的所以记录设备驱动程序的历史记录是非常重要的因为这些记录使你能够查看哪个版本的驱动程序工作正常哪个版本的驱动程序有问题 Windows XP和Windows Vista包含了一个命令行工具能够帮助你跟蹤硬件设备的驱动程序历史这个工具就是驱动查询工具你可以通过在命令行窗口中输入driverqueryexe来运行驱动查询工具通过上面的操作你将看到和图A相似的屏幕输出 图A驱动查询工具显示使用中的设备的驱动程序 正如你在图中看到的驱动查询工具只列出了一些系统硬件设备驱动程序的基本信息当你仔细查看这个列表时你大概会发现在这个列表中没有包含几个重要的信息驱动查询工具没有包含任何驱动程序的版本历史记录并且它没有显示驱动程序的版本信息但是有几个参数能让driverqueryexe变的更有用 例如你能够通过几个参数生成一个Excel电子表格表格包含系统中安装的设备驱动程序的详细信息驱动查询工具不能自动的生成设备驱动程序的历史记录报表但是你可以通过周期性运行driverqueryexe命令生成电子表格来建立自己的驱动程序历史记录通过查看不同的表格你能够知道系统中每个设备的驱动程序配置的详细日期 生成设备驱动程序详细信息表的最简单的命令是 Driverquery /fo:csv –v >csv 在这个命令中/fo参数告诉driverqueryexe你想要输出格式化信息在这里我们把设备驱动信息输出成CSV格式CSV是一个通过逗号分隔信息的格式它能够在Excel中打开CSV格式并不是driverqueryexe能够输出的唯一格式你也可以选择输出成LIST格式或TABLE格式 /v参数使driverqueryexe输出设备驱动程序尽可能详细的信息但对签名的驱动无效 /v参数后面的大于号是一个重定向符号它把driverqueryexe输出到屏幕的信息重定向到一个文件在这里是csv文件选择这个文件名是因为它能够反映文件日期当用Excel打开这个文件我们发现它实际上只提供了设备驱动程序一小部分有用的信息还有更多的资料在屏幕上根本不适合 图B驱动查询工具提供的每个设备驱动的信息 驱动查询工具通过/v参数输出了大量的信息但是它还是没有驱动程序的版本信息唯一的方法是通过链接日期列跟蹤驱动的变更信息虽然它与驱动的版本号不一样但它与驱动版本号的作用是一样的 由于这个表格不包含驱动程序是否通过签名所以驱动查询工具提供了另一个参数来查看驱动程序的签名信息可以通过/si参数查看设备驱动程序的签名信息例如如果你想要生成设备驱动程序签名信息的表格可以通过下面的命令 Driverquery /fl:csv /si >csv 图C设备驱动程序的签名信息 要解决驱动程序产生的问题一个驱动查询工具是远远不够的但是通过一个小小的创新你能够使用这个小工具生成一个设备驱动程序使用信息的历史记录当发生故障时你可以通过这个记录分析哪些变动导致了故障的产生 |