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

Pro\Toolkit, Java, VBA


VitAl2013

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

хочу сказать, что Вас слушают и благодарят!

+1

Присоединяюсь :) Тема очень полезная

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


  • 2 недели спустя...

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

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

Добрый день! Разбираюсь уже вторую неделю с ProToolkit

(в связи с написанием дипломного проекта).Очень рад что есть такая тема! Хочется задать несколько вопросов.

1. Стоит WF 3, ProoToolKit устанавливал после, как бы отдельно доустанавливал,

4. Проверил наличие самой лицензии на тулы через ptsstatus.bat. Она там идёт со звездой (*) и надписью (Available only on startup), что означает что проверяется только при старте Прошки.

Запустил и не увидел там ProoToolKit, это нормально?

2. Очень долго бился с make_install - безуспешно, стоит VS 2005 Professional(другую не нашел), Make-файл выполнился до тех пор что создались файлы pt_install_test.lib и pt_install_test.exp

3. VS выдает такого типа ошибки:

LIBCMT.lib(stat.obj) : error LNK2005: ___dtoxmode already defined in libc.lib(stat.obj)

   Creating library pt_install_test.lib and object pt_install_test.exp

LINK : warning LNK4098: defaultlib 'LIBCMT' conflicts with use of other libs; use /NODEFAULTLIB:library

pt_install_test.dll : fatal error LNK1169: one or more multiply defined symbols found

NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 8\VC\bin\link.EXE"' : return code '0x491'

Stop.

Project : error PRJ0019: A tool returned an error code from "Performing Makefile project actions"

Build log was saved at "file://c:\Documents and Settings\Admin\Мои документы\Visual Studio 2005\Projects\ProTOOLKITInstall\ProTOOLKITInstall\Debug\BuildLog.htm"

ProTOOLKITInstall - 84 error(s), 1 warning(s)

========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

4. На этом я как бы остановился, и занялся написанием своей DLL

Пишу на Delphi.

Пробовал запустить свою DLL через Tools->Auxiliary Applications, PROTK.DAT вроде правильно прописал, в итоге когда нажимаю старт Прошка мне пишет ошибку что моя DLL - foreign programm

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

p.s не пинайте сильно, буду рад любым мыслям, предложениям, комментариям, заранее спасибо!

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

Запустилась моя DLL через Tools->Auxiliary Applications :clap_1: Рад без памяти. но я так понимаю к ProToolKit такой способ никакого отношения не имеет, или я не прав! Вообще хотелось бы создать доп. меню в проинженере, чтобы там было несколько функций по которым вызавались формы из DLL и в них делались необходимые расчеты, а пока это выглядит вот так как на скрине.

post-23480-1242284842_thumb.jpg

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

Запустилась моя DLL через Tools->Auxiliary Applications

Можно мне исходники прислать, если не сложно?

Я бы тоже очень рад был :)

maqsus@mail.ru

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

к ProToolKit такой способ

имеет прямое отношение, - один из способов запуска

Я пока подобрался к формам только, а я смотрю тут они уже есть, может жувнёте и/или сюда пример проекта приаттачить получиться, простой с комментами внутри?

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

Да, сейчас поподробнее отпишусь. В общем тут все просто:

файл: PROTK.DAT

лежит тут: [путь_до_прошки]\protoolkit\add_toolkit

Содержание файла PROTK.DAT

name MAIN

startup DLL

allow_stop TRUE

delay_start TRUE

exec_file MAIN.DLL

text_dir C:\PTC3\proeWildfire_3.0\protoolkit\add_toolkit\1

end

Файл MAIN.DLL лежит тут же [путь_до_прошки]\protoolkit\add_toolkit

примеч. по-моему моя DLL не запускалась, пока я не положил DLL-ку в папку [путь_до_прошки]\bin

MAIN.DLL

ibrary MAIN;

uses

  SysUtils,

[b]  DLL_U,

  Forms,[/b]

  Classes;



{$R *.res}

function ShowForm : Integer; stdcall;

var

Form : TDLL_input;

begin

Form := TDLL_input.Create(Application);

Result := Form.ShowModal;

Form.Free;

end;

exports ShowForm;

begin

ShowForm; // [b]вот тут надо прописать фунцию - ключевой момент.[/b][attachment=18113:DLL.rar]

end.

А вообще с формами все просто ... Я создал форму отдельно кинул туда Edit, кнопку, даже на конопку прописал небольшой расчет, необходимый мне. Сохранил Unit ( DLL_U - в моем случае), потом подключил ее к DLL и откомпилил, получилась DLL с формой внутри.

В общем как то так, если кому надо исходники вышлю!

Ну а запускается все очень просто:

Tools->Auxiliary Applications

Там в проводнике, выбираем наш файл PROTK.DAT нажимаем Registr, и затем в появившемся окне выбираем MAIN(нашу DLL) и жмем старт

DLL.rar

Изменено пользователем Danks
Ссылка на сообщение
Поделиться на других сайтах

Ёшкин кот! Работает!!!

В PROTK.DAT достаточно написать (разместив Dll в C:\MAIN.dll):

name MAIN

startup dll

allow_stop true

delay_start false

exec_file C:\MAIN.dll

text_dir C:\

revision Wildfire 3.0

end

Danks, спасибо!

Ты осуществил мою старую мечту - писать программы в Delphi под Прое!!!

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

Danks, спасибо!

Спасибо и от меня! Попробую на C++Builder, должно прокатить и там ..

>В общем как то так, если кому надо исходники вышлю!

если можно то вышлите пожалуйста и мне:

norsk@land.ru

Изменено пользователем Norsk.
Ссылка на сообщение
Поделиться на других сайтах

Не врубился с TDLL_input, поэтому просто ввел TForm и работает...

library mydll;



uses

  SysUtils,

  Classes,

  Forms,

  DLL_U in 'DLL_U.pas' {Form1};



{$R *.res}

{Определяем функцию как stdcall}

function ShowForm : Integer; stdcall;

var

  Form : TForm;

begin

Form := TForm.Create(Application);

Result := Form.ShowModal;

Form.Free;

end;

exports ShowForm;



begin

ShowForm;

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

Да не за что:) тут вроде ничего сложного..... но меня такой запуск приложений из под ProEngineer как то не особо впечатлил..... с тем же успехом можно написать .exe и запустить отдельно, разница не большая. Другой разговор если бы можно было выдергивать из модели необходимые параметры, ну скажем размеры, наверное это все тоже сделать можно.

Следующий вопрос... Хочу создать свою меню в ProEngener но тут я так понимаю без Билдера не обойтись... и как это все компилить... вот в чем вопрос?

Не врубился с TDLL_input, поэтому просто ввел TForm и работает...

Ну по идеи тогда у тебя создастся чистая форма? или нет?

TDLL_input это Unit в котором сохранена моя форма с Edit и Кнопкой, на которую прописана процедура.

По поводу исходников: DLL уже выложил тут, выше, а файл PROTK.DAT просто в блокнот скопируйте и сохраните....

Еще один вопрос родился:

Допустим есть DLL, в ней экспортируется несколько функций, на для примера 10, вот подключил я ее таким образом к PROE, но не писать же мне их все на выполнениие, допустим мне нужно воспользоваться конкретной одной функцией... как ее оттуда вызвать... че то пока не пойму....

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

Цитата

к ProToolKit такой способ

имеет прямое отношение, - один из способов запуска

А вот тут я бы поспорил. мне кажется что это совсем не ProoToolKit, вот у меня стоит и WF3 и WF4, - WF3 ставил с ProoToolKit, там есть соответствующая папка, WF-4 ставил давно и без TOOLKIT-а, там нет папки proToolKit, так вот из под WF-4 так же запускается моя DLL без всяких проблем.... хотя может тут какая загвоздка и я не прав?

Кто запустил тестовый пример, тобишь скопмипил make_install - объясните в чем фишка этого тестового примера, и что он делает\дает как "изменился" ProEngineer? пункт в меню какой-нибудь добавился?

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

Ну по идеи тогда у тебя создастся чистая форма? или нет?

По сути, да... А вот управлять Прое из этой формы не получится, т.к. действительно - API то не подключено :blink:
Ссылка на сообщение
Поделиться на других сайтах

А вот управлять Прое из этой формы не получится, т.к. действительно - API то не подключено

Интересно , а возможно ли в этом случае подключить

к Билдеру это API ведь там компилер - C++

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

Так, пошел читать мануал (tkuse который). Вроде бы понятно все что написано хоть и на английскому, но все равно не очень подробно, не постарались ребята.

Вообще сам лично видел как люди программят под ProEnginner, меню, формы, все что угодно.... но тогда спросить КАК!? не было времени да и в двух словах не объяснишь...

В общем продолжение следует, как чего новое узнаю, отпишусь обязательно!

Мне бы конечно для моих задач и DLL хватило, но проблема в том что бы из одной DLL вызывать разные функции.... это конечно можно сделать, но хочется чтобы все было КРАСИВО!

Интересно , а возможно ли в этом случае подключить

к Билдеру это API ведь там компилер - C++

Ответ одназначный, ВОЗМОЖНО! ProoToolKIT и заточен изначально под С++,(то есть там можно организовать взаимодействие PROE со своей программой, как на объектном так и на параметрическом уровне) у меня лично знаний C++ ну просто ноль, а времени разибираться уже нету(( поэтому и пишу DLL на Delphi
Ссылка на сообщение
Поделиться на других сайтах

ProoToolKIT и заточен изначально под С++

Это конечно так, вот только и от типа компилятора есть зависимость..

А вообще было бы здОрово еслибы с Borland-овским C++ получилось :)

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

Присмотритесь к первому сообщению в теме (шапке), я его обновляю время от времени.

Скрестить вроде можно хоть с чем (На сегодняшний день известны скрещивания с Питоном и с Дельфи). Я если получиться попробую всё ж перелезть на <noindex>Qt</noindex> - кросплатформенное решение, те же С/С++ но подход к делу более грамотный, можно сразу несколько зайцев грохуть. Но это всё лирика покамест.

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

И все таки, как я понимаю, Delphi и Borland C++ Builder это разные вещи. И к Delphi заголовочные файлы .h не подключишь процедурами #Include <file.h>... Или я не прав?

Другое дело, то продукты идентичные по внешнему облику, но только язык программирования разный. А это уже не так страшно...

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

Вот темка <noindex>http://gunsmoker.blogspot.com/2009/04/proe...delphi-lib.html</noindex> - там человек собрал из .lib файлов одну большую DLL в ней все функции из ProoToolKit -a, там как раз он и саму DLL выложил

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

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

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

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

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

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

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

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

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

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

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




×
×
  • Создать...