获取设备管理器上串口的名字C#
时间: 2024-10-16 09:19:42 浏览: 65
在C#中,你可以使用System.Management命名空间下的ManagementObjectSearcher类来获取设备管理器中的串口信息。具体步骤如下:
1. 引入所需命名空间:
```csharp
using System;
using System.Management;
```
2. 定义搜索查询,查找名为"Serial Port"的设备:
```csharp
string query = "SELECT * FROM Win32_SerialPort";
```
这里的`Win32_SerialPort`是设备管理器中的类名,用于指定你要查询的是串口。
3. 创建ManagementObjectSearcher并执行查询:
```csharp
ManagementObjectSearcher searcher = new ManagementObjectSearcher(query);
```
4. 遍历找到的结果集,获取每个串口的信息(包括名字):
```csharp
foreach (ManagementObject device in searcher.Get())
{
string portName = (string)device.Properties["DeviceID"].Value; // DeviceID通常表示端口号
Console.WriteLine("串口号名称: " + portName);
}
```
5. 别忘了处理异常,并关闭资源:
```csharp
try
{
// 执行上述代码...
}
catch (Exception ex)
{
Console.WriteLine("错误: " + ex.Message);
}
finally
{
if (searcher != null)
searcher.Dispose();
}
```
阅读全文