c# - 查看已安装设备的端口地址和属性

标签 c# sockets port

我在计算机上安装了设备(例如读卡器)。我运行了这段代码,但没有填充ComboBox

代码:

using System.Management;
using System.IO.Ports;

foreach (string portname in SerialPort.GetPortNames())
        {
            comboBox1.Items.Add(portname);
        }

由于这不起作用,如何查看计算机上安装的设备的端口地址和属性?

最佳答案

GetPortNames()函数提供了不是套接字的串行端口名称see GetPortNames() page的列表。

这是documentation on the SerialPort class,它具有可用于确定特定串行端口的属性(包括波特率等)的方法。我怀疑您想要的基本轮廓是使用SerialPort.GetPortNames()方法生成端口名列表,并然后在遍历SerialPort (String)提供的端口列表时,使用GetPortNames()询问特定端口的属性。

如果实际上是您感兴趣的套接字,您可能想知道一个list of well know TCP and UDP ports,但是像海盗的代码一样,它们更像是准则,而不是实际的规则,并且端口上的实际内容可能不是标准用法文档中的内容。这取决于正在运行的软件以及软件的配置方式。除了按标准列表,向该端口发送特定于服务的查询或使用utility such as netstat生成列表之外,我不知道任何一种方法来了解使用特定端口的服务。

关于c# - 查看已安装设备的端口地址和属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11951261/

相关文章:

c# - Lazy Operator C# 用于自己的数据访问

c - 是否有可能在c中同时运行主线程及其子线程

http - 多个客户端如何同时连接到服务器上的一个端口,比如 80?

integer - 什么时候应该使用 std_logic_vector,什么时候应该使用其他数据类型?

c# - 如何创建 MAPI32.dll stub 以便能够从 MS Word 获取 "send as attachment"?

c# - 如何将包含 "c:\test.zip"的字符串替换为 @"c:\test.zip"

c# - 将 JSON 反序列化为对象

node.js - 当服务器中的套接字数量超过 10 个时,是否难以保持与 Node 服务器的连接?

C++在套接字上发送recv

c - 使用 C/C++ 在 Linux 中与终端交互