WMI ManagementObjectSearcher使用时出现缺失指令或程序集引用?

8

我找到了这个链接:

使用C#检测Windows上的杀毒软件

然而,当我在Visual C# Express Edition 2008中尝试运行此代码时,它显示:

Error 1 The type or namespace name 'ManagementObjectSearcher' could not be found 
(are you missing a using directive or an assembly reference?) 
C:\Users\Andy\Documents\Visual Studio 2008\Projects\ConsoleApplication1\ConsoleApplication1\Program.cs 15 17 ConsoleApplication1

在其他两行中出现了类似的错误,这些错误看起来很重要!

看起来代码段缺少一些导入或其他东西?

我正在使用Windows 7...请帮忙!

Andy

1个回答

26

您缺少包含ManagementObjectSearcher类型的程序集的引用,该类型位于System.Management命名空间中。添加此命名空间即可正常工作。

您需要右键单击项目 -> 添加引用,然后添加 System.Management 程序集。创建新项目时不会自动添加 System.Managment。

WMI 参考
WMI + C#


这实际上是在代码中,查看此 pastebin 以确切了解我所拥有的内容:http://pastebin.com/y7s76Uf4 - RenegadeAndy
1
你必须向项目本身添加引用。请查看我的编辑。 - Femaref
太好了,现在它可以运行了。但是它认为我没有安装防病毒软件,我正在运行Windows 7 - 我想它不支持。你知道需要改变什么才能让它在Windows 7下检测到吗? - RenegadeAndy
实际上通过稍微改变一行代码:@"\root\SecurityCenter2",我成功地解决了这个问题。你知道 WMI 的文档在哪里吗?并且如何在 C# 中使用它? - RenegadeAndy
我无法真正帮助你,我需要自己搜索。如果您需要进一步的帮助,请提出另一个问题。 - Femaref
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接