接続された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");
}
}
}
}