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

Как создать шаблон нового проекта UG NX5 в Visual Studio 2005 ?


Markiz

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

Помогите новичку в программировании! Хочу, чтобы заработал хотя-бы один из трех файлов *.cpp из папки ugopen.

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


Помогите новичку в программировании! Хочу, чтобы заработал хотя-бы один из трех файлов *.cpp из папки ugopen.

А сертифицирован ли этот компилятор в UG? -

я предполагаю что нет - скорее всего Вам нужен MVS2003

Ознакомтесь лучше с документацией UG

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

A NX5 Open Wizard в Visual Studio 2005 не работает?

Что такое NX5 Open Wizard и как им пользоваться в той версии Visual Studio, с которой ты работаешь? Изменено пользователем Markiz
Ссылка на сообщение
Поделиться на других сайтах

После Инсталляции NX5 в в Visual Studio 2005 при создании нового проекта появляется NX5 Open Wizard.

Если этого нет, можно попробовать скопировать из c:\Program Files\UGS\NX 5.0\UGOPEN\vc_files" в "c:\Program Files\Microsoft Visual Studio 8.0\VC, но можно ли просто скопировать не знаю.

А сертифицирован ли этот компилятор в UG?

Видимо да, раз добавляет визард в каталог с Visual Studio 2005

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

debuger в VS2003 может работать вместе с ugraf.exe или бессмыслено его использовать, лучше сразу на Building или Releasing?

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

Я запускаю с отладкой VS 2002 для NX4, в принципе работает и можно проверять программы, но с есть проблемы о которых nut888 не один раз писал ранее.

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

Я извиняюсь, хотел бы спросить: А что все работают с UG Open в Visual Studio?

Я как то привык к Borland Builder 5/6, всё в нем пишу еще где то с UG ver.15.

Визуальный интерфейс в нем писать точно приятней, чем в VS или в UG/Styler

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

Я извиняюсь, хотел бы спросить: А что все работают с UG Open в Visual Studio?

Я как то привык к Borland Builder 5/6, всё в нем пишу еще где то с UG ver.15.

Визуальный интерфейс в нем писать точно приятней, чем в VS или в UG/Styler

А как Ты настраиваешь Borland Builder 5/6, чтобы он компилировал без ошибок проекты, в которых есть вызовы функций UG Open API, NXOpen C++?
Ссылка на сообщение
Поделиться на других сайтах

А никаких особых настроек не требуется.

Добавить в опциях проекта путь в Include к UGOPEN

да создать библиотеки импорта в формате Borland

вместо тех, что в UGOPEN.

STL тоже работает.

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

например, утилитой coff2omf.exe конвертнуть *.lib из тех,что

идут в UGOPEN или создать из DLL утилитой implib

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

например, утилитой coff2omf.exe конвертнуть *.lib из тех,что

идут в UGOPEN или создать из DLL утилитой implib

Добрый день!

Воспользовался Вашим советом переконвертировал *.lib которые лежали в папке UGOPEN (7 штук насчитал) с помощью утилиты coff2omf.exe. Она конвертировать согласилась только с параметром -lib:ms, при других вариантах либо не было выходного файла, либо он был равен 512 байт. Далее скопировал их с заменой обратно в папку UGOPEN и на всякий случай в папку ...Borland\CBuilder6\Lib\, В свойствах проекта добавил в Include Path: $(UGII_BASE_DIR)\ugopen.

Билдер все линкует (попробовал много варианов кода) только "не пережовывает" UF_initialize(); (и многие другие функции которые начинаются с "UF_") и пишет:

[Linker Error] Unresolved external '_UF_initialize' referenced from C:\PROGRAM FILES\BORLAND\CBUILDER6\PROJECTS\NX\DLL\UNIT1.OBJ

Помогите решить проблему, уж очень не хочется связваться с Visual Studio.

З.Ы. Знаком с Borland Delphi уже 6 лет, на С++Builder пересел за один вечер, а VS ориентирована скорее на профессиональных програмистов.

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

Надо еще добавить библиотеки в проект, в частности libufun.lib...

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

post-16807-1235586196_thumb.jpg

Все отконвертированные библиотеки распихал куда только возможно (в том числе в каталог с проектом). Может я их отконвертировал не правильно?

Пробовал сделать DLL'ку - при запуске их NX'а пишет: "В библиотеке потеряна требуемая точка входа ... имя функции ufusr", хотя в коде присутствует объявление этой функции:

void ufusr(char *param, int *retcode, int paramLen)

{

......

}

пробовал и так:

extern DLLExport void ufusr(char *param, int *returnCode, int rlen)

{

......

}

Перепробовал много вариантов, такое ощущение хожу вокруг да около маленького недочета.... Уважаемый, Harbel, если не сложно, сбросьте исходники самого простого проекта (внешнего приложения или DLL'ки) под С++Buider 6 на korop_alex@bk.ru, заранее благодарен :)

З.Ы. Я думаю эта информация будет актуальна и для автора соседнего топика.

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

extern DLLExport void ufusr(char *param, int *returnCode, int rlen)

{

......

}

1. По поводу загрузки exe файла ( как внешнего приложения ) - могу посоветовать запускать его из cmd.exe с настроенными переменными UGII_ROOT_DIR / UGII_BASE_DIR / UGII_LICENSE_FILE ( или UGS_LICENSE_SERVER )

По поводу точки входа ufusr - надо глянуть в таблицу экспорта в твоей собранной библе. если там имя

декорированное - типа ?ufusr@@YAXPADPAHH@Z ( по каким правилам дядя Борланд их декорирует я не знаю :) ) - то дело как раз в декорации имен экспорта :). Чтобы от этого избавится, надо вот так вот определить нашу точку входа в коде ...

extern "C" DLLExport void ufusr(char *param, int *retcode, int paramLen)

Regardzzz ...

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

Я обычно для проекта DLL делаю простейший def-файл с парой строк вида:

LIBRARY имя_dll

EXPORTS ufusr=_ufusr

и включаю его в проект.

Это для void ufusr(char *param, int *retcode, int paramLen)...

Ну а системные переменные, конечно, должны быть установлены в системе или

из bat-файла, можно и в path путь к ugii-каталогу прописать...

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

Я обычно для проекта DLL делаю простейший def-файл с парой строк вида:

LIBRARY имя_dll

EXPORTS ufusr=_ufusr

и включаю его в проект.

Это для void ufusr(char *param, int *retcode, int paramLen)...

Ну а системные переменные, конечно, должны быть установлены в системе или

из bat-файла, можно и в path путь к ugii-каталогу прописать...

Harbel! снимаю шляпу! все заработало, спасибо!

З.Ы. Уже удалил монстра от Microsoft (VS2008), Builder - как родной :)

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • Guhl
      В концевиках "магазин втянут" и "магазин у шпинделя" Проверяйте их корректную работу 
    • Metal_Cutter
      Всем доброго дня. Станок токарно-карусельный фирмы Accuway модель UV-100 стойка Fanuc Series 0i-TD. Магазин зонтик. При выполнении смены инструмента, подъезжает к магазину, ждет. Появляется сообщение: EX1030 M.S.T. FUNCTION TIME OVER. В руководстве комментарии: 1. Время функции M.S.T. окончено 2. Интерфейс ПЛК: A3.5. Где искать причину ошибки?
    • Ninja
      в Канаде не скучно! Эпическая погоня всей полиции округа и арест с утоплением в сугробе простого канадского парня - дитя природы...     Человек просто собрался в баню, а тут такое! Произвол и насилие! Ставьте лайки, подписывайтесь и всё такое Ёу...
    • mmaag
      Косвенно ограничивается максимальным передаточным отношением. Непосредственно - в расчёте. В разных каталогах называют по разному: "Wrap angle" или "arc of contact". Иногда ограничивают числом зубьев в обхвате.
    • Guhl
      Пиздишь, постоянно лезешь Вот ты хyйло лживое.  
    • lem_on
      Федора ответ )) даа, память 8 MB и то сыпется .  В отличие от тебя, я не лезу где не понимаю. 
    • Ahito
      Настроил уведомления в потоке работы через базу данных. Тестировал на своём ПК, всё работает идеально(поднял сервер PDM на своём ПК). Перенёс всё это на сервер, уведомления не работают. Может кто сталкивался и знает решения, подскажите, пожалуйста.  
    • Cas
      @roiman Ну Вы серьезно? Вы сомневаетесь, что производственник посмотрев на чертеж и не увидев параметры шестерни начнет делать и не спросит - где взять параметры зацепления? Или что? Разнервничается и не станет выполнять заказ - если заказ ему интересен? Проблема только в том, что фирма, в которой я работаю - не РЖД и не Газпром и нам нужно изготовить всего 50 комплектов деталей в год. А не 50 тысяч комплектов. Вначале и был чертеж с таблицей. Проблем сделать таблицу с греческими буковками - тоже никаких. Но я лично сказал ему убрать и сделать сноску в т.т. на таблицу из Компаса. Все эти гигантские проблемы моего конструктора, на которые мне ВСЕ наперебой начали справедливо указывать - решаются за 2-3 минуты разговора с производственником - если на производстве, хоть раз изготавливали подобные шестерни и точили оси. "Веселые картинки", как вы сказали - превратить в чертеж - дело 10 минут. Причем в эти 10 минут входит пробежка по оформительскому ГОСТу.  Единственное здесь дельное  предложение прозвучало от Вас - разделить вал шестерню. Т.к. кроме как с помощью электроэрозии - я нигде не найду производство в РФ, которое бы взялось за выполнение моего заказа (с учетом количества и бюджета) 
    • Guhl
    • Guhl
      А вот тут вы пишете следующее: "отключите линейку сделайте semiclosed loop и никакого дрожания не будет" то есть вы советуете отключить, а не включить  Похоже это не я не понимаю как это работает, а вы То вы пишите отключить для борьбы с вибрацией, то вы пишите включить для борьбы с вибрацией. Так включить или отключить? Обычно @gudstartup в таких случаях включает игнор и гордо удаляется работать   @lem_on Я вижу ты принял участие в этой дискуссии Скажи, пожалуйста, что имеет в виду @gudstartup - включить или отключить?   Поясняю, отключая линейку (канал), тем самым мы отключаем эту функцию, потому что эта функция работает только с двумя каналами
×
×
  • Создать...