Итак, я пытаюсь подключиться к моему модему и получаю
80070005 Ошибка доступа запрещена
... при попытке доступа.
Я не совсем уверен, в чем здесь проблема, потому что я новичок в таких добрых делах.
Как я могу решить это?
namespace ConsoleApp2
{
class Gsmsms
{
private SerialPort gsmPort = null;
private bool isDeviceFound = false;
public Gsmsms()
{
gsmPort = new SerialPort();
}
public GSMcom[] List()
{
List<GSMcom> gsmcom = new List<GSMcom>();
try
{
ConnectionOptions option = new ConnectionOptions();
option.Impersonation = ImpersonationLevel.Impersonate;
option.EnablePrivileges = true;
// string conn = "Server=localhost;Database=election_db2;Uid=root;Pwd=;persistsecurityinfo=True;port=3306;SslMode=none";
string connString = $@"\\{Environment.MachineName}\root\cimv2";
ManagementScope scope = new ManagementScope(connString, option);
scope.Connect();
ObjectQuery query = new ObjectQuery("Select * from Win32_POTSModem");
ManagementObjectSearcher search = new ManagementObjectSearcher(scope, query);
ManagementObjectCollection collection = search.Get();
foreach (ManagementObject obj in collection)
{
string portname = obj["Name"].ToString();
string portDescription = obj["Description"].ToString();
if (portname != "")
{
GSMcom com = new GSMcom();
com.Name = portname;
com.Description = portDescription;
gsmcom.Add(com);
}
}
}
catch(Exception x) {
Console.WriteLine(x);
}
return gsmcom.ToArray();
}
public bool Search()
{
IEnumerator enumerator = List().GetEnumerator();
GSMcom com = enumerator.MoveNext() ? (GSMcom)enumerator.Current : null;
if (com == null)
{
isDeviceFound = false;
Console.WriteLine("DEVICE NOT FOUND");
}
else
{
isDeviceFound = true;
Console.WriteLine("HUWAIE");
}
return isDeviceFound;
}
}
}