Сообщество программистов Autodesk в СНГ
ADN Club => ObjectARX => Тема начата: domax от 07-04-2016, 12:15:47
-
Здравствуйте, уважаемые знатоки.
Я программирую на С++ довольно давно. В 2004г. официально купил MSVS C++2003 (пиратства не поддерживаю). Но с приходом в мою жизнь Автокада 2007 (тоже честно купленного) у меня возникла некоторая проблема. У Автокада в документации заявлена необходимость наличия MSVS C++2005 для разработки надстроек типа ARX, но мне очень не хотелось бы терять возможностей полной профессиональной версии С++ 2003. Можно ли как-то "уговорить" Автокад на сотрудничество с 2003? Ведь express версия сильно обрезана по сравнению с моей, а покупать полную версию 2005 сегодня просто глупо. Ну, а начинать Лисп или Бейсик после почти 20 лет С, сами понимаете, как-то не с руки. :'(
Помогите, пожалуйста.
-
Приветствую на форуме!
Можно ли как-то "уговорить" Автокад на сотрудничество с 2003?
Однозначно нет. а покупать полную версию 2005 сегодня просто глупо.
Это просто невозможно - её не продают.Ну, а начинать Лисп или Бейсик после почти 20 лет С, сами понимаете, как-то не с руки.
Ну тогда C# - есть бесплатные SharpDevelop, MS VS 2013 и 2015 Community Edition.
-
Александр, спасибо большое за столь быстрый ответ.
1. Простите за назойливость, но почему примирить Автокад 2007 с С++ 2003 однозначно нельзя? Можете немного прояснить, если нетрудно?
2. Могу ли я сейчас пользоваться С++ Community, например, или тоже "однозначно нет"?
3. "Мой" С++ 2003 мне, собственно, дорог из-за MFC. Могу ли я как-то перенести пользование этими библиотеками на Community или 2005 express?
4. Вы считаете С# более перспективным направлением по сравнению с С++? Автокад, вообще-то, написан на С++...
Я понимаю, что Автокад 2007 сейчас, мягко говоря, неактуален, но купить новый - средства не позволили, а притворяться студентом или воровать - совесть, т.ч., если кто может помочь дельным советом, прошу.
-
1. Простите за назойливость, но почему примирить Автокад 2007 с С++ 2003 однозначно нельзя? Можете немного прояснить, если нетрудно?
Разные версии CRT и MFC - они несовместимы.
2. Могу ли я сейчас пользоваться С++ Community, например, или тоже "однозначно нет"?
Можно использовать VC++ Community 2015 с AutoCAD 2017 и только с ней.
3. "Мой" С++ 2003 мне, собственно, дорог из-за MFC. Могу ли я как-то перенести пользование этими библиотеками на Community или 2005 express?
2005 Express не содержит MFC. Так что лицензионно чистое решение не получится.
Кстати, возможности C# по созданию диалоговых окон значительно превышают возможности MFC.
4. Вы считаете С# более перспективным направлением по сравнению с С++? Автокад, вообще-то, написан на С++...
Я лишь предложил решение для AutoCAD 2007, о котором шла речь. AutoCAD написан на смеси C++ и C# (.NET). Причем чем дальше, тем больше доля C# (.NET) в составе AutoCAD.
-
Спасибо, Александр, за ответ.
Как же мне быть, чтобы не растерять опыта/навыков программирования на С++?
Можно ли будет сделать что-то серьезное под Автокад 2007 на С++ 2005 Экспрес?
Пожалуйста, посоветуйте, а то мне, честно говоря, не хотелось бы потом опять куда-то переключаться. Исходные условия: Автокад 2007 и не выше; необходимость писать (хоть и не серийно) достаточно серьезные вещи, связанные с проектирование ремонтно-строительных работ в энергетике.
AutoCAD написан на смеси C++ и C# (.NET). Причем чем дальше, тем больше доля C# (.NET) в составе AutoCAD.
Понимаю, что тенденция именно туда, к управляемому коду, но я на новые версии даже не заглядываю, чтобы не соблазняться. Это все равно, как угнать новую машину со стоянки только потому, что у меня денег только на жигуль...
-
Можно ли будет сделать что-то серьезное под Автокад 2007 на С++ 2005 Экспрес?
Нет.
1) Не будет MFC. Так что с созданием диалоговых окон будут сложности.
2) Если мне не изменяет память то в VC++ 2005 Express проблематично отлаживать native (C++) код.
-
Ладно, Александр, я "проглочу" эту неприятность.
Но В ПРИНЦИПЕ, как мне настроиться на серьезное программирование под 2007-ой Автокад?
Есть ли хоть какое-то решение, в котором можно было бы программировать "свои" примитивы, не говоря уже со связями с базами данных?
Честно, говоря, я уже пытался "знакомиться" с Лиспом и Бейсиком, но ... но если уже никак по-другому, то я готов буду на чем угодно, лишь бы это решалось в принципе.
Прошу Вашей консультации. Если можно, более подробной. Извините, что отнимаю Ваше рабочее время. Я очень редко обращаюсь вот так, напрямую, с вопросами, но тут уж припекло. Спасибо.
-
Есть ли хоть какое-то решение, в котором можно было бы программировать "свои" примитивы, не говоря уже со связями с базами данных?
"Свои" примитивы - это только ObjectARX. Это пожалуй единственное, что нельзя сделать при помощи AutoCAD .NET API (C#/VB.NET) по сравнению с ObjectARX. Так что я бы ориентировался на C#.
-
Если можно, более подробной.
Я могу поподробней отвечать если вопрос достаточно конкретный. На конкретный вопрос этой темы я дал исчерпывающий ответ еще в первом своём сообщении.
-
Так что я бы ориентировался на C#
Понятно, Александр, спасибо за ответы.
С помощью SharpDevelop я смогу справиться с созданием диалоговых окон?
А вообще, я попробую, наверно, купить на ebay VS C++ 2005.
Если же это нереально, то буду пытаться через С#.
Пожалуй, все.
Еще раз благодарю за столь оперативную поддержку Александра Ривлиса.
-
А вообще, я попробую, наверно, купить на ebay VS C++ 2005.
Если же это нереально, то буду пытаться через С#.
Купить конечно можно, но насколько это будет юридически законно - я сказать не могу.
-
С помощью SharpDevelop я смогу справиться с созданием диалоговых окон?
Конечно.
-
Разделил тему: SharpDevelop и AutoCAD 2007 (http://adn-cis.org/forum/index.php?topic=7014.msg19567#msg19567)
-
Купить конечно можно, но насколько это будет юридически законно - я сказать не могу.
1. Прошу прощения, а разве это незаконно - купить "б/у",так сказать, вариант у человека, который купил у дилера, попользовался и хочет продать?
2. И еще в догонку о С-шарпе. С# express edition vs SharpDev - что лучше?
3. И какую версию SharpDev мне нужно избрать для программирования под Автокад 2007?
-
В 2004г. официально купил MSVS C++2003 (пиратства не поддерживаю). Но с приходом в мою жизнь Автокада 2007 (тоже честно купленного) у меня возникла некоторая проблема.
...но мне очень не хотелось бы терять возможностей полной профессиональной версии С++ 2003. Можно ли как-то "уговорить" Автокад на сотрудничество с 2003?
Как вариант - можно покупать не самому, но "уговорить" руководство купить более новые версии как AutoCAD, так и Visual Studio (если код пишется под нужды компании). Для организаций такие затраты, как правило, по карману. Иначе через полгода может появиться очередная тема о том, как бы перейти на AutoCAD 2009-й...
3. И какую версию SharpDev мне нужно избрать для программирования под Автокад 2007?
Любую, которая поддерживает нужную версию .NET Framework.
"Свои" примитивы - это только ObjectARX. Это пожалуй единственное, что нельзя сделать при помощи AutoCAD .NET API (C#/VB.NET) по сравнению с ObjectARX.
Насколько я помню, упоминание MultiCAD вами было разрешено. С его помощью можно.
1. Прошу прощения, а разве это незаконно - купить "б/у",так сказать, вариант у человека, который купил у дилера, попользовался и хочет продать?
Сильно подозреваю, что лицензионное соглашение может это не разрешать. :)
-
1. Прошу прощения, а разве это незаконно - купить "б/у",так сказать, вариант у человека, который купил у дилера, попользовался и хочет продать?
Это нужно спрашивать у юристов - это их компетенция. Кроме того какие официальные документы на программу ты можешь получить на EBAY? Насколько я знаю покупка "б/у" AutoCAD юридически незаконна и поэтому бессмысленна. Не говоря уже о том, что поддержка осуществляется только для последних трех версий.
-
Насколько я помню, упоминание MultiCAD вами было разрешено. С его помощью можно.
Мы это уже обсуждали. Не думаю, что MultiCAD поддерживает AutoCAD 2007.
-
Как вариант - можно покупать не самому, но "уговорить" руководство купить более новые версии как AutoCAD, так и Visual Studio (если код пишется под нужды компании). Для организаций такие затраты, как правило, по карману. Иначе через полгода может появиться очередная тема о том, как бы перейти на AutoCAD 2009-й...
Прекрасно, конечно, но у нас не такое большое предприятие (проектант - я один) и кризис в придачу, так что о чем-то лучшем - когда-то позже.
Да и Автокад 2007, в принципе, должен справиться с нагрузкой.
-
Не думаю, что MultiCAD поддерживает AutoCAD 2007.
Цитата из readme.txt:
Полная версия MultiCAD API поддерживает линейку AutoCAD 2007-2014
-
Не думаю, что MultiCAD поддерживает AutoCAD 2007.
Цитата из readme.txt:
Полная версия MultiCAD API поддерживает линейку AutoCAD 2007-2014
Тут говорится только про AutoCAD 2010...2014: http://developer.nanocad.com/blog/2014/10/14/multicad-enabler-for-autocad-and-zwcad/
Там же в файле лицензии говорится про регистрацию в клубе разработчиков. Дальше не смотрел. Считаю, что это оффтоп в данной теме. Завершаем его.
-
Тут говорится только про AutoCAD 2010...2014: http://developer.nanocad.com/blog/2014/10/14/multicad-enabler-for-autocad-and-zwcad/
Там же в файле лицензии говорится про регистрацию в клубе разработчиков. Дальше не смотрел. Считаю, что это оффтоп в данной теме. Завершаем его.
То, что я цитировал, взято из readme.txt, входящего в состав дистрибутива последней версии MultiCAD, раздаваемой как раз в клубе разработчиков. Теперь можно завершать.
-
1) Не будет MFC. Так что с созданием диалоговых окон будут сложности.
О каких сложностях Вы говорите, Александр? Если использовать тяжеловесный MFC только как инструмент создания диалоговых окон, то без него легко можно обойтись, например использую WTL. Я, например, так и поступаю. Т.е. связка Express + WTL - идеальный инструментарий для написания простых и шустрых приложений.
Так что сложность я вижу только одну (да и то временную) - освоение WTL.
Зато на выходе имеем:
1. Компактный код.
2. Отсутствие лицензионных проблем с MFC.
3. Легальная доступность Express студий.
-
О каких сложностях Вы говорите, Александр?
Именно об этих сложностях я и говорю. Можно вообще пользоваться одним Win32 SDK или вообще использовать QT. Но автор пишет, что:
3. "Мой" С++ 2003 мне, собственно, дорог из-за MFC.