Единый шаблон управляемого расширения для AutoCAD любой версии, новее 2008

Автор Тема: Единый шаблон управляемого расширения для AutoCAD любой версии, новее 2008  (Прочитано 7991 раз)

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

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Собственно реализация идеи показана на видео, обозначенного далее по ссылке, т.к. порой лучше один раз увидеть, как это работает, чем 100 раз порассуждать о сферических конях в вакууме. Конструктивные замечания к обозначенному мною варианту решения данного вопроса, а так же демонстрация своих реализаций решения приветствуются. Тынц. То, как это работает, показано на примере "Hello World" для наглядности, т.к. прежде всего важно именно то, как это работает в итоге (т.е. насколько это удобно и просто в использовании, если вообще удобно и просто).

Шаблон создавался для решения следующих задач:

1. Быстрое переключение одного и того же исходного проекта (csproj) между разными версиями AutoCAD для отладки. При этом должны автоматом переподключаться все references, в соответствии с целевой версией AutoCAD, а так же изменяться настройки проекта и отладки.

2. Простая возможность запустить пакетную компиляцию одного и того же csproj под все нужные версии AutoCAD.

3. Дополнительно должна генерироваться "точка входа".

4. Проект должен легко переноситься с компьютера на компьютер, без необходимости выполнения переподключения references под текущее расположение ObjectARX SDK на той или иной машине. Это особенно актуально, когда переносится не один проект, но много.

5. Возможность легко изменять общие настройки сразу всех проектов (существующих и тех, что будут создаваться в дальнейшем). Делается путём вынесения общих настроек в общий внешний конфигурационный файл. Т.о. меняя его, применяем изменения ко всему, что имеем.
« Последнее редактирование: 12-03-2015, 23:10:11 от Андрей Бушман »

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13868
  • Карма: 1785
  • Рыцарь ObjectARX
  • Skype: rivilis
Я так понимаю, что ты собирался дать ссылку на это видео, которое по твоей ссылке не так просто найти:

« Последнее редактирование: 12-03-2015, 21:58:37 от Александр Ривилис »
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Нет, я дал именно то, что хотел дать: ссылку на краткое описание (пусть и на буржуйском, но понять не сложно) того, что демонстрируется в видео (для более чёткого представления о теме пьессы). Там же дана и конечная ссылка на мультик.

Как вы встроили видео в своё сообщение?

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13868
  • Карма: 1785
  • Рыцарь ObjectARX
  • Skype: rivilis
Нет, я дал именно то, что хотел дать: ссылку на краткое описание (пусть и на буржуйском, но понять не сложно) того, что демонстрируется в видео (для более чёткого представления о теме пьессы). Там же дана и конечная ссылка на мультик.
Лучше бы ты написал здесь и по-русски. ;)
Как вы встроили видео в своё сообщение?
Достаточно просто дать прямую ссылку на видео на Youtube и она встраивается.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Алексей Кулик

  • Administrator
  • *****
  • Сообщений: 1101
  • Карма: 172
"Видео было удалено пользователем" :(
Все, что сказано - личное мнение.

Правила форума существуют не просто так!

Приводя в сообщении код, не забывайте про его форматирование!

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
"Видео было удалено пользователем"
да, звук удалить нужно, а то слышно, что в офисе происходит. Спасибо А.Н. что сообщил :)

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Перезаписал видео + добавил к нему текстовые комментарии. Надеюсь, что с ними суть демонстрируемого решения будет более понятной.

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13868
  • Карма: 1785
  • Рыцарь ObjectARX
  • Skype: rivilis
Надеюсь, что с ними суть демонстрируемого решения будет более понятной.
Ага. Особенно по-английски.  ;D
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Ага. Особенно по-английски. 
тот "английский" не сложен для понимания. Вопросы можно задавать на русском (ежели они у кого-нить вообще возникнут).
В первом сообщении темы я добавил перечисление задач, для решения которых шаблон создавался.
« Последнее редактирование: 12-03-2015, 23:11:17 от Андрей Бушман »

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
По аналогии можно сделать шаблон для любого др. языка, в т.ч. и C++.

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
А вот реальный пример результата компиляции проекта, созданного на базе обозначенного шаблона. В архив proxy.zip я упаковал DLL файлы, созданные шаблоном при выполнении пакетного построения сборок под целевые версии AutoCAD. Фрагменты исходников скопировал отсюда.

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
На этом видео показано, как в зависимости от целевой версии AutoCAD происходит автоматическая реинициализация символов компиляции (помимо прочих свойств проекта). Полагаю, что этот вопрос был мною показан не достаточно ясно в предыдущем видео, раз меня об этом продолжают спрашивать. Надеюсь, что теперь вопрос отпадёт сам собой:

&feature=youtu.be

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Эту запись можно считать заключительной точкой в теме моего монолога о создании "разумных" шаблонов и проектов на их основе.

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Я понял, почему при использовании NUnit мне первый тест приходилось всегда запускать дважды - ошибка была в моём коде. Дело в том, что я запускал генератор HTML отчёта в коде метода, помеченного атрибутом OneTimeTearDown, который запускается автоматически после запуска всех имеющихся тестов. Однако оказалось, что в этот момент XML файл, на основе которого я пытаюсь генерировать HTML ещё не создан. Именно поэтому второй и последующие запуски создают HTML - они просто используют XML, созданный в предыдущей сессии запуска тестов. Я исправил этот момент. Теперь всё работает как надо, с первого раза. Внёс изменение в видео и перезаписал его. Так же сообщил об этом на болоте и автору NUnitOrange.