C#怎么获取已知USB设备驱动信息
1个回答
推荐于2016-04-09 · 知道合伙人软件行家
关注
展开全部
使用WMI中的Win32_PnPSignedDriver类
Win32_PnPSignedDriver的详细信息:http://msdn2.microsoft.com/en-us/library/aa394354.aspx
使用WMI(Windows Management
Instrumentation)是最为方便的方法。可以根据下面的程序片段来得到我们所需要的DriverVersion。
private string GetDriverVersion( string hardwareID )
{
string queryString = "SELECT HardwareID, DriverVersion FROM Win32_PnPSignedDriver";
SelectQuery selectQuery = new SelectQuery( queryString );
ManagementObjectSearcher searcher = new ManagementObjectSearcher(selectQuery);
foreach (ManagementObject mo in searcher.Get())
{
object tempID = mo["HardwareID"];
if( tempID!=null && tempID.ToString().ToUpper() == hardwareID.Trim().ToUpper() )
{
return mo["DriverVersion"].ToString();
}
}
return "UnknownVersion";
}
这个方法唯一不好的方面是不支持Windows2000,只有Windows Vista,Windows XP和Windows
2003支持这个类。
Win32_PnPSignedDriver的详细信息:http://msdn2.microsoft.com/en-us/library/aa394354.aspx
使用WMI(Windows Management
Instrumentation)是最为方便的方法。可以根据下面的程序片段来得到我们所需要的DriverVersion。
private string GetDriverVersion( string hardwareID )
{
string queryString = "SELECT HardwareID, DriverVersion FROM Win32_PnPSignedDriver";
SelectQuery selectQuery = new SelectQuery( queryString );
ManagementObjectSearcher searcher = new ManagementObjectSearcher(selectQuery);
foreach (ManagementObject mo in searcher.Get())
{
object tempID = mo["HardwareID"];
if( tempID!=null && tempID.ToString().ToUpper() == hardwareID.Trim().ToUpper() )
{
return mo["DriverVersion"].ToString();
}
}
return "UnknownVersion";
}
这个方法唯一不好的方面是不支持Windows2000,只有Windows Vista,Windows XP和Windows
2003支持这个类。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询