我想要一个控制元素来显示正在运行的程序中有关连接的 USB 设备的更改。搜索后,我设法找到了 USB 设备并将它们打印出来。我还处理获取有关删除和连接的信息。
但是现在有一个问题,当我将两个部分结合起来时它不起作用。这是我的代码:
namespace usbPortAbfrage
{
public partial class Form1 : Form
{
ArrayList result = new ArrayList();
public Form1()
{
InitializeComponent();
bla();
}
public ArrayList GetComFriendlyNames()
{
ArrayList names = new ArrayList();
try
{
ManagementObjectSearcher searcher =
new ManagementObjectSearcher("root\\WMI",
"SELECT InstanceName, PortName FROM MSSerial_PortName");
foreach (ManagementObject port in searcher.Get())
{
names.Add(port["PortName"]);
}
}
catch (ManagementException)
{
}
return names;
}
protected override void WndProc(ref Message m)
{
base.WndProc(ref m);
if (m.WParam.ToInt32() == 0x8004)
{
MessageBox.Show("Gerät entfernt");
richTextBox1.Clear();
bla();
}
if (m.WParam.ToInt32() == 0x8000)
{
MessageBox.Show("Gerät angeschlossen");
richTextBox1.Clear();
bla();
}
}
public void bla()
{
richTextBox1.Clear();
ArrayList test = GetComFriendlyNames();
foreach (string name in test)
{
richTextBox1.AppendText(name + "\n");
}
}
}
}