使用LINQ查找串行设备列表

时间:2011-04-18 09:01:21

标签: c# .net linq serial-port

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

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

使用Windows XP,代码运行正常,但使用Windows-7,我得到Access Denied Exception。我在两种情况下都在完全管理权限下运行,那么为什么我会在Windows 7而不是XP中遇到此错误。

2 个答案:

答案 0 :(得分:1)

我只是在我的win7装备管理器下运行你的代码,它在用户上下文中失败时正常工作。即使您自己以管理员身份登录,您的进程也在UAC下运行。您需要为应用程序保护提升的权限。

答案 1 :(得分:1)

您需要提升应用的权限:请参阅this Q&A