我正在使用一个函数来返回此处给出的当前 WiFi 信号强度值:http: //www.dotnet247.com/247reference/msgs/42/211278.aspx
在 Visual Studio 2008 中运行代码时,出现编译错误:
找不到命名空间“ManagementObjectSearcher”的类型。
我正在使用“使用 System.Manangement”
我的总体目标是获取信号强度并将其插入 Windows 窗体上的文本框中,所以一旦我使用下面的函数获取值,我只需将其弹出到框中供用户查看。
知道为什么我会收到这些错误吗?
代码:
public static void signalStrentgh()
{
ManagementObjectSearcher searcher = new
ManagementObjectSearcher(@"root\WMI", "select
Ndis80211ReceivedSignalStrength from MSNdis_80211_ReceivedSignalStrength
where active=true");
foreach (ManagementObject mo in searcher.Get())
{
Console.WriteLine("{0}", mo["Ndis80211ReceivedSignalStrength"]);
}
}
注意* 下面发布的是旧的、不正确的代码版本,用 C++ 完成。这是参考评论和帮助。
int GetSignalStrength()
{
ManagementObjectSearcher *searcher = new ManagementObjectSearcher(
"root\\WMI",
"select Ndis80211ReceivedSignalStrength from
MSNdis_80211_ReceivedSignalStrength where active=true");
ManagementObjectCollection *queryCollection = searcher->Get();
ManagementObjectCollection::ManagementObjectEnumer ator* queryEnum =
queryCollection->GetEnumerator();
while (queryEnum->MoveNext());
ManagementBaseObject* object = queryEnum->get_Current();
Object* signalStrength =
object->GetPropertyValue(L"Ndis80211ReceivedSignalStrengt h");
return (Convert::ToInt32(signalStrength->ToString()));
}