Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Ошибка автономного сервера ibsrv.exe при вызове конструктора любого COMОбъекта

Ошибка автономного сервера ibsrv.exe при вызове конструктора любого COMОбъекта
Я
   Morozow
 
02.05.21 - 22:25
При создании любого COMОбъект`а &НаСервере при запуске через автономный сервер

Например:
<pre>
WshShell = Новый COMОбъект("WScript.Shell");
Сообщить(WshShell.CurrentDirectory);</pre>

Всегда возникает ошибка:
<pre>
-2147221008(0x800401F0): Не был произведен вызов CoInitialize.
</pre>

Запускал ibsrv.exe от Администратора и как приложение, и в качестве службы.
Словно ibsrv.exe ограничен в правах или в нём отсутствует работа с Component Object Model.
Нужен совет - что делать?
   ДедМорроз
 
1 - 02.05.21 - 23:52
Для COM нужна очередь сообщений,и,если в программе ее нет,то и работать COM будет очень ограниченно.
И,судя по сообщению,похоже,что очереди как раз нет,а размещения разные - вызов ушел в очередь сообщений (она будет создана при первом вызове любой функции с ней работающей)а вот прокачку сообщений никто не делает.
   Morozow
 
2 - 03.05.21 - 13:57
Спасибо за ответ, но не совсем понял какая очередь, каких сообщений? Тот код как и тот что я приведу ниже - для упрощения ситуации.

&НаСервере
Функция ЭтоТекущийКаталог(ПроверяемыйПуть)
WshShell = Новый COMОбъект("WScript.Shell");
ПутьТекущий = WshShell.CurrentDirectory;

Если ПутьТекущий = ПроверяемыйПуть
Тогда
Возврат Истина;
Иначе Возврат Ложь;

КонецЕсли;

КонецФункции

Вот здесь будет та же ошибка.
   Morozow
 
3 - 03.05.21 - 14:27
Вообще мне интересен Word.Application, для примера использовал WScript.Shell, чтобы отсечь рассуждения про установку офисного пакета.
   MM
 
4 - 03.05.21 - 16:24
(1) А у rphost.exe очередь есть, в отличии от ibsrv.exe?
   Morozow
 
5 - 03.05.21 - 16:31
(4) rphost.exe? Автономный сервер...
   Morozow
 
6 - 03.05.21 - 16:35
(4) Если с Вашим как минимум 15 летнем стажем, есть что сказать Нубу - буду рад развиваться. :-)
   MM
 
7 - 03.05.21 - 16:37
В любом случае серверное приложение, даже w3wp.exe (ну или apache.exe, хотя у него есть консоль ОС) может выполнять роль сервера без клиентской подсистемы 1С.
   Morozow
 
8 - 03.05.21 - 17:06
(7) Поясните пожалуйста о чём говорит (2), о чём спрашиваете Вы (4)?
Я с удовольствием изучу тему про очередь, если она позволит мне использовать ComОбъект'ы хоста через автономный сервер.
Сервер 1С не используется, локально с файловой БД мой код работает отлично.
   hhhh
 
9 - 03.05.21 - 17:29
(8) вы нам объясните, зачем это? Ну понятно, на клиенте, если нужно посмотреть какой у пользователя открыт каталог? Но на сервере-то зачем? Разве не пофиг какой там в серверной текущий каталог? Может там сисадмин зашел в серверную и выбрал свой каталог какой-то.
   MM
 
10 - 03.05.21 - 17:33
(4) относится к (1), и это вопрос относящийся к внутреннему устройству процессов Windows, в частности его СОМ-подсистеме. Меня удивило что внутреннее устройство сервера 1С так сильно отличается от автономного сервера.
Кстати, а какой битности этот автономный сервер?
   Morozow
 
11 - 03.05.21 - 18:03
(9) >>я для примера использовал WScript.Shel
На &НаСервере не создаются НИКАКИЕ ComОбъекты.

Мне нужно использование Com объекты WordApplication для ищвлечения и .doc и RegEx для   их последующего анализа
   Morozow
 
12 - 03.05.21 - 18:41
(10) х64
   mistеr
 
13 - 03.05.21 - 19:29
(2) Про очередь хорошо описано здесь, правда на англ.:
https://stackoverflow.com/questions/2222365/what-is-a-message-pump
   Morozow
 
14 - 03.05.21 - 22:06
Спасибо за Ваши ответы, но всё еще нужен совет - что делать? :-)
   ansh15
 
15 - 04.05.21 - 01:11
В инструкции к программе указывается, что
"Автономный сервер не поддерживает следующие возможности:
Работу с информационной базой с использованием внешнего соединения (COM-соединение).
Управление сервером с помощью COM-объекта V83.ComConnector" - https://its.1c.ru/db/v8319doc#bookmark:adm:TI000000896
Может ли это иметь отношение к обсуждаемому в этой ветке вопросу?..
   sikuda
 
16 - 04.05.21 - 08:36
(14) Забить на COM и перейти на другие технологии - https://infostart.ru/public/1176839/
Наконец понять, что доступ к текущей  директории в Вэб не возможен.(Костыли в виде 1С расширения и псевдоасинхронности изучить)
   mistеr
 
17 - 04.05.21 - 11:27
(14) Позвони на линию консультаций, спроси, поддерживает ли автономный сервер работу с Word через COM.
   pechkin
 
18 - 04.05.21 - 12:02
   Morozow
 
19 - 04.05.21 - 15:20
(18) Печкин, благодарю! Буду писать ВК :-)

Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.