I have a code in VBA that worked perfectly for a long time. Suddenly it stopped working for no reason. Nothing has changed on my side.
I use it to download web pages and store them in strings like this:
Function something() As String
URL = "www..."
Set XMLHTTP = CreateObject("WinHttp.WinHttpRequest.5.1")
XMLHTTP.Open "GET", URL, False
XMLHTTP.send
something = XMLHTTP.responseText
End Function
at XMLHTTP.send I get the following error:
Run-time error ‘-2147012739 (80072f7d)’: An error occurred in the secure channel support
Whats is the meaning of this error and what can be done?
I tried reading about it but it seems that its a generic error and could be many things. Perhaps Microsoft changed some protocols or something similar?
asked May 18, 2017 at 10:30
7
I had this same error:
6/30/2018
I’m running Excel on windows 7,
On a Mac, In Parallels.
This was a very simple fix.
Goto Control Panel,
Click Network and Internet,
Click Network and Sharing Center,
(at the Bottom Left CLICK Internet Options)
Internet Properties Dialog Box will come up,
Click the Advanced Tab
Scroll to bottom and turn on «Use TLS1.2»
(Mine was already Set Prior to receiving the Error)
Click Apply
Here is the link to the downloads need for the proper Windows OS Update file:
http://www.catalog.update.microsoft.com/search.aspx?q=kb3140245
I downloaded and Installed the UpDate from Windows Explorer (File Manager)
Restarted Windows
and ran the VBA.
It ran perfectly
Thanks to Srinath Gudimetla see his link is below for full details:
https://www.linkedin.com/pulse/working-vba-tls-protocol-srinath-gudimetla
answered Jun 30, 2018 at 22:14
KarlH7KarlH7
911 silver badge3 bronze badges
2
Обновлено 28.11.2022
Добрый день! Уважаемые читатели и гости IT портала Pyatilistnik.org. В прошлый раз мы с вами решали проблему, когда у нас тормозил Directum на терминальной ферме. В сегодняшней ситуации я опять вернусь к данному программному обеспечению и покажу, что мне удалось раскопать в ситуации, что при попытке создать договорной документ и выбрать его из конструктора документов, я получаю предупреждение «Ошибка поддержки безопасных каналов«. Давайте смотреть в чем дело и что можно поменять, чтобы все заработало.
Устранение ошибки поддержки безопасных каналов
Данную проблему я поймал в Directum на своей RDS-ферме. Стало увеличиваться количество обращений со стороны пользователей, что они при попытке создания договорного документа стали видеть ошибку:
Ошибка поддержки безопасных каналов
В логах просмотра событий я ничего толково не обнаружил, начал копать дальше.
- 1️⃣В интернете все копипастят друг у друга, что в данной ситуации помогает включение TLS, но я проверил и правки в реестре не дают ничего, тем более у меня уже они были активированы, я с этим еще сталкивался, когда получал ошибку «Unable to resolve package source» при установке модуля PowerShell.
- 2️⃣Далее если у вас есть антивирусное решение, то я вам советую его отключить на время, пока будите производить тестирование. Антивирус Касперского тут так же был ни причем
- 3️⃣Далее, что я обычно проверяю, это не производилась ли установка нового софта или обновлений Windows. Обязательно выведите список установленных программ и посмотрите, нет ли там чего-то нового. Бывает ситуация, что некоторые программы могут конфликтовать при совместном использовании, например очень частая ситуация с КриптоПРО, старыми версиями. Если она есть, то попробуйте ее удалить.
- 4️⃣Проверьте не было ли установки новых обновлений, это можно посмотреть в истории параметров Windows или в оснастке appwiz.cpl.
В результате на Windows Server прилетело KB5018411 на клиентские Windows 10 и Windows 11 прилетело kb5018410, что в итоге делать, на текущий момент просто удалять и ждать новых обновлений от Microsoft.
Если у вас есть поддержка от Directum, то стоит задать вопрос туда возможно. что-то подскажут, у меня такой возможности нет
Чтобы удалить KB5018411 я воспользуюсь командной строкой и утилитой wusa. Введите:
wusa /uninstall /kb:5018411
У вас выскочит окно с подтверждением удаления данного обновления. Нажмите ок, начнется процесс.
Так же вы можете сделать, и тихое удаление добавим ключи: /quiet /norestart
wusa /uninstall /kb:5018411 /quiet /norestart
После этого мой Directum заработал, посмотрю что будет со следующими обновлениями, может Mixrosoft пофиксит это.
Обновление 28.11.2022
Как и ожидалось, данная ошибка была устранена установкой ноябрьских обновлений KB5019964. С вами был Иван Семин, автор и создатель IT проекта Pyatilistnik.org.
У меня была одна и та же проблема, и я попробовал множество решений, предлагаемых на разных должностях, но до сих пор не имел успеха. Я подробно расскажу о решении, которое сработало для меня со ссылкой на проблему, поскольку в моем случае это был PayPal. Я не открыл новую должность, так как это может быть не просто проблема с PayPal в будущем.
Решение представляет собой комбинацию нескольких решений, связанных с stackoverflow, с аналогичными проблемами, но это, пожалуй, самое лучшее, что можно добавить.
Проблема
Попытка протестировать IP-адрес PayPal в Windows Server 2008 с использованием классического ASP с помощью Sandbox PayPal возвращает ошибку «Ошибка в поддержке безопасного канала».
Почему это проблема
PayPal требует, чтобы все коммуникации с их системами были максимально безопасными. Вам потребуется соединение, которое является TLS 1.2. Windows Server 2008 по умолчанию не является TLS 1.2.
PayPal бросил некоторую путаницу в микс, сказав, что вам нужен сертификат Verisign G5, который вы делаете для корневого сервера, а не для домена, на котором запущен ваш код. Я также не устанавливал никаких сертификатов PayPal, поскольку я не использую API. Я не думаю, что вам нужны ваши коммиты с сайта HTTPS, хотя мой домен защищен с помощью стандартного сертификата GoDaddy EV, хотя после этого я прошел тест на сайте без HTTPS, и это тоже сработало.
Мое решение
-
Сначала проверьте, какой тип безопасности используется вашим сервером через Лаборатории SSL . Это должно быть TLS1.2 или выше , а не другие TLS или SSL. Он также должен иметь шифрование SHA256. Возможно, вам потребуется исправить сервер: https://support.microsoft.com/en- нас/кб/3106991 .
-
Используйте IISCrypto для установки правильных TLS и шифров . Я использовал изменения реестра, предложенные в другом месте в stackoverflow, но это не сработало и на самом деле полностью напортачивало мой сервер для всего, используя сообщения HTTPS, а не только для моего сайта разработки! IISCrypto также обрабатывает шифры.
-
Убедитесь, что ваш пул приложений v4.5 , что само по себе неясно, потому что IIS может предлагать только v4.0 в качестве опции. Однако это, вероятно, фактически v4.5. Вы можете проверить это с помощью https://msdn. microsoft.com/en-us/library/hh925568(v=vs.110).aspx .
-
В вашем коде вам нужно использовать
Server.CreateObject ("MSXML2.XMLHTTP.6.0")
, а неServer.CreateObject ("MSXML2.ServerXMLHTTP.6.0")
, как указано выше.
Теперь я понятия не имею, почему не-сервер XMLHTTP работает так, как будто это противоречит документации, стоящей за ним. Прямо сейчас, после 10 дней стресса, паники и разочарования, мне все равно! Надеюсь, это полезно для других.
Поиск решения был кошмаром, поэтому я добавлю несколько фраз ниже, чтобы помочь другим в поиске:
Ошибка IPN PayPal с ошибкой сервера
Ошибки PayPal SSL Windows 2008
Произошла ошибка в поддержке защищенного канала
классические ошибки протокола ASP PayPal Sandbox
I’d like to publicly thank Rackspace and GoDaddy for their help with this. I’d like to publicly state that I found paypal have the worst technical support ever and just do not care, constantly pointing to their own docs, if they ever respond. They say they’ve been sending emails out about this since September 2014 but I never received one. These new requirements are active on the PayPal Sandbox but go live in September 2016. I only came across it as developing a new solution so needed the sandbox — if you’re running live you won’t know about Проблема until it hits and then you’re dead in the water. Test your entire payment system on the PayPal sandbox asap is my advice!!