Adoon
|
member
|
|
|
|
Рег.: 03.11.2002
|
Сообщений: 149
|
|
Рейтинг: 101
|
|
Подключить 1С в С++
29.09.2004 16:58
|
|
|
Напишите, плз, как на С++ подключить 1С и получить доступ, например к какому-либо справочнику
|
|
Maxik
|
ЭнерДжаЙсер
|
|
|
|
Рег.: 22.12.2002
|
Сообщений: 14528
|
Из: Где-то на Петрашке ;)
|
Рейтинг: 3220
|
|
Re: Подключить 1С в С++
[re: Adoon]
29.09.2004 17:29
|
|
|
|
Adoon
|
member
|
|
|
|
Рег.: 03.11.2002
|
Сообщений: 149
|
|
Рейтинг: 101
|
|
Re: Подключить 1С в С++
[re: Maxik]
29.09.2004 17:37
|
|
|
в Делфях могу через ОЛЕ подключить а в сях слабоват может подскажешь?
|
|
Basilio
|
GreenOne
|
|
|
|
Рег.: 14.10.2002
|
Сообщений: 13750
|
Из: Москва
|
Рейтинг: 3476
|
|
Re: Подключить 1С в С++
[re: Adoon]
29.09.2004 17:39
|
|
|
Все олешные функции - это те же апишные вызовы. с соотв. классами. В дельфях я могу юнит сделать из typelibrary - а в плюсах так можно? наверняка. импортни и пользуй как в дельфи
|
|
Adoon
|
member
|
|
|
|
Рег.: 03.11.2002
|
Сообщений: 149
|
|
Рейтинг: 101
|
|
|
почему то 1С нету в Type Library в форумах написано, что через Dispatch надо работать через ОЛЕ на c++ нигде не нашел
|
|
Basilio
|
GreenOne
|
|
|
|
Рег.: 14.10.2002
|
Сообщений: 13750
|
Из: Москва
|
Рейтинг: 3476
|
|
Re: Подключить 1С в С++
[re: Adoon]
29.09.2004 17:50
|
|
|
У тебя есть typelibrary от 1C? Если есть - можешь сделать из нее .h файл? с классами и нужными константами? Какой компилятор используешь?
В ответ на:
в Делфях могу через ОЛЕ подключить
В ответ на:
форумах написано, что через Dispatch надо работать
Мне непонятна глубина познания в ОЛЕ и с какого места надо начать объяснять
Редактировал Basilio (29.09.2004 17:52)
|
|
Adoon
|
member
|
|
|
|
Рег.: 03.11.2002
|
Сообщений: 149
|
|
Рейтинг: 101
|
|
|
нету typelibrary .Net 2003 использую
|
|
Basilio
|
GreenOne
|
|
|
|
Рег.: 14.10.2002
|
Сообщений: 13750
|
Из: Москва
|
Рейтинг: 3476
|
|
Re: Подключить 1С в С++
[re: Adoon]
29.09.2004 17:54
|
|
|
поищи в каталоге установки 1С-ки файл *.tlb
|
|
Adoon
|
member
|
|
|
|
Рег.: 03.11.2002
|
Сообщений: 149
|
|
Рейтинг: 101
|
|
|
нет файлов с таким расширением
|
|
Adoon
|
member
|
|
|
|
Рег.: 03.11.2002
|
Сообщений: 149
|
|
Рейтинг: 101
|
|
Re: Подключить 1С в С++
[re: Maxik]
29.09.2004 18:03
|
|
|
так работает только из Делфи, VB и С билдера в c++ так не работает
Редактировал Adoon (29.09.2004 18:03)
|
|
Maxik
|
ЭнерДжаЙсер
|
|
|
|
Рег.: 22.12.2002
|
Сообщений: 14528
|
Из: Где-то на Петрашке ;)
|
Рейтинг: 3220
|
|
Re: Подключить 1С в С++
[re: Adoon]
29.09.2004 18:21
|
|
|
Как вариант, написать ДЛЛ на билдере или дельфи, апотом ее юзать )))))))))))))))))
|
Кто людям помогает, тот тратит время зря! Хорошими делами прославиться нельзя! |
|
Adoon
|
member
|
|
|
|
Рег.: 03.11.2002
|
Сообщений: 149
|
|
Рейтинг: 101
|
|
Re: Подключить 1С в С++
[re: Maxik]
29.09.2004 18:31
|
|
|
да уж или всю прогу на Делфи написать  чтобы так не мучиться
|
|
Basilio
|
GreenOne
|
|
|
|
Рег.: 14.10.2002
|
Сообщений: 13750
|
Из: Москва
|
Рейтинг: 3476
|
|
Re: Подключить 1С в С++
[re: Adoon]
29.09.2004 18:33
|
|
|
Библиотека типов в системе зарегистрирована? OLE/COM Object Viewer, раздел Type Libraries - там нет нужной библиотеки типов? Если есть - экспортируй хотя бы IDL. что с ним делать в С++ - ума не приложу. Дельфя умеет делать юниты из библиотек типов. Может, их можно просто так инклюдить? Можешь у Fj_ спросить, он вроде большой спец по С++ (и .NET вообще)
После того, как у тебя есть нужные классы - дальше просто: CoCreateInstance(...,App) App->QueryInterface(I1) App->QueryInterface(I2) App->QueryInterface(I3) .. Как в дельфях - кстати, хороший примерчик по работе с ОЛЕ из дельфи есть на примере взаимодействия дельфи и экселя.
|
|
Adoon
|
member
|
|
|
|
Рег.: 03.11.2002
|
Сообщений: 149
|
|
Рейтинг: 101
|
|
|
где то в форумах прочитал, что 1С не удосужилась делать библиотеку типов, посмотрел в OLE/COM Object Viewer, раздел Type Libraries, там нет такой библиотеки 1С запускается, а как доступ к элементам получить?
|
|
Basilio
|
GreenOne
|
|
|
|
Рег.: 14.10.2002
|
Сообщений: 13750
|
Из: Москва
|
Рейтинг: 3476
|
|
Re: Подключить 1С в С++
[re: Adoon]
29.09.2004 18:55
|
|
|
Если нет библиотеки типов - значит через ОЛЕ к ней не достучаться..
|
|
yanys
|
Доктор Кот
|
|
|
|
Рег.: 08.10.2003
|
Сообщений: 2098
|
|
Рейтинг: 1394
|
|
Re: Подключить 1С в С++
[re: Adoon]
29.09.2004 18:58
|
|
|
Что-то не могу я щас сообразить, можно для 1С использовать директиву #import или нет... По идее #import генерит классы обертки для Automation'а по заданному type lib. Которого для 1С якобы нет... Посмотри на ATLный класс CComDispatchDriver, может он тебе поможет. Выглядеть должно примерно так:
code: IDispatchPtr pDispatch; HRESULT hr = pDispatch.CreateInstance( "V77.Application" );
if ( SUCCEEDED( hr ) ) { CComDispatchDriver pDd( pDispatch ); _variant_t result; _variant_t param("мама мыла раму"); hr = pDd.Invoke1(OLESTR("myCoolMethodName"), ¶m, &result); <....>
|
Get your facts first, and then you can distort them as much as you please. Mark Twain
|
|
Bachan
|
god's pee
|
|
|
|
Рег.: 26.10.2002
|
Сообщений: 37551
|
|
Рейтинг: 5335
|
|
Re: Подключить 1С в С++
[re: yanys]
29.09.2004 19:23
|
|
|
Леший закрылся!!!
|
я АЭС фачил в эсс! |
|