1

我们有在 .NET 3.5 框架中开发的工业自动化应用程序。

我必须为我们的用户列出计算机中可用的串行端口。作为其中的一部分,如果任何串行端口已经打开,我必须显示“使用中”状态。我试过谷歌但没有运气。

有人能帮助我吗?

问候,

克里希吉

4

2 回答 2

2

尝试使用排他锁打开 com 端口,如果失败,将其标记为打开。

于 2008-10-10T05:30:36.847 回答
0

有未记录的 API 可以找到系统中打开的所有句柄,然后您可以检查哪些是对串行端口开放的。那是如果用户将始终是管理员并且您不关心使用 .Net 和记录的 API。

有记录的 API 可以找到所有存在的 COM 端口,然后您可以尝试打开所有这些端口。这听起来很粗糙和缓慢,但它比替代方案更不邪恶。

于 2008-10-10T05:25:19.510 回答