【发布时间】:2013-12-29 12:49:45
【问题描述】:
我需要创建一个程序来检测是否插入了某个 USB 设备。所以假设我们有一个设备有VID (Vendor ID) = 9839 和PID (Product ID) = 5453。
我需要一个代码,当我插入设备时,程序会自动获取设备的VID 和PID,并将它们写入两个 texbox。
那很简单,我用:
If textbox1.Text = "9839" And textbox2.Text = "5453" then
MsgBox("You plugged the device!")
Else
MsgBox("Device is not plugged")
End If
但我需要将插入设备的VID 和PID 放入文本框的代码。
所以如果有人可以帮助我,请告诉我:)
我尝试了一个使用 USBCLASSLibrary Demo 的解决方案 这是一个免费的 dll,但我的电脑是 x64 的,而 dll 是 x32,所以我在 C#(错误的图像格式)或其他东西中出现错误。
我尝试使用 CodeProject 上的代码
private void USBPort_USBDeviceAttached(object sender,
USBClass.USBDeviceEventArgs e)
{
if (!MyUSBDeviceConnected)
{
if (USBClass.GetUSBDevice(MyDeviceVID, MyDevicePID,
ref USBDeviceProperties, false))
{
//My Device is connected
MyUSBDeviceConnected = true;
}
}
}
private void USBPort_USBDeviceRemoved(object sender,
USBClass.USBDeviceEventArgs e)
{
if (!USBClass.GetUSBDevice(MyDeviceVID, MyDevicePID,
ref USBDeviceProperties, false))
{
//My Device is removed
MyUSBDeviceConnected = false;``
}
}
【问题讨论】:
-
“要求代码的问题必须证明对正在解决的问题有最低限度的了解。包括尝试的解决方案、它们为什么不起作用以及预期的结果。”