У меня есть приложение AC #, требующее прав администратора. Это приложение должно собрать все подключенные сетевые диски и сохранить их в списке.
Мой ПК имеет 3 подключенных сетевых диска. Но когда я запускаю свое приложение как администратор, список сетевых дисков становится пустым.
Вот мой код:
public IEnumerable<NetworkConnection> GetNetworkConnections()
{
List<NetworkConnection> networkConnections = new List<NetworkConnection>();
try
{
var path = new ManagementPath();
path.NamespacePath = "\\ROOT\\CIMV2";
path.ClassName = "Win32_NetworkConnection"; //https://msdn.microsoft.com/en-us/library/aa394220(v=vs.85).aspx
var management = new ManagementClass(path);
foreach (ManagementObject obj in management.GetInstances())
{
NetworkConnection networkConnection = new NetworkConnection()
{
LocalName = (string)obj.Properties["LocalName"].Value,
Name = (string)obj.Properties["Name"].Value,
RemotePath = (string)obj.Properties["RemotePath"].Value,
UserName = (string)obj.Properties["UserName"].Value,
IsPersistent = (bool)obj.Properties["Persistent"].Value,
ConnectionState = (string)obj.Properties["ConnectionState"].Value
};
networkConnections.Add(networkConnection);
}
}
catch (Exception ex)
{
log.Error($"Failed to get network connections.", ex);
}
return networkConnections;
}
Я также проверил это в Windows 7 и Windows 8, и он работает. Только не в Windows 10.
Может быть, что диски не указаны в списке, потому что диски не были назначены в качестве администратора?
Любая помощь очень ценится! Спасибо