Msxml3 dll системная ошибка 2146697208

   GrayS19

28.10.20 — 16:25

Есть Win Server 2003 и сайт, перешедший с HTTP на HTTPS.

Есть код:

    ХТТПЗапрос  = СоздатьОбъект(«Microsoft.XMLHTTP»);

    Stream = СоздатьОбъект(«ADODB.Stream»);

    Stream.Mode = 3;

    Stream.Type = 1;

    Stream.Open();

    
    Скрипт = СоздатьОбъект(«MSScriptControl.ScriptControl»);

    Скрипт.language=»vbscript»;

    Скрипт.AddObject(«s», Stream);

    Скрипт.AddObject(«x», ХТТПЗапрос);

    Попытка                      

        ХТТПЗапрос.Open(«GET»,АдресЗапроса, 0);

        ХТТПЗапрос.Send();  

        
        Скрипт.Eval(«s.Write(x.responseBody)»);

        Stream.SaveToFile(ИмяФайла,2);

        РезСтрока = «Получен файл  :» + СокрЛП(ИмяФайла);

    Исключение //Если не получается установить связь выдаем причину

        Сообщить(ОписаниеОшибки());

    КонецПопытки;    

Если в адресе запроса http:// — всё в порядке,

если https:/ — msxml3.dll: Системная ошибка: -2146697208

Версия msxml3.dll — MSXML 3.0 SP10

Под Win 7 всё работает, msxml3.dll — MSXML 3.0 SP11.

Сервер 2003 пока не обновляем.

   GrayS19

1 — 28.10.20 — 16:28

Пробовал через WinHttp.WinHttpRequest.5.1

    wHTTP = СоздатьОбъект(«WinHttp.WinHttpRequest.5.1»);

    RequestTimeout = 6;

    wHTTP.Open(«GET»,АдресЗапроса,1);

    wHTTP.Send();

    Рез = wHTTP.WaitForResponse(RequestTimeout);

    Если Рез = -1 Тогда

        Ответ = СокрЛП(wHTTP.ResponseText());

    Сообщить(Ответ);

    КонецЕсли;    

Если в адресе запроса http:// — всё в порядке,

если https:/ —

Рез = wHTTP.WaitForResponse(RequestTimeout);

{D:ISN1C_ОБРАБОТКИРАБОТА С HTTP.ERT(127)}: WinHttp.WinHttpRequest: Не удается установить соединение с сервером

   GrayS19

2 — 28.10.20 — 16:36

   trdm

3 — 28.10.20 — 16:54

(2) Забирай питоном — у него свой свежий протокольный качатель.

Обрабатывай 1С-ом.

   GrayS19

4 — 28.10.20 — 17:15

Если вместо ХТТПЗапрос  = СоздатьОбъект(«Microsoft.XMLHTTP»);

пробвать ХТТПЗапрос  = СоздатьОбъект(«Msxml2.ServerXMLHTTP.6.0»);

то падает уже с сообщением: msxml6.dll: Не удается установить соединение с сервером

   etc

5 — 28.10.20 — 17:20

(0) не знаю как у Microsoft.XMLHTTP, но у HTTPСоединения нужно явно указывать что это безопасное соединение.

На штатные методы переделать что мешает? Старая платформа?

   Garikk

6 — 28.10.20 — 17:35

(2) (4) отвечает, через ie на самом сервере они открываются так?

   Garykom

7 — 28.10.20 — 17:41

(0) сертификаты обновить надо на 2003 они давно протухли

и да это не совсем тривиально их обновить

   acht

8 — 28.10.20 — 17:46

(7) Все проще и грустней. Сайт откликается по TLSv1.2 и SSLv3. Windows 2003 умеет только в TLS 1.0. Закопайте уже стюардессу.

   trdm

9 — 28.10.20 — 19:15

Я с WinXP питоном забирал.

   MWWRuza

10 — 28.10.20 — 22:05

Вот тут почитайте: https://olegon.ru/showthread.php?t=26748

Была у меня аналогичная проблема под XP, с базой ШК от ОлегОна. Там, по ссылке, мне помогли, и все тогда заработало. Но, было это три года назад, сейчас уже не помню подробностей. А машины той, с XP-шкой, уже нет давно.

   Turku

11 — 28.10.20 — 23:42

(0) Win2003 не умеет в TLS1.2. Для винХП это вроде как решалось накатом последнего Апдейтпака от Симпликса. ХП по факту перестали поддерживать в 2019г. Для 2003 — хз.

   big

12 — 29.10.20 — 05:38

Установите OpenSSL и всё должно работать. Ещё можно попробовать пользоваться curl, т.к. есть у него хорошая опция -k, когда он небезопасно работает, наплевав на всё  )))

Конечно могут быть нюансы, но у нас такой вариант работает на Win-2003

   GrayS19

13 — 29.10.20 — 08:43

(6) IE с сервера по HTTP получает ответ, по HTTPS : надпись «Подключение» — и всё, белый экран без сообщений

   GrayS19

14 — 29.10.20 — 08:50

(8) SSL 3.0 есть, а вот TLS только 1.0

   acht

15 — 29.10.20 — 09:34

(14) >  SSL 3.0 есть

А разрешен?

   acht

16 — 29.10.20 — 09:40

(15)+ В общем, твой сайт умеет в следующее:

Cipher    Proto    Strength    Algo    Key    KeyEx

AES128-SHA    SSLv3    High    AES    128-bit    RSA

AES256-SHA    SSLv3    High    AES    256-bit    RSA

CAMELLIA128-SHA    SSLv3    High    Camellia    128-bit    RSA

CAMELLIA256-SHA    SSLv3    High    Camellia    256-bit    RSA

DHE-RSA-AES128-SHA    SSLv3    High    AES    128-bit    DH

DHE-RSA-AES256-SHA    SSLv3    High    AES    256-bit    DH

DHE-RSA-CAMELLIA128-SHA    SSLv3    High    Camellia    128-bit    DH

DHE-RSA-CAMELLIA256-SHA    SSLv3    High    Camellia    256-bit    DH

AES128-GCM-SHA256    TLSv1.2    High    AESGCM    128-bit    RSA

AES128-SHA256    TLSv1.2    High    AES    128-bit    RSA

AES256-GCM-SHA384    TLSv1.2    High    AESGCM    256-bit    RSA

AES256-SHA256    TLSv1.2    High    AES    256-bit    RSA

CAMELLIA128-SHA256    TLSv1.2    High    Camellia    128-bit    RSA

CAMELLIA256-SHA256    TLSv1.2    High    Camellia    256-bit    RSA

DHE-RSA-AES128-GCM-SHA256    TLSv1.2    High    AESGCM    128-bit    DH

DHE-RSA-AES128-SHA256    TLSv1.2    High    AES    128-bit    DH

DHE-RSA-AES256-GCM-SHA384    TLSv1.2    High    AESGCM    256-bit    DH

DHE-RSA-AES256-SHA256    TLSv1.2    High    AES    256-bit    DH

DHE-RSA-CAMELLIA128-SHA256    TLSv1.2    High    Camellia    128-bit    DH

DHE-RSA-CAMELLIA256-SHA256    TLSv1.2    High    Camellia    256-bit    DH

ECDHE-RSA-AES128-GCM-SHA256    TLSv1.2    High    AESGCM    128-bit    ECDH

ECDHE-RSA-AES128-SHA256    TLSv1.2    High    AES    128-bit    ECDH

ECDHE-RSA-AES256-GCM-SHA384    TLSv1.2    High    AESGCM    256-bit    ECDH

ECDHE-RSA-AES256-SHA384    TLSv1.2    High    AES    256-bit    ECDH

Что ты из этого можешь — смотри сам.

   GrayS19

17 — 30.10.20 — 11:07

В умных статьях про TLS 1.2 и Windows Server 2003 SP2 (https://www.atraining.ru/beast-move-from-ssl-to-tls/) упоминаются 2 обновления :

KB938397 и KB968730. На офподдержке таких страниц давно нет :(

http://support.microsoft.com/kb/938397 и http://support.microsoft.com/kb/968730 ведут в никуда. Может у кого есть живые ссылки на эти обновления? На одном ресурсе даже на внутренний FTP сервер видел, но естественно нерабочая.

   GrayS19

18 — 30.10.20 — 11:11

WindowsServer2003-KB340178-SP2-x86-RUS скачал и установил. msxml3.dll и msxml6.dll после него не поменялись — как и ожидалось толку = 0

   bmitkin

19 — 30.10.20 — 11:21

Сталкивался с подобной проблемой, перешёл на использование curl

Команда = «cmd /c curl -k «»» + УРЛ + «»» > » + ИмяФайла;

WshShell = СоздатьОбъект(«WScript.Shell»);

WshShell.Run(Команда, 0, -1);

и в файле ИмяФайла получаем ответ сервера.

   GrayS19

20 — 16.11.20 — 11:07

(19) — Большое спасибо. Самый простой из рабочих вариантов. Питон нужно установить и скрипт знать как сделать, а тут просто консольная команда.

   big

21 — 16.11.20 — 14:45

(20) На такой вариант ещё в (12) было рассказано. ))

   serpentt

22 — 16.11.20 — 15:15

(18) Не мучайтесь. Пробовали все варианты что нашли для win2003 по WinHTTP и XMLHTTP. Ничего не работает. Перешли на CURL.

   Chesnok

23 — 07.12.20 — 21:30

(19) Доброго дня.

Файл создается пустой. В чем может быть дело?

Команда = cmd /c curl -k «https://www.nbrb.by/Services/XmlExRates.aspx?ondate=12/07/2020»; > E:1Ccourse_1.txt

   bmitkin

24 — 07.12.20 — 21:59

Запустите команду в консоли. Может прав доступа не хватает — она скажет.

И точка с запятой явно лишние.

   big

25 — 08.12.20 — 04:59

(23) Вот так попробуйте

Команда = cmd /k curl -k «https://www.nbrb.by/Services/XmlExRates.aspx?ondate=12/07/2020»; -v > E:1Ccourse_1.txt

   Chesnok

26 — 08.12.20 — 10:32

(24) «;» нет, не знаю как в пост попала.

   NorthWind

27 — 08.12.20 — 10:39

Кстати, вопрос по TLS 1.0. Есть довольно много оборудования с веб-мордами, которое держит только его. Иногда веб-морды приходится выставлять в инет. На него последнее время довольно сильно ополчились, браузеры уже прекращают поддержку. В связи с этим вопрос — насколько велики риски продолжения использования таких вещей?

   NorthWind

28 — 08.12.20 — 10:40

Имеется в виду HTTPS + TLS 1.0

   Chesnok

29 — 08.12.20 — 10:44

(24) при запуске из командной строки пишет, что «curl» не является внутренней или внешней командой, …

   NorthWind

30 — 08.12.20 — 10:46

(29) ясен перец. Его еще скачать на машину нужно.

   NorthWind

31 — 08.12.20 — 10:47

уже не помню где я качал, давно было… но, по-моему, вот здесь https://curl.se/download.html

   NorthWind

32 — 08.12.20 — 10:47

и если надо чтобы запускался словом curl, еще и в PATH воткнуть не забыть папку

   Chesnok

33 — 08.12.20 — 10:52

(30) А почему при вызове из 1С файл создается если curl нет?

   ДенисЧ

34 — 08.12.20 — 10:52

(33) А ты загляни в этот файлик…

   Chesnok

35 — 08.12.20 — 10:55

(34) Пустой файл, в чем собственно и был вопрос (23)

   NorthWind

36 — 08.12.20 — 11:03

(33) если вы вызываете сначала cmd, а потом запускаете curl, как написано в (25) — тогда у вас перенаправляется в файл ввод-вывод cmd, а не курла. Соответственно, и файл поэтому создается.

   NorthWind

37 — 08.12.20 — 11:04

* вывод, конечно, а не ввод-вывод

   big

38 — 08.12.20 — 11:09

ТипЗапуска = «c»; // или k

Команда = «curl.exe -k https://www.nbrb.by/Services/XmlExRates.aspx?ondate=12/07/2020 -v > E:1Ccourse_1.txt»;

WshShell=СоздатьОбъект(«WScript.Shell»);

WshShell.Run(«%COMSPEC% /»+ТипЗапуска+» «+Команда, 0, 1);

  

Chesnok

39 — 08.12.20 — 11:21

Всем спасибо, скачал curl, все заработало.

Автор Сообщение

Заголовок сообщения: Доступ к таблицам биллинга извне. Изменился протокол?

СообщениеДобавлено: 18 июн 2012, 17:14 

Не в сети



Зарегистрирован: 18 июн 2012, 15:06
Сообщения: 18
Карма: 0

Пытаюсь достучаться к базе биллинга (версия 5.2) из 1С через https посредством MSXML2.XMLHTTP по аналогии с описанным в документации биллинга версии 4.4 способом. Просто потому, что для новых версий соответствующий раздел отсутствует в документации.
Метод Send возвращает ошибку 2146697208 (пытаюсь просто прочитать таблицу договоров точно так же как в клиенте через SQL-редактор).
В режиме отладки клиента биллинга получил нужную строку запроса — она несколько отличается от описанной в старой документации. Но приведение в соответствие с ней не изменило результата.
Может ли это быть из-за того, что в строке запроса присутствует составляющая &BGBillingSecret= с каким-то ключом?
Вместо неё я передаю &user= и &pswd= (как описано).
Что я могу делать не так?
Работает ли вообще в версии 5.2 подобный доступ к таблицам биллинга через https из внешних систем?

Вернуться к началу

Профиль  

рукашы

Заголовок сообщения: Re: Доступ к таблицам биллинга извне. Изменился протокол?

СообщениеДобавлено: 18 июн 2012, 18:29 

Не в сети



Зарегистрирован: 18 июн 2012, 15:06
Сообщения: 18
Карма: 0

«Ошибка при вызове метода контекста (send): Произошла исключительная ситуация (msxml3.dll): Системная ошибка: -2146697208»
Если подключаю «MSXML2.XMLHTTP.4.0», то (msxml3.dll) ожидаемо меняется на (msxml4.dll) в тексте ошибки.
Код ошибки, если верить гуглу, соответствует слишком общей ошибке, чтобы натолкнуть на конкретную мысль.
Для меня важно для начала знать — работает у кого-то в аналогичных условиях (5.2 и через https извне) или нет.
Чтобы не тратить зря время, если не работает.

Вернуться к началу

Профиль  

рукашы

Заголовок сообщения: Re: Доступ к таблицам биллинга извне. Изменился протокол?

СообщениеДобавлено: 18 июн 2012, 18:46 

Не в сети



Зарегистрирован: 18 июн 2012, 15:06
Сообщения: 18
Карма: 0

В старой документации предлагается генерить такую подстроку для получения результата произвольного запроса к базе биллинга(после строки подключения):
«module=admin&action=SQLEditor&pageSize=100000&sql=» +query . Ну и плюс логин/пароль.
В режиме отладки клиента биллинга 5.2 подсмотрел такую строку:
«module=sqleditor&action=SQLEditor&pageSize=25&base=main&sql=» + query. Порядок параметров подогнал под старый пример для наглядности.
Т.е. как минимум поменялось имя модуля. Ну и еще параметр BGBillingSecret смущает, о котором я писал в сабже.
Ошибку, похоже, возвращает одну и ту же в случае если сервер биллинга отвергает запрос.

Вернуться к началу

Профиль  

aardvark

Заголовок сообщения: Re: Доступ к таблицам биллинга извне. Изменился протокол?

СообщениеДобавлено: 18 июн 2012, 19:40 

Не в сети



Зарегистрирован: 22 дек 2008, 13:02
Сообщения: 270
Откуда: Москва
Карма: 27

забейте на secret он используется только для клиента. С 4.4 мог поменяться формат xml выдаваемый биллингом. с 4.6 на 5.1 точно немного менялся для договоров.
Проверьте разницу между тем что у вас msxml хочет и что ему выдают.

Вернуться к началу

Профиль  

рукашы

Заголовок сообщения: Re: Доступ к таблицам биллинга извне. Изменился протокол?

СообщениеДобавлено: 18 июн 2012, 19:54 

Не в сети



Зарегистрирован: 18 июн 2012, 15:06
Сообщения: 18
Карма: 0

aardvark писал(а):

забейте на secret он используется только для клиента. С 4.4 мог поменяться формат xml выдаваемый биллингом. с 4.6 на 5.1 точно немного менялся для договоров.
Проверьте разницу между тем что у вас msxml хочет и что ему выдают.

Ага! На это я и надеялся (относительно secret).
В том-то и проблема, что я не могу никакого xml получить :(
Метод send при получении результата POST валит исключение :(

Вернуться к началу

Профиль  

рукашы

Заголовок сообщения: Re: Доступ к таблицам биллинга извне. Изменился протокол?

СообщениеДобавлено: 18 июн 2012, 20:11 

Не в сети



Зарегистрирован: 18 июн 2012, 15:06
Сообщения: 18
Карма: 0

Делаю буквально следующее:

Open(«POST», «https://СайтБиллинга:ПортБиллинга/bgbilling/executer?», 0)
setRequestHeader(«content-type», «application/x-www-form-urlencoded»)

Дальше хочу послать простейший запрос для пробы — «select id from contract»
Сначала делал как в старой доке:

Send( «user=Пользователь&pswd=Пароль&module=admin&action=SQLEditor&pageSize=100000&sql=ТекстЗапросаUrlencoded»)

Болт. И что уже только не делал. Результат один и тот же…

Вернуться к началу

Профиль  

Phricker

Заголовок сообщения: Re: Доступ к таблицам биллинга извне. Изменился протокол?

СообщениеДобавлено: 18 июн 2012, 21:52 



Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5851
Карма: 472

Код:

Функция ПослатьЗапрос( query )
    // URL сервера биллинга   
   url=»http://127.0.0.1:8080/bgbilling/executer?»;
    // логин и пароль пользователя биллинга
    user=»password»;
    pswd =»login:)»;
   Попытка 
        odd=Новый COMОбъект(«MSXML2.XMLHTTP»);   
        odd.Open(«Post», url, 0);
        odd.setRequestHeader(«content-type», «application/x-www-form-urlencoded»);

                i = odd.Send( «user=»+ user + «&pswd=»+ pswd + «&» + query );
        od   =  odd.responseXML;

                // распечатка запросов и ответов, можно включить для отладки
      //Сообщить( «Урл: » + url+»user=»+ user + «&pswd=»+ pswd + «&» + query) ;
      //Сообщить( «Запрос: ‘» + query + «‘»);
      //Сообщить( «Результат: » + od.xml );       
    Исключение
        Сообщить( «Ошибка: » + ОписаниеОшибки() );       
    КонецПопытки;   

        Возврат od;   
КонецФункции

Функция SQLЗапрос( query )
    Возврат ПослатьЗапрос( «module=sqleditor&action=SQLEditor&pageSize=100000&sql=» + URLEncode( query ) );
КонецФункции

Функция ПолучитьСписокКлиентов()
   SQL= «SELECT c.id, c.title from contract»;
   ans = SQLЗапрос( SQL ) ;
   clients = ans.SelectNodes( «data/table/data/row»);
   Возврат clients;
КонецФункции

Module=admin в 5.2 уже не работает кстати :)
Помню как обновлялся на новый год на 5.2 а потом меня бухи будили когда выгрузку надо было делать :lol:

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось… © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn

Вернуться к началу

Профиль  

skyb

Заголовок сообщения: Re: Доступ к таблицам биллинга извне. Изменился протокол?

СообщениеДобавлено: 19 июн 2012, 04:34 



Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241

Phricker писал(а):

Помню как обновлялся на новый год на 5.2 а потом меня бухи будили когда выгрузку надо было делать :lol:

первого числа в 8 утра? :-D

_________________

Код:

  Клиент: вер. 6.2.714 / 25.05.2015 17:27:15
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
  Сервер: вер. 6.2.881 / 22.05.2015 17:56:55
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45

Помощь по администрированию bgbilling в jabber конференции или Группа в telegram
Стиль программирования — пьяный мастерстер
Разработка мобильных приложений

Вернуться к началу

Профиль  

рукашы

Заголовок сообщения: Re: Доступ к таблицам биллинга извне. Изменился протокол?

СообщениеДобавлено: 19 июн 2012, 13:37 

Не в сети



Зарегистрирован: 18 июн 2012, 15:06
Сообщения: 18
Карма: 0

Phricker писал(а):

Module=admin в 5.2 уже не работает кстати :)
Помню как обновлялся на новый год на 5.2 а потом меня бухи будили когда выгрузку надо было делать :lol:

Так тоже делал. Та же самая ошибка.

Но я вроде как докопался до корня зла.
Наконец, сообразил сделать то, что следовало сделать сразу.
Подставил сгенерированную строку запроса тупо в браузер.
А он мне и выдал — «Сертификат не является доверенным для этого сайта бла-бла-бла» (я ведь через https стучусь). Ежели жмешь — все равно выполнить запрос, тогда браузер таки возвращает правильную xml-ку. Но «https» в строке браузера (Chrome) демонстративно перечеркивает.
Т.е. ошибку именно из-за этого возвращает, как я понимаю.
Как это можно обойти самым простым и тупым способом (не покупая кашерного сертификата и т.п)? Извините за возможно ламерский запрос, я в интернет-технологиях не настоящий сварщик.

Вернуться к началу

Профиль  

рукашы

Заголовок сообщения: Re: Доступ к таблицам биллинга извне. Изменился протокол?

СообщениеДобавлено: 19 июн 2012, 13:39 

Не в сети



Зарегистрирован: 18 июн 2012, 15:06
Сообщения: 18
Карма: 0

skn писал(а):

может вам лучше напрямик в БД через ODBC драйвер ломиться?

Так и делаю для других биллингов. Это запасной вариант.
Просто как правило биллинги не в локалке и приходится еще костыли тулить.
Через http вроде как более кашерно.

Вернуться к началу

Профиль  

dimOn

Заголовок сообщения: Re: Доступ к таблицам биллинга извне. Изменился протокол?

СообщениеДобавлено: 19 июн 2012, 13:54 



Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244

рукашы писал(а):

«Ошибка при вызове метода контекста (send): Произошла исключительная ситуация (msxml3.dll): Системная ошибка: -2146697208»
Если подключаю «MSXML2.XMLHTTP.4.0», то (msxml3.dll) ожидаемо меняется на (msxml4.dll) в тексте ошибки.
Код ошибки, если верить гуглу, соответствует слишком общей ошибке, чтобы натолкнуть на конкретную мысль.
Для меня важно для начала знать — работает у кого-то в аналогичных условиях (5.2 и через https извне) или нет.
Чтобы не тратить зря время, если не работает.

а… понял… ошибка 1С а не биллинга.
ну так сам url то доступен вообще 1с-кой? в браузере вы его можете открыть?

upd , ок

_________________
I’m clever. I’ve got a computer.

Вернуться к началу

Профиль  

рукашы

Заголовок сообщения: Re: Доступ к таблицам биллинга извне. Изменился протокол?

СообщениеДобавлено: 19 июн 2012, 14:00 

Не в сети



Зарегистрирован: 18 июн 2012, 15:06
Сообщения: 18
Карма: 0

dimOn писал(а):

а… понял… ошибка 1С а не биллинга.
ну так сам url то доступен вообще 1с-кой? в браузере вы его можете открыть?
upd , ок

Ошибка не биллинга. Но и не 1С. Ошибка при работе через MSXML2.XMLHTTP.
Сертификат сделал доверенным. Любой браузер теперь возвращает правильный ответ без всяких оговорок.
Но при попытке спросить через MSXML2.XMLHTTP эту же фигню по-прежнему возвращает ошибку.
Может, есть еще какие-то тонкости c https через MSXML2.XMLHTTP?
Кто еще забирает данные в 5.2 через https с помощью MSXML2.XMLHTTP?
Отзовитесь!

Вернуться к началу

Профиль  

рукашы

Заголовок сообщения: Re: Доступ к таблицам биллинга извне. Изменился протокол?

СообщениеДобавлено: 19 июн 2012, 15:18 

Не в сети



Зарегистрирован: 18 июн 2012, 15:06
Сообщения: 18
Карма: 0

Amir писал(а):

Не работает только через HTTPS, или через HTTP тоже, или через HTTP проверить нет возможности?
Брандмауэр не закрывает доступ 1C’у для подключения к биллингу?
URL правильный? Протокол https, порт https, метод POST, в URL нет никаких параметров и вопросиков, как при GET, т.е. «https://127.0.0.1:8443/bgbilling/executer»?

Прочитал, что подобная ошибка типична для многих сервисов, когда к ним тупо закрыт доступ (брендмауэром, например). Перепробовал все что мог — отключал брендмауэр, антивирус, в политиках безопасности лазил…
Через http проверить нет возможности. Куда еще можно заглянуть?

Код:

url = «https://Сайт:8443/bgbilling/executer?»;
odd.Open(«POST», url, 0);
odd.setRequestHeader(«content-type», «application/x-www-form-urlencoded»);
i = odd.Send(«user=Юзер&pswd=Пароль&module=sqleditor&action=SQLEditor&pageSize=100000&sql=%53%45%4C%45%43%54%20%69%64%2C%20%74%69%74%6C%65%20%66%72%6F%6D%20%63%6F%6E%74%72%61%63%74»;

Т.е. простой запрос на выборку всех договоров. При вызове метода Send возникает исключение.

Вернуться к началу

Профиль  

Amir

Заголовок сообщения: Re: Доступ к таблицам биллинга извне. Изменился протокол?

СообщениеДобавлено: 19 июн 2012, 16:51 



Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256

Пишут:

Цитата:

Для того чтобы 1С смогла работать с самоподписным сертификатом описание корневого сертификата надо добавить в файл cacert.pem (в каталоге программы bincacert.pem). Описание можно сгенерировать с помощью бесплатной утилиты openssl.

Вернуться к началу

Профиль  

рукашы

Заголовок сообщения: Re: Доступ к таблицам биллинга извне. Изменился протокол?

СообщениеДобавлено: 19 июн 2012, 18:31 

Не в сети



Зарегистрирован: 18 июн 2012, 15:06
Сообщения: 18
Карма: 0

Amir писал(а):

Пишут:

Цитата:

Для того чтобы 1С смогла работать с самоподписным сертификатом описание корневого сертификата надо добавить в файл cacert.pem (в каталоге программы bincacert.pem). Описание можно сгенерировать с помощью бесплатной утилиты openssl.

Сделал. Не помогло. Что неудивительно, в принципе.
Это, как я понимаю, рецепт для работы с https через встроенную в 1С обертку для этого дела (есть там соответствующий класс). А я работаю через MSXML2.XMLHTTP (т.е. точно также, как из любого скриптового языка).
Пробовал с разных компов запускать (предварительно установив самоподписанный сертификат как доверенный).
Результат тот же… Разве что вместо кода ошибки возвращает её текстовое описание — «Ошибка загрузки указанного ресурса».
Попробую это дело полностью на JavaScript переписать, чтобы исключить вопрос отношения 1С к этой проблеме…

Вернуться к началу

Профиль  

рукашы

Заголовок сообщения: Re: Доступ к таблицам биллинга извне. Изменился протокол?

СообщениеДобавлено: 19 июн 2012, 19:58 

Не в сети



Зарегистрирован: 18 июн 2012, 15:06
Сообщения: 18
Карма: 0

В общем, 1С тут точно не причем.
Написал простейший JScript из 4 строчек, ошибка та же самая:

Код:

Connect = new ActiveXObject(«MSXML2.XMLHTTP»);
Connect.Open(«POST», «https://Сайт:8443/bgbilling/executer?»,0);
Connect.setRequestHeader(«content-type», «application/x-www-form-urlencoded»);
Connect.send(«user=Логин&pswd=Пароль&module=sqleditor&action=SQLEditor&pageSize=100000&sql=%53%45%4C%45%43%54%20%69%64%2C%20%74%69%74%6C%65%20%66%72%6F%6D%20%63%6F%6E%74%72%61%63%74»);

Вернуться к началу

Профиль  

рукашы

Заголовок сообщения: Re: Доступ к таблицам биллинга извне. Изменился протокол?

СообщениеДобавлено: 19 июн 2012, 19:59 

Не в сети



Зарегистрирован: 18 июн 2012, 15:06
Сообщения: 18
Карма: 0

Что еще можно попробовать, куда посмотреть?
Руки опускаются :(

Вернуться к началу

Профиль  

рукашы

Заголовок сообщения: Re: Доступ к таблицам биллинга извне. Изменился протокол?

СообщениеДобавлено: 19 июн 2012, 20:03 

Не в сети



Зарегистрирован: 18 июн 2012, 15:06
Сообщения: 18
Карма: 0

Сертификат — да, самоподписанный.
Но он добавлен в список доверенных корневых и промежуточных центров сертификации (браузеры возвращают результат без вопросов). Может, для MSXML2.XMLHTTP еще нужно где-то его прописать?

Вернуться к началу

Профиль  

рукашы

Заголовок сообщения: Re: Доступ к таблицам биллинга извне. Изменился протокол?

СообщениеДобавлено: 21 июн 2012, 19:32 

Не в сети



Зарегистрирован: 18 июн 2012, 15:06
Сообщения: 18
Карма: 0

Вернуться к началу

Профиль  

  • Remove From My Forums
  • Question

  • Hi All,

    Can anyone guide me through this? I have Excel 2003 file with macros behind, which consume SOAP ASMX web service with MsSoap Type Library 1.0. Now when I give it a try in Excel 2010, it fails to work. All references are ok, and vba project compile w/o issues.

    I am getting this, when trying to do mssoapinit:

    WSDLReader: XML Parser failed at linenumber 0, lineposition 0, reason is: System error: -2146697208.

    Does anyone know where I can find description for this mysterious error number?

    Great thanks in advance,

    Przemek.

    • Edited by

      Monday, December 3, 2012 11:51 AM
      typos

Answers

  • Hello,

    Office 2010 requires MSXML6. Please see the article below.

    Changes in Office 2010 (for ITPros)
    http://technet.microsoft.com/en-us/library/cc178954(v=office.14).aspx

    Support for Microsoft XML Parser 5
    Office 2010 does not support Microsoft XML Parser 5 (MSXML5). Existing solutions will not create an instance of MSXML5 objects when they are loaded by Office 2010. Migrate code to Microsoft XML Parser 6 (MSXML6) or to managed code that uses
    the .NET Framework.

    Changes in Excel 2010 (for ITPros)
    http://technet.microsoft.com/en-us/library/cc179167(v=office.14).aspx

    MSXML5

    MSXML5 is not supported in Excel 2010. Users will receive a runtime error if they attempt to run an Excel extensibility solution created by using MSXML5. Migrate code to MSXML6 or to managed code that uses the .NET Framework.

    Amber

    • Marked as answer by
      PrzemyslawLuniewski
      Tuesday, December 11, 2012 11:05 AM

Обновлено Июнь 2023: перестаньте получать сообщения об ошибках и замедлите работу вашей системы с помощью нашего инструмента оптимизации. Получить сейчас в эту ссылку

  1. Скачайте и установите инструмент для ремонта здесь.
  2. Пусть он просканирует ваш компьютер.
  3. Затем инструмент почини свой компьютер.

Системная ошибка 2146697208, Ошибки обработки ресурсов и другие критические ошибки могут возникнуть, если ваша операционная система Windows повреждена. Открытие программы замедляется, а время отклика задерживается. Если запущено несколько приложений, возможны сбои и зависания. Причин этой ошибки может быть много, в том числе чрезмерные записи при загрузке, ошибки реестра, потери памяти оборудования / ОЗУ, фрагментированные файлы, ненужные или избыточные установки программ и т. Д.

Вот несколько проверенных исправлений, которые помогут вам исправить системную ошибку 2146697208.

Запустите SFC сканирование вашего компьютера.

Для опытных пользователей для устранения системных ошибок используются следующие шаги — 2146697208 Ошибка при обработке ресурсов вручную.

  • SFC — абсолютно самый полезный способ восстановить поврежденные файлы Windows. Весь процесс очень прост.

Запустите Windows в безопасном режиме или в безопасном режиме с сетью.

Безопасный режим — это опция устранения неполадок, которая ограничивает Windows основными функциями. Безопасный режим запускает Windows только с самыми важными драйверами и сервисами. Безопасный режим с сетевым подключением запускает окна только с основными драйверами и поддержкой сети. Чтобы загрузить компьютер в безопасном режиме или безопасном режиме по сети, следуйте приведенным ниже инструкциям:

  1. Сразу после включения или перезагрузки компьютера (обычно после звукового сигнала компьютера) нажимайте клавишу F8 с интервалом в одну секунду.
  2. После того, как ваш компьютер отобразит информацию об оборудовании и выполнит тест памяти, появится меню «Дополнительные параметры загрузки».
  3. С помощью клавиш со стрелками выберите Безопасный режим или Безопасный режим с сетью и нажмите клавишу ВВОД.
  4. Когда вы закончите поиск и устранение неисправностей, повторите шаги с 1 по 3 и выберите Начать Windows как обычно, чтобы вернуться к нормальной настройке Windows.

загрузки безопасного режима с сетевым подключением

Обновление за июнь 2023 г .:

Теперь вы можете предотвратить проблемы с ПК с помощью этого инструмента, например, защитить вас от потери файлов и вредоносных программ. Кроме того, это отличный способ оптимизировать ваш компьютер для достижения максимальной производительности. Программа с легкостью исправляет типичные ошибки, которые могут возникнуть в системах Windows — нет необходимости часами искать и устранять неполадки, если у вас под рукой есть идеальное решение:

  • Шаг 1: Скачать PC Repair & Optimizer Tool (Windows 10, 8, 7, XP, Vista — Microsoft Gold Certified).
  • Шаг 2: Нажмите «Начать сканирование”, Чтобы найти проблемы реестра Windows, которые могут вызывать проблемы с ПК.
  • Шаг 3: Нажмите «Починить все», Чтобы исправить все проблемы.

скачать

Чистое средство загрузки

Для бесперебойной загрузки в безопасном режиме под Windows 8 или Windows 10 выполните следующие действия:

  1. Нажмите кнопку «Windows + R», чтобы открыть окно выполнения.
  2. Введите msconfig и нажмите ОК.
  3. На вкладке Общие нажмите Выборочный запуск.
  4. Снимите флажок Загрузить начальные объекты.
  5. Перейдите на вкладку «Услуги».
  6. Установите флажок Скрыть все службы Microsoft (ниже).
  7. Нажмите «Отключить все».
  8. Нажмите вкладку «Пуск».
  9. Нажмите Открыть диспетчер задач.
  10. На вкладке «Пуск» щелкните правой кнопкой мыши каждый включенный исходный объект и выберите «Отключить».
  11. Нажмите кнопку ОК.
  12. Нажмите «Перезагрузить».

чистая загрузка-окна-10

После устранения неполадок восстановите систему следующим образом:

  1. Нажмите кнопку «Windows + R», чтобы открыть окно выполнения.
  2. Введите msconfig и нажмите ОК.
  3. На вкладке General выберите Normal Start.
  4. Перейдите на вкладку «Услуги».
  5. Снимите флажок Скрыть все службы Microsoft.
  6. Нажмите Включить все.
  7. Нажмите вкладку «Пуск».
  8. Нажмите Открыть диспетчер задач и активируйте все ваши стартеры.
  9. Нажмите кнопку ОК.
  10. Нажмите «Перезагрузить».

Чтобы настроить Windows для использования обычного состояния загрузки, просто отмените изменения.

Совет экспертов: Этот инструмент восстановления сканирует репозитории и заменяет поврежденные или отсутствующие файлы, если ни один из этих методов не сработал. Это хорошо работает в большинстве случаев, когда проблема связана с повреждением системы. Этот инструмент также оптимизирует вашу систему, чтобы максимизировать производительность. Его можно скачать по Щелчок Здесь

ed_moyes

CCNA, веб-разработчик, ПК для устранения неполадок

Я компьютерный энтузиаст и практикующий ИТ-специалист. У меня за плечами многолетний опыт работы в области компьютерного программирования, устранения неисправностей и ремонта оборудования. Я специализируюсь на веб-разработке и дизайне баз данных. У меня также есть сертификат CCNA для проектирования сетей и устранения неполадок.

Сообщение Просмотров: 456

  • #1

Был в отпуске пару недель, пришел …. ))
Почему то перестал работать агент по расписанию, использующий Msxml2.XMLHTTP…

Set xmlhttp = CreateObject(«Msxml2.XMLHTTP»)
xml = |username=a&password=b&query={| & str & |}|
Call xmlhttp.open ….
Call xmlhttp.setRequestHeader ….
Call xmlhttp.send (xml)

Причем теперь если в дизайнере запустить агент через «run» — он отрабатывает.
А при запуске агента по расписанию стал выдавать выдавать ошибку.

Ошибка: 213, msxml3.dll: System error: -2146697208.

Проверил на другом серваке — тоже самое…
Уже не знаю где искать…

lmike

lmike

нет, пердело совершенство


  • #2

Был в отпуске пару недель, пришел …. ))
Почему то перестал работать агент по расписанию, использующий Msxml2.XMLHTTP…

Set xmlhttp = CreateObject(«Msxml2.XMLHTTP»)
xml = |username=a&password=b&query={| & str & |}|
Call xmlhttp.open ….
Call xmlhttp.setRequestHeader ….
Call xmlhttp.send (xml)

Причем теперь если в дизайнере запустить агент через «run» — он отрабатывает.
А при запуске агента по расписанию стал выдавать выдавать ошибку.

Ошибка: 213, msxml3.dll: System error: -2146697208.

Проверил на другом серваке — тоже самое…
Уже не знаю где искать…

«где-где — в винде»
сколько раз говорено — ну не пользуйте эту дрянь — COM, если нет крайней необходимости (угроза расстрела/повешения/мук адовых…)

  • #3

А как еще слать данные агентом на некую страничку

Ссылка скрыта от гостей

….. данные с лотуса?

lmike

lmike

нет, пердело совершенство


lmike

lmike

нет, пердело совершенство


  • #5

ну и изумительно простой

Ссылка скрыта от гостей

lmike

lmike

нет, пердело совершенство


  • #6

с аутентификацией

Ссылка скрыта от гостей

все это можно проделать прям из LS (без java либы), просто придется инициализировать в LS еще 3-и класса, что будет не наглядно

garrick


  • #7

Проверил на другом серваке — тоже самое…
Уже не знаю где искать…

  1. Прошло какое-то обновление операционной системы на сервере
  2. Изменились политики безопасности на сервере Windows
  3. и многое другое…

Будьте готовы, что такое может повторяться неоднократно снова и снова, в самый неожиданный момент, пока в один прекрасный день вы не обнаружите, что на ваших серверах компонента Msxml2.XMLHTTP вообще нет. Тогда вам придётся переписать своего агента на Java. Можно подождать часа Х, а можно начать готовиться к нему уже сейчас. А то, что час Х настанет не сомневайтесь.

garrick


  • #8

«где-где — в винде»
сколько раз говорено — ну не пользуйте эту дрянь — COM, если нет крайней необходимости (угроза расстрела/повешения/мук адовых…)

Особенно на сервере!

  • #9

Пробую пример:

Ссылка скрыта от гостей

Сделал библиотеку скриптов на ява с кодом , там где вначале «public class GetHTML {«
Потом пытаюссь сделать лотусскрипт с кодом, где вначале Const myURL = »

Ссылка скрыта от гостей

«
Подключил библиотеку…
И сразу Dim js As JAVASESSION — лотусскрипт уже не знает ….

lmike

lmike

нет, пердело совершенство


  • #10

@seoman2 а почитать примеры в хэлпе, для LS2J, что помешало?
базовые инклюды для LS:

Код:

UseLSX "*javacon"
%Include "lserr.lss"
%Include "lsconst.lss"

  • #11

Интересно, под каким юзером надо устанавливать сертификат для

Ссылка скрыта от гостей

на серваке домино — запущен как сервис?
пишет — нет трастового сертификата.

lmike

lmike

нет, пердело совершенство


  • #12

Интересно, под каким юзером надо устанавливать сертификат для

Ссылка скрыта от гостей

на серваке домино — запущен как сервис?
пишет — нет трастового сертификата.

полностью вопрос сформулируйте — не понятно — с какой стороны и что нужно

  • #13

Запускаю агент из примера breakingpar.com/bkp/home.nsf/0/87256B280015193F87256E6E006E29CE на серваке — выдает ошибку, что нет доверенного сертификата.
В примере заменил урл на свой, ну и логин пароль тоже…
Думаю, под каким юзером ставить сертификат и как …

lmike

lmike

нет, пердело совершенство


  • #14

сертификат нужен для клиентской аутентификации на стороннем сервере?

на серваке — выдает ошибку, что нет доверенного сертификата.

garrick


  • #15

На вашем сервере GUI есть? Откройте URL броузером с вашего сервера и примите сертификат. Либо как-то через Домино (админы подскажут).

Понравилась статья? Поделить с друзьями:
  • Msxml3 dll неопознанная ошибка
  • Mudrunner ошибка could not load config как исправить
  • Msxml dll ошибка
  • Mudrunner ошибка could not load config steam
  • Mudrunner не запускается ошибка 0xc0000007b