Подключить 1С в С++
Нпример: http://erpg.ru/1c/builder/index.htm
а в сях слабоват
может подскажешь?
В дельфях я могу юнит сделать из typelibrary - а в плюсах так можно?
наверняка. импортни и пользуй как в дельфи
в форумах написано, что через Dispatch надо работать
через ОЛЕ на c++ нигде не нашел
Если есть - можешь сделать из неё .h файл? с классами и нужными константами?
Какой компилятор используешь?
в Делфях могу через ОЛЕ подключить
форумах написано, что через Dispatch надо работатьМне непонятна глубина познания в ОЛЕ и с какого места надо начать объяснять
.Net 2003 использую
поищи в каталоге установки 1С-ки файл *.tlb
нет файлов с таким расширением
в c++ так не работает
Как вариант, написать ДЛЛ на билдере или дельфи, апотом ее юзать
или всю прогу на Делфи написать
чтобы так не мучиться
OLE/COM Object Viewer, раздел Type Libraries - там нет нужной библиотеки типов?
Если есть - экспортируй хотя бы IDL. что с ним делать в С++ - ума не приложу.
Дельфя умеет делать юниты из библиотек типов. Может, их можно просто так инклюдить?
Можешь у спросить, он вроде большой спец по С++ (и .NET вообще)
После того, как у тебя есть нужные классы - дальше просто:
CoCreateInstance(...,App)
App->QueryInterface(I1)
App->QueryInterface(I2)
App->QueryInterface(I3)
..
Как в дельфях - кстати, хороший примерчик по работе с ОЛЕ из дельфи есть на примере взаимодействия дельфи и экселя.
посмотрел в OLE/COM Object Viewer, раздел Type Libraries, там нет такой библиотеки
1С запускается, а как доступ к элементам получить?
Если нет библиотеки типов - значит через ОЛЕ к ней не достучаться..
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);
<....>
Леший закрылся!
Оставить комментарий
noss
Напишите, плз, как на С++ подключить 1С и получить доступ, например к какому-либо справочнику