Перейти к публикации

Рекомендованные сообщения

Добрый день!

Требуется написать простую программу взаимодействия Creo и Delphi.

Выполнил все действия согласно описанному в хелпе:

1. Добавил системную переменную PRO_COMM_MSG_Exe = "F:\Program Files\PTC\Creo 2.0\Common Files\M140\mech\x86e_win64\bin\PRO_COMM_MSG.EXE"

2. Добавил системную переменную PRO_DIRECTORY = "F:\Program Files\PTC\Creo 2.0\Common Files\M140\"

3. Запустил vb_api_register.bat

4. Написал следующий код: 

var
  ConnSession : IpfcbaseSession;
  win : IpfcWindow;
  session : IpfcBaseSession;
  asyncconnection : IdPfcAsyncConnection;
  Casync :  CpfcAsyncConnection;
begin
  ConnSession:= CreateComObject(IpfcBaseSession) as Connsession;
  session := ConnSession

end;

 

при выполнении кода пишет: EOleSysError - класс не зарегистрирован, хотя в реестре запись с GUID есть. 

 

Есть у кого рабочий код на Delphi что бы понять что я не так делаю, или укажите мою ошибку, пожалуйста. 

 

Ссылка на сообщение
Поделиться на других сайтах


Com интерфейс к Creo капризный. Не всегда с первого раза работает. Надо поискать в документации как протестировать его работу...

 

По поводу Delphi есть такой вариант

https://www.gunsmoker.ru/2009/04/proengineer-delphi-aka-dll-delphi-lib.html?m=1

Ссылка на сообщение
Поделиться на других сайтах

Во вложении JavaScript файл для Windows. Запустите его. В Creo должно появиться сообщение с именем модели текущей. Если не появилось, значит COM не настроили.

MessageBox.js

Ссылка на сообщение
Поделиться на других сайтах
4 часа назад, Onizuka сказал:

Во вложении JavaScript файл для Windows. Запустите его. В Creo должно появиться сообщение с именем модели текущей. Если не появилось, значит COM не настроили.

MessageBox.js

Выдало сообщение Строка 4 Символ 1 Ошибка pfcExceptions::XToolkitNotFound Код 80020009.

 

Значит проблема в настройке COM

Ссылка на сообщение
Поделиться на других сайтах
3 часа назад, Bacuk сказал:

Выдало сообщение Строка 4 Символ 1 Ошибка pfcExceptions::XToolkitNotFound Код 80020009.

 

Значит проблема в настройке COM

1) Проверьте наличие папки F:\Program Files\PTC\Creo 2.0\Common Files\M140\vbapi

2) vb_api_register.bat обязательно нужно запускать от имени администратора.

 

ps: Если нет острой необходимости писать на Delphi - тогда НЕ делайте этого. Если только основное приложение уже не написано на нем. Полезнее разобраться с JLink (Java API). Подробная документация и куча примеров. За неделю разберетесь. Чем мучатся скрещивать. Мало того, что нужно API осознать, дак потом еще и понять как на под Delphi адаптировать.

Ссылка на сообщение
Поделиться на других сайтах

Папка есть. Запускаю от имени администратора, окно черное висит какое то время и закрывается. Черное окно пустое, никаких ошибок не выдает. 

 

В принципе можно написать на vbscript или delphi. Остальные языки в проекте не участвуют. Но сначала надо разобраться почему COM не работает. 

Ссылка на сообщение
Поделиться на других сайтах

Возможно не запущен nmsd.exe. Сервис общения с крео. Порт 1239.

Попробуйте указать другой порт через системную переменную

 PTCNMSPORT=<порт>

Или антивирус или фаервол мешает

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.
Примечание: вашему сообщению потребуется утверждение модератора, прежде чем оно станет доступным.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




  • Сообщения

    • Maik812
      с какой версии сам модуль.
    • Павлуха
      Отстали от жизни? В солиде уже давно кам-модуль вшит.
    • Ветерок
      В Солиде не получится. Солид - это КАД - в нем строится геометрия. И только. Потому в каком-нибудь КАМ строятся траектории, задаются скорости, направления и прочее. И только потом всё это преобразуется в Ж-коды при помощи постпроцессора именно под конкретную стойку. Нужны все три составляющие - КАД-КАМ-постпроцессор.
    • bubl leg
      Всем доброго, друзья!   Вопрос такой: по причине того, что собираю свой ЧПУ станочек настольный с довольно простыми для ЧПУ задачами (супержесткой рамы и прочего - не сильно обязательно) - рисование маркером печатных плат и сверловка их же - требуется какой то более менее подробный гайд на русском языке, по подготовке G-CODE в Solidworks. На youtube я нашел кучу конечно...Смотрю...Но, хоть и понимаю англицкий неплохо, всё равно не так "на лету", как хотелось бы.   Из этого вопрос: может ли кто то порекомендовать имеющийся тут, на форуме или ещё где то - русскоязычный более менее подробный гайд или видео - по моей задаче? Именно в Solidworks (не во FreeCAD и прочем).   Заранее спасибо!   P.S. Как собрать электронику для станка, как прошить - это всё не важно, это всё знаю. Интересует именно подготовка G-CODE в среде Solidworks,с примерами и (желательно) последующей отправкой на ЧПУ.
    • grayve
      Нет этого пункта в меню((( Вопрос решен. Нужно нажать кнопку Применить представление структуры изделия...
    • BSV1
      С наступающим!  
    • grayve
      Народ, Добрый вечер! Подскажите, у меня в сборке несколько сотен кирпичей. Печь собираю. Многие из них стандартные изделия, но поскольку в библиотеке таких кирпичей нет мне пришлось их делать в виде деталей. Соответственно сейчас в спецификации они попали в сборочные единицы. Знаю, что можно по одной детали через окно структуры поменять Раздел... Но несколько сотен раз очень не хочется. Помогите решить проблему? T-Flex 17
    • grayve
      Нужно разорвать проекционную связь с проекцией и переходить на другую страницу.
    • Viktor2004
      наверное для этого и сделали переменную #8501 но она только для MDI клавиш. Цифр и букв там нет. Я когда пробовал на C-Executor писать, тоже не смог реализовать перехват нажатия кнопок во время загрузки ЧПУ. Там тоже фиксируется момент нажатия, а если она уже нажата во время загрузки, инструментами СИ это перехватить не получится
    • gudstartup
      клавиатурные события очень медленные и куда из переменной девается код  если он не замещается другим я не понимаю. если в цикле программы есть опрос и никто более ничего не нажимал и не опрашивал  код должен лежать где положено иначе вся эта катавасия никуда не годится. 
×
×
  • Создать...