ОФИЦИАЛЬНЫЙ ФОРУМ ГРУППЫ КОМПАНИЙ «ТЕХНОКОМ»

ОФИЦИАЛЬНЫЙ ФОРУМ ГРУППЫ КОМПАНИЙ «ТЕХНОКОМ» (http://forum.tk-chel.ru/index.php)
-   Система «АвтоГРАФ»: 1С + АвтоГРАФ (http://forum.tk-chel.ru/forumdisplay.php?f=112)
-   -   Несколько экземпляров автографа и баз 1С на одном сервере (http://forum.tk-chel.ru/showthread.php?t=3929)

s.sintsov 03.07.2014 07:53

Несколько экземпляров автографа и баз 1С на одном сервере
 
Добрый день! Вопрос следующий:
на одном сервере планируется установка нескольких экземпляров ПО АвтоГРАФ. В каждом свой список транспортных средств и контрольных точек. Под каждый экземпляр автографа отдельная база 1С, куда должны средствами OLE выгружаться данные о прохождении транспортными средствами контрольных точек. Проблема в том, что в системе регистрируется один единственный компонент OLE и работает из всех баз 1С с одним и тем же экземпляром ПО АвтоГРАФ. Есть возможность как-то это ограничение обойти?

Второй альтернативный вопрос: возможен ли вариант по расписанию выгружать отдельно для каждого экземпляра ПО АвтоГРАФ табличку например в формате dbf, содержащую информацию по столбцам:
транспортное средство | контрольная точка | время посещения |
выгружать естественно в автоматическом режиме в разные папки

SK 03.07.2014 13:17

Цитата:

Сообщение от s.sintsov (Сообщение 82873)
Есть возможность как-то это ограничение обойти?

Есть. Правда, слегка через колено. Но иначе обойти ограничение Microsoft не получается.
Каждый экземпляр ПО прописывается в реестре со своим GUID.
Для этого, насколько помню, есть специальный ключ командной строки.
При инициализации СОМ-объекта в программных модулях 1С – необходимо обращаться к конкретной копии через GUID.

SK 03.07.2014 13:18

Цитата:

Сообщение от s.sintsov (Сообщение 82873)
Второй альтернативный вопрос: возможен ли вариант по расписанию выгружать отдельно для каждого экземпляра ПО АвтоГРАФ табличку например в формате dbf, содержащую информацию по столбцам:
транспортное средство | контрольная точка | время посещения |
выгружать естественно в автоматическом режиме в разные папки

А зачем для этого две или более копии ПО ???
Два или более разных карлиста в одной копии ПО решают эту проблему.

s.sintsov 04.07.2014 07:53

Цитата:

Сообщение от SK (Сообщение 82911)
Цитата:

Сообщение от s.sintsov (Сообщение 82873)
Второй альтернативный вопрос: возможен ли вариант по расписанию выгружать отдельно для каждого экземпляра ПО АвтоГРАФ табличку например в формате dbf, содержащую информацию по столбцам:
транспортное средство | контрольная точка | время посещения |
выгружать естественно в автоматическом режиме в разные папки

А зачем для этого две или более копии ПО ???
Два или более разных карлиста в одной копии ПО решают эту проблему.

Вопрос зачем предлагаю пока оставить вне плоскости данного обсуждения. Скажем так, задача не показывать в одном экземпляре ПО список всех автомобилей и всех контрольных точек по всем филиалам. Прошу помощи именно в направлении одновременного запуска нескольких экземпляров ПО АвтоГРАФ, установленных в разные папки. Буду очень благодарен, если подскажете, что это за параметр командной строки, который позволяет задать собственный GUID для каждого экземпляра приложения при установке или при регистрации компоненты.

Пока попробовал в реестре поменять ветку HKEY_CLASSES_ROOT\AutoGRAPH.AutoGRAPHAutomation, сделал вместо нее две
HKEY_CLASSES_ROOT\AutoGRAPH.AutoGRAPHAutomation_1 и HKEY_CLASSES_ROOT\AutoGRAPH.AutoGRAPHAutomation_2. Внутри каждой в разделе CLSID указал свой уникальный ID. Соответственно прописал их в HKEY_CLASSES_ROOT\Wow6432Node\CLSID\ с параметрами LocalServer32 указывающими каждый на свою папку. Не помогает, при попытке запустить второй экземпляр АвтоГРАФ, видимо, обнаруживает, что один экземпляр уже запущен и не стартует повторно.

storm 04.07.2014 09:49

s.sintsov,
нужно запустить каждую копию программы АвтоГРАФ с ключом guidreg, новые сгенерированные giud'ы будут записаны в файл guids.ini
после чего уже при подключении 1С к АвтоГРАФу указывать нужный guid

storm 04.07.2014 09:50

для разрегистрации нужно запустить с ключом guidunreg

s.sintsov 04.07.2014 12:41

Сделал точно так, как написано. При создании com-объекта по отдельности из каждой базы 1С - все работает. Т.е. АвтоГРАФ запускается отдельно из той папки, из которой и нужно. Но вот при попытке запустить одновременно из двух баз 1С (соответственно ожидается, что Автограф запустится одновременно из 2-х разных папок) при попытке создания второго экземпляра объекта выдается сообщение об ошибке:

Ошибка при вызове конструктора (COMОбъект): -2146959355(0x80080005): Ошибка при выполнении приложения-сервера : -2146959355(0x80080005): Ошибка при выполнении приложения-сервера

SK 04.07.2014 13:27

Как инициализируется СОМ-объект ?

s.sintsov 08.07.2014 06:06

А первой базе:

АГ=Новый COMОбъект("AutoGRAPH.AutoGRAPHAutomation_1") ;

Во второй базе:

АГ=Новый COMОбъект("AutoGRAPH.AutoGRAPHAutomation_2") ;

В реестре прописано:

HKEY_CLASSES_ROOT\AutoGRAPH.AutoGRAPHAutomation_1\ CLSID\{36176F31-7E7D-43FB-A011-2E3D5E6172B0}

HKEY_CLASSES_ROOT\AutoGRAPH.AutoGRAPHAutomation_2\ CLSID\{4D7D2E35-789E-4199-AD60-AE0D375C9BEA}

Как прописать GUID непосредственно в функцию COMОбъект?

SK 08.07.2014 09:07

А руками две этих копии ПО нормально запускаются ?


Текущее время: 21:28. Часовой пояс GMT.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot