Ошибка при запуске программы

Автор ZeroOne, 08.02.13, 12:32:38

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

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

ZeroOne

День Добрый, делаю приложение для работы с Компас, при запуске программы ошибка (использую COM).

08.02.13, 19:08:36 #1 Последнее редактирование: 08.02.13, 20:12:25 от Sabahs
Попробуйте зарегистрировать kompas.exe -register.
Хотя без куска кода, кто вызывает Dll тяжело сказать о причине ошибки.

ZeroOne

uses ksTLB, LtDefine, LDefin2D, ksAuto, LibTool, ksConstTLB, ksAPI7;
....
Kompas:= KompasObject(GetActiveOleObject('Kompas.Application.5'));
   if Kompas <> nil then
   begin
    Doc:= ksDocument2D(Kompas.ActiveDocument2D());
    if Doc = nil then
      ShowMessage('Данный документ не является чертежом')

Регистрировать пробовали?
ksAPI7 не нужен.

ZeroOne

Вот что появляется при попытке регистрации

Компас их сам регистрирует kompas.exe -register
После чего среда разработки должна их видеть.

ZeroOne

И не может быть из-за того что установлено 2 Компаса - 13 и 14 (64)

Может брать библиотеки типов не того Компаса и у них есть общие папки, что приведёт к некорректной работе.

ZeroOne

Даже при одном Компасе отказывается запускаться, единственное если убрать из модулей kAPI7 то запускается