使用 LINQ 查找串行设备列表

发布于 2024-11-01 20:21:00 字数 297 浏览 0 评论 0原文

我使用以下代码来查找连接到 COM 端口的设备列表。

ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\WMI", "SELECT * FROM MSSerial_PortName");

在 Windows XP 中,代码工作正常,但在 Windows-7 中,我收到访问被拒绝异常。在这两种情况下,我都在完全管理权限下运行,那么为什么我会在 Windows 7 而不是 XP 上遇到此错误。

I am using the following code to find a list of Devices attached to COM Port.

ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\WMI", "SELECT * FROM MSSerial_PortName");

With Windows XP, the code works fine, but with Windows-7, I get an Access Denied Exception. I am running under full administrative privilege in both the cases, then why would I face this error with Windows 7 and not XP.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

深者入戏 2024-11-08 20:21:00

您需要提升应用的权限:请参阅此问答

You need to elevate privileges of your app: See this Q&A

尛丟丟 2024-11-08 20:21:00

我刚刚在我的 win7 设备中的 admin 下运行了你的代码,它工作正常,但在用户上下文中失败。即使您自己以管理员身份登录,您的进程也在 UAC 下运行。您需要确保应用程序的提升权限。

I just ran your code under admin in my win7 rig and it worked properly while it failed within user context. Your process is running under UAC even though you yourself is logged in as admin. You need to secure elevated privileges for the application.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文