Всем привет! Начал изучать Eplan API, и сразу возник вопрос, действительно нужно постоянно перезапускать Eplan и выгружать Add-Ins, и потом опять запускать, если постоянно меняешь что-то в программе?
Просто если просто ограничиться выгрузкой Add-In`a, то никаких изменений не происходит.
Спасибо!
//Называть. Что заставляет так темы?
- Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
- Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
- Не надо писать свой вопрос в первую попавшуюся тему - всегда лучше создать новую тему.
- За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения. Непонятно? - Читать здесь.
- Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
- Перед тем как что-то написать - читать здесь, а затем здесь и здесь.
- Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.
Перезапуск Eplan после компиляции изменений
Модератор: специалисты Eplan
-
- здесь недавно
- Сообщения: 29
- Зарегистрирован: 23 ноя 2017, 00:14
- Имя: Антон
- Страна: Россия
- город/регион: Санкт-Петербург
- Благодарил (а): 18 раз
- Поблагодарили: 4 раза
Перезапуск Eplan после компиляции изменений
Последний раз редактировалось aranea 01 окт 2018, 14:19, всего редактировалось 1 раз.
Причина: поправил заголовок
Причина: поправил заголовок
-
- здесь недавно
- Сообщения: 12
- Зарегистрирован: 28 сен 2018, 15:27
- Имя: Владимир
- Благодарил (а): 5 раз
- Поблагодарили: 6 раз
API. Перезапуск Eplan
Здравствуйте!
Когда Вы пишете свой класс AddIn'a, то реализуете методы интерфейса IEplAddin (OnRegister, OnInit, OnInitGui, OnExit, OnUnregister).
И важно, что они вызываются Eplan'ом в определённой последовательности:
* При загрузке AddIn'а: последовательно выполняются OnRegister, OnInit, OnInitGui;
* При выгрузке AddIn'а: OnExit, OnUnregister;
* При открытии Eplan'а с уже загруженным AddIn'ом: OnInit, OnInitGui;
* При закрытии Eplan'а с уже загруженным AddIn'ом: OnExit.
Не обязательно постоянно перезапускать Eplan, ведь можно использовать режим отладки.
Только для этого в Visual Studio необходимо немного настроить проект:
1. Зайдите в свойства проекта Visual Studio (Проект/Свойства или Alt+Enter);
2. В настройках "События сборки" впишите командную строку события после сборки (Build Events.png).
3. В настройках "Отладка" для конфигурации "Debug" выберите действие "Запуск внешней программы", указав в качестве этой внешней программы полный путь к EPLAN.exe. Здесь же укажите аргумент командной строки для EPLAN и рабочий каталог (Debug.png).
В результате Вы сможете запускать отладку в Visual Studio стандартным способом (Пуск, F5).
Благодаря настройкам при успешной сборке Visual Studio сама будет копировать готовую dll в целевую директорию и запускать EPLAN
Вы сможете ставить в коде точки останова при уже запущенном таким способом процессе Eplan'а и даже "налету" корректировать код программы!
Когда Вы пишете свой класс AddIn'a, то реализуете методы интерфейса IEplAddin (OnRegister, OnInit, OnInitGui, OnExit, OnUnregister).
И важно, что они вызываются Eplan'ом в определённой последовательности:
* При загрузке AddIn'а: последовательно выполняются OnRegister, OnInit, OnInitGui;
* При выгрузке AddIn'а: OnExit, OnUnregister;
* При открытии Eplan'а с уже загруженным AddIn'ом: OnInit, OnInitGui;
* При закрытии Eplan'а с уже загруженным AddIn'ом: OnExit.
Не обязательно постоянно перезапускать Eplan, ведь можно использовать режим отладки.
Только для этого в Visual Studio необходимо немного настроить проект:
1. Зайдите в свойства проекта Visual Studio (Проект/Свойства или Alt+Enter);
2. В настройках "События сборки" впишите командную строку события после сборки (Build Events.png).
3. В настройках "Отладка" для конфигурации "Debug" выберите действие "Запуск внешней программы", указав в качестве этой внешней программы полный путь к EPLAN.exe. Здесь же укажите аргумент командной строки для EPLAN и рабочий каталог (Debug.png).
В результате Вы сможете запускать отладку в Visual Studio стандартным способом (Пуск, F5).
Благодаря настройкам при успешной сборке Visual Studio сама будет копировать готовую dll в целевую директорию и запускать EPLAN
Вы сможете ставить в коде точки останова при уже запущенном таким способом процессе Eplan'а и даже "налету" корректировать код программы!
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- знаток Eplan
- Сообщения: 1457
- Зарегистрирован: 17 окт 2012, 11:24
- Имя: Виталий
- Страна: Беларусь
- город/регион: Минск
- Благодарил (а): 61 раз
- Поблагодарили: 182 раза
Перезапуск Eplan после компиляции изменений
- в версиях Еплана начиная с 2.5 обязательно, пока не пришлете видео, не поверю. Изменения после перекомпиляции действительны только после перезапуска Еплан. (раньше он даже собрать сборку не давал).
- это вообще фантастика, учитывая то, что я выше сказал.
При попытке правки текста сразу студия дает нам понять ху из ху: Чтобы принять изменения в код, нужно выйти из режима отладки, заново собрать сборку и перезапустить Еплан.
Буду рад если я окажусь неправ, покажите видео в таком случае, пожалуйста .
р.с. команда copy /Y "$(TargetPath)" "С:" не рабочая (у меня по крайней мере), т.к. на уровне системы недостаточно прав для копирования на системный диск. Да диск d: копирует без вопросов.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- здесь недавно
- Сообщения: 12
- Зарегистрирован: 28 сен 2018, 15:27
- Имя: Владимир
- Благодарил (а): 5 раз
- Поблагодарили: 6 раз
Перезапуск Eplan после компиляции изменений
Здравствуйте,
Я только начал работать с Eplan, поэтому не могу сказать про разные версии. Но в версии 2.7 и Visual Studio 2015 получается не перезапускать Eplan. Например, я написал классы AddIn'а и Action'а, потом просто запустил отладку в студии (Пуск, F5). Visual Studio скомпилировала код, собрала сборку, скопировала её в целевую директорию и запустила Eplan. После этого я загрузил AddIn - появилось меню с пунктом меню. И потом главный момент - для правки кода в Visual Studio просто нажимаю на кнопку "Прервать всё" (меню "Отладка/Прервать всё" или Ctrl+Alt+Break). В результате выполнение приложения Eplan'а приостанавливается (что-то вроде "паузы") и получается править код "налету" (в определённых пределах, например, без добавления новых зависимостей через "using"). Потом после правки кода можно нажать на кнопку "Продолжить" (F5) и Eplan возобновит работу после "паузы", при этом изменения сразу будут видны в AddIn'е, без перезапуска Eplan'а. Ссылку на ролик с описанным выше отправляю Вам в личном сообщении. Команда копирования сборки в целевую директорию рабочая, ошибка может быть или из-за прав пользователя (на запись в директорию), или если файл exe/dll занят процессом.
Я только начал работать с Eplan, поэтому не могу сказать про разные версии. Но в версии 2.7 и Visual Studio 2015 получается не перезапускать Eplan. Например, я написал классы AddIn'а и Action'а, потом просто запустил отладку в студии (Пуск, F5). Visual Studio скомпилировала код, собрала сборку, скопировала её в целевую директорию и запустила Eplan. После этого я загрузил AddIn - появилось меню с пунктом меню. И потом главный момент - для правки кода в Visual Studio просто нажимаю на кнопку "Прервать всё" (меню "Отладка/Прервать всё" или Ctrl+Alt+Break). В результате выполнение приложения Eplan'а приостанавливается (что-то вроде "паузы") и получается править код "налету" (в определённых пределах, например, без добавления новых зависимостей через "using"). Потом после правки кода можно нажать на кнопку "Продолжить" (F5) и Eplan возобновит работу после "паузы", при этом изменения сразу будут видны в AddIn'е, без перезапуска Eplan'а. Ссылку на ролик с описанным выше отправляю Вам в личном сообщении. Команда копирования сборки в целевую директорию рабочая, ошибка может быть или из-за прав пользователя (на запись в директорию), или если файл exe/dll занят процессом.
-
- здесь недавно
- Сообщения: 29
- Зарегистрирован: 23 ноя 2017, 00:14
- Имя: Антон
- Страна: Россия
- город/регион: Санкт-Петербург
- Благодарил (а): 18 раз
- Поблагодарили: 4 раза
Перезапуск Eplan после компиляции изменений
Подтверждаю, в Eplan 2.7 и Visual Studio 2017 получается прерывать выполнение программы, подправлять код, и затем снова запускать "на лету" без перезапуска Eplan`a.
-
- знаток Eplan
- Сообщения: 1457
- Зарегистрирован: 17 окт 2012, 11:24
- Имя: Виталий
- Страна: Беларусь
- город/регион: Минск
- Благодарил (а): 61 раз
- Поблагодарили: 182 раза
Перезапуск Eplan после компиляции изменений
Спасибо огромное, я не профессиональный программист, не знал что можно отладку на паузу ставить.
Выяснил два момента: код можно править только при запуске через Ё из студии (как указано выше), но где лежит dll не важно, т.к. для копирования dll куда-то кроме директории проекта не вижу смысла вообще.
Еще раз
р.с. Для больших проектов тормозит нещадно, плюс если долго не перезапускать Ё, то и сам Еплан начинает жутко лагать у меня.
Выяснил два момента: код можно править только при запуске через Ё из студии (как указано выше), но где лежит dll не важно, т.к. для копирования dll куда-то кроме директории проекта не вижу смысла вообще.
Еще раз
р.с. Для больших проектов тормозит нещадно, плюс если долго не перезапускать Ё, то и сам Еплан начинает жутко лагать у меня.