Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 13:43

Проблема при Initialize работа через OLE c 1C 7.7 из 8.2

Автор Colci1981, 15 дек 2011, 10:34

0 Пользователей и 1 гость просматривают эту тему.

Colci1981

дравствуйте, у меня следующая проблема, убил на нее целый день так и не понял причины.
Хочу в внешнем обработчике их 1С 8.2 подключится к 1С 7.7 чтобы получить данные.
Пишу так:

Функция ПодключитсяК1С77 ()
         База77 = Новый COMОбъект("V77.Application");
         РезультатПодключения=База77.Initialize(База77.RMTrade, "","");

         Возврат РезультатПодключения;
КонецФункции



При под отладчиком вижу что в переменную РезультатПодключения передается лож. В чем проблема, объект База77 создается,
при инициализации открывается 1С я указываю к какой базе подключится пароль тоже ввожу. Нов итоге лож! Почему? помогите пожалуйста понять.

Dethmontt

Ну во первых!
РезультатПодключения=База77.Initialize(База77.RMTrade, "/D""" + ПутьКБазе+ """ /M ", "NO_SPLASH_SHOW");
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Xershi

Цитата: Dethmontt от 16 дек 2011, 00:57
Ну во первых!
РезультатПодключения=База77.Initialize(База77.RMTrade, "/D""" + ПутьКБазе+ """ /M ", "NO_SPLASH_SHOW");

РезультатПодключения = БазаОле.Initialize ( БазаОле.RMTrade , "/d" +Сокрлп(КаталогБазыОле) + " /n" + Сокрлп(ПользовательОле)+ " /p" + Сокрлп(ПарольОле) + МонопольныйРежимOLE ,      ?(ЗапускБезЗаставки = 1,"NO_SPLASH_SHOW",""));

Сервер 64 бита, агент сервера 1с8 запущен под "АдминДомена". В дком объекте стоят костомные настройки на V77.GeneralPropPage везде добавлен "АдминДомена" и поставлены ему все галки.

Почему ошибка Error calling context method (Initialize) в регламентном задании возникает?
Добавлено: 10 апр 2015, 14:47


Плюс к тому что я написал у нас на сервере не хватало памяти для открытия 1с7 в не интерактивном режиме (т.е. в регламентном задании) для этого в реестре добавили памяти сеансу подробно расписано тут: http://www.techarp.com/showarticle.aspx?artno=238&pgno=1

HKEY_LOCAL_MACHINE>SYSTEM>CurrentControlSet>Control>Session Manager>SubSystems
Там Windows открыть и изменить строку:
%SystemRoot%\system32\csrss.exe ObjectDirectory=\Windows SharedSection=1024,3072,512
  Windows=On SubSystemType=Windows ServerDll=basesrv,1 ServerDll=winsrv:UserServerDllInitialization,3
  ServerDll=winsrv:ConServerDllInitialization,2 ProfileControl=Off MaxRequestThreads=16

SharedSection=1024,3072,512 вот здесь редактируем 3 значение мы поставили 5 мб (было 512 кб). Важно чтобы 2 и 3 значение не привысило 48 мб.

ОЛЕ заработало!

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск