Я пытаюсь отправить электронное письмо из системы, которая пытается использовать как можно меньшую пропускную способность.С этой целью я кеширую DNS-запросы локально и пытаюсь отправить напрямую на IP-адрес вместо имени домена.
Это фрагмент, который отправляет мои данные.
String^ _EmailServer = "smtp.gmail.com";
String^ _LoginName = "me@gmail.com";
String^ _LoginPassword = "mypassword";
System::Net::Mail::SmtpClient ^_SmtpClient = gcnew System::Net::Mail::SmtpClient(_EmailServer);
System::Net::NetworkCredential ^_NetworkCredential = gcnew System::Net::NetworkCredential(_LoginName, _LoginPassword);
_
_SmtpClient->DeliveryMethod = System::Net::Mail::SmtpDeliveryMethod::Network;
_SmtpClient->UseDefaultCredentials = false;
_SmtpClient->Credentials = _NetworkCredential;
_SmtpClient->EnableSsl = true;
_SmtpClient->Send(_MailMessage);
Теперь странная вещь заключается в том, что фрагмент работает, но если я сам выполню поиск DNS и заменим _EmailServer
на IP-адрес, который я определил, приведенный выше код выдает System::Security::Authentication::AuthenticationException
, который говорит The remote certificate is invalid according to the validation procedure
.
Этопроисходит сбой, даже если я выполняю поиск и сразу пытаюсь отправить его, используя разрешенный IP-адрес.