Перенос спецификаций

Автор vikТоr, 14.01.05, 10:07:17

« назад - далее »

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

vikТоr

Добрый день!
Существует проблема переноса спецификаций из файлов *.spw в базы компас автопроект. Не подскажете как осуществить перенос, или хотя бы открыть програмно файл и "вытащить" от туда поля?
Спасибо.

wuxep

Видимо чтобы открыть файл нужно осуществлять запуск компас график в скрытом режиме. Может кто подскажет как это сделать?

wuxep

Про скрытый запуск понял )) - компонентом актив х
А вот как там открыть спецификацию?
Вроде должно быть что-то подобное
  spc: ksSpecification;
  spec: ksSpcDocument;

Application1.Connect;
Application1.ksChoiceFile(’*.spw’,’ñïåöèôèêàöèè(*.spw)|*.spw|Âñå ôàéëû (*.*)|*.*|’, false);
spec:=SpcDocument( Application1.SpcActiveDocument()); //????
//spec.ksOpenDocument( ’c\12020.cpw’,3);
spc := ksSpecification(spec.GetSpecification);

Вот только под объект spec память в этом случае не выделена - пишет аксес виалейшел ин рид адрес 00000000. Подскажите, пожалуйста, кто знает, как создать этот объект.

wuxep

// Создать объект автоматизации KOMPAS_Graphic
  Kompas:= KompasObject(CreateOleObject('Kompas.Application5'));
  if Kompas  nil then
    //передать графику указатель IDispatch
    Kompas.Visible := true;

Это из сэмпла kscontrl и почему то этот сэмпл не работает - пишет
Class OleSysError with message Недопутимая строка с указанием класса - может знаете в чем причина?