'ManagementClass' não existe no espaço de nome 'System.Management'
-
22-09-2019 - |
Pergunta
Oi estou usando este método para obter o endereço MAC
public string GetMACAddress()
{
System.Management.ManagementClass mc = default(System.Management.ManagementClass);
ManagementObject mo = default(ManagementObject);
mc = new ManagementClass("Win32_NetworkAdapterConfiguration");
ManagementObjectCollection moc = mc.GetInstances();
foreach (var mo in moc)
{
if (mo.Item("IPEnabled") == true)
{
return mo.Item("MacAddress").ToString();
}else
return null;
}
}
Mas eu recebo este erro
Compiler Error Message: CS0234: The type or namespace name 'ManagementClass' does not exist in the namespace 'System.Management' (are you missing an assembly reference?)
O que eu tenho que fazer para consertar isso?
obrigado
Solução
Você precisa Adicione uma referência para o System.Management em seu projeto.
Outras dicas
Eu acho que o problema aqui é que você não tem um "ponteiro" adequado para o System.Management Assembly. Você deve:
- Use uma instrução usando - Em alguns do seu código, você não prefixou as classes w/ System.Management, então você deve incluir:
uma.)
using System.Management
ou
b.) Um bloco de uso
using(System.Management)
{
//your code goes here
}
Em seguida, você precisa ter um Referência de montagem real. Para fazer isso no Visual Studio, clique com o botão direito do mouse no seu projeto (ou nas referências) na janela Solution Explorer e clique em Adicionar referência. Após a lista tabula, encontre o System.Management.dll na guia .NET. Depois de adicioná -lo, deve funcionar!
No Solution Explorer:
- Adicione referência
- Encontre e adicione o System.Management na classe .NET
é isso
Você tem o System.Management Assembly referenciado?
Por favor, primeiro certifique -se de adicionar a biblioteca Systems.Management
em suas referências ao seu projeto.
Em seguida, basta usar essa montagem encaminhada, incluindo em sua classe.
using System.Windows;