Jump to content

С# отладка Dll файлов. "Горячий" перезапуск Dll файлов в среде Nanocad.


Recommended Posts

Товарщи,  начал посматривать сторону C#, возникли сразу пару вопросов. Как делать отладку созданного DLL файла ? и как делать "Горячий" перезапуск DLL файла ? ( выгрузить и назад загрузить DLL файлы, для тестов) 

  • Like 1
Link to comment
Share on other sites

на .NET длки выгрузить не получится, поэтому для ускорения отладки

  1. запускаю несколько нанокадов
  2. компилирую библиотеку
  3. из IDE подключаюсь к нанокаду
  4. загружаю в него dll
    (для удобства использую лисп, типа такого :
    (defun c:ттд ();;подгружаем нашу утилиту Debug
    	(appload "d:\\@Developers\\В работе\\!Текущее\\Programmers\\!NET\\PlotSPDS\\bin\\Debug\\PlotSPDSn.dll")
    )
    )
  5. вызываю отлаживаемую команду в нано
  6. дальше отладка идет обычным образом, бряки контрольные значения и прочее...
  7. Visual Studio позволяет вносить незначительные изменения в отлаживаемый код без перекомпиляции и соответственно перезагрузки библиотеки.
  8. если требуется пересборка
  9. отключаюсь от НК, закрываю его
  10. см. п.п.2

если вижу, что нанокады начинают заканчиваться, запускаю несколько в запас... (что бы не отвлекаться, нанозапуск висит на хоткее)

на самом деле все выше описанные действия незначительно дольше чем запуск и отладка в VB6.. 

самое долгое это запуск НК, поэтому надо заботиться, что бы запущенные наноэкземпляры не кончались

ну и после отключения от НК не забывать его сразу закрывать, иначе IDE не сможет пересобрать dll (она жэж загружена в НК)

 

 

 

 

  • Like 1
  • Thanks 3
Link to comment
Share on other sites

6 минут назад, doctorraz сказал:

не забывать его сразу закрывать, иначе IDE не сможет пересобрать dll (она жэж загружена в НК)

Иногда по разным причинам требуется оставить нк запущенным

Для того, что бы IDE смогла пересобрать библиотеку, старую нужно переименовать руками (любое имя хоть 000 без расширения)

старая библиотека так и останется в памяти загруженного нк

Этот жэж фокус работает с запущенными экзешниками, удалить перезаписать нельзя, переименовать можно

добавлено через 3 минут

@aerohost ну чтобы начинать не с пустого места

Зарегистрируйсяв клубе разработчиков, если еще нет

и скачай SDK для нк с которым будешь работать

Чтоб начать этого достаточно

  • Like 2
  • Thanks 1
Link to comment
Share on other sites

5 часов назад, doctorraz сказал:

Иногда по разным причинам требуется оставить нк запущенным

Для того, что бы IDE смогла пересобрать библиотеку, старую нужно переименовать руками (любое имя хоть 000 без расширения)

старая библиотека так и останется в памяти загруженного нк

Этот жэж фокус работает с запущенными экзешниками, удалить перезаписать нельзя, переименовать можно

добавлено через 3 минут

@aerohost ну чтобы начинать не с пустого места

Зарегистрируйсяв клубе разработчиков, если еще нет

и скачай SDK для нк с которым будешь работать

Чтоб начать этого достаточно

Как в отладке посмотреть что именно возвращает PromptEntityOptions ?  я понимаю что сам класс, но какую именно информацию ? 

 

У меня почему-то не работает отладка с приложением 

 image.png.3479857935e8a004e14e62abebd7a68f.png

 

Спойлер

image.thumb.png.0e46639cef5b6f1ea8da97f53fb637a4.pngimage.thumb.png.d09624f0e28bb5efd8fcee380fcd18fd.pngimage.thumb.png.39c907d897d767cc6283d72c1382f572.pngimage.thumb.png.d09624f0e28bb5efd8fcee380fcd18fd.png

Edited by aerohost
Link to comment
Share on other sites

12 минут назад, aerohost сказал:

У меня почему-то не работает отладка с приложением 

выше я тебе писал немного про другое

Спойлер

image.thumb.png.ee0fc87f890a295a2a71acb22f6fe90d.png

что то подобное должно быть и в твоей IDE

14 минут назад, aerohost сказал:

Как в отладке посмотреть что именно возвращает

поставить бряк в нужной строке

и после выполнения этой строки навести на переменную курсор, высветится значение,

либо посмотреть в окне  Локальные/Видимые

но это справедливо для MVS, у тебя возможно называться будет по другому, но принцип тот жэж

все программы клоны друг друга (самой первой программы)))

Link to comment
Share on other sites

11 минут назад, doctorraz сказал:

выше я тебе писал немного про другое

  уот это (Показать контент)

image.thumb.png.ee0fc87f890a295a2a71acb22f6fe90d.png

что то подобное должно быть и в твоей IDE

поставить бряк в нужной строке

и после выполнения этой строки навести на переменную курсор, высветится значение,

либо посмотреть в окне  Локальные/Видимые

но это справедливо для MVS, у тебя возможно называться будет по другому, но принцип тот жэж

все программы клоны друг друга (самой первой программы)))

Я правильно понимаю тут должен быть процессор Ncad ?  Если да, то может есть предположения почему его нет ? 

Спойлер

image.thumb.png.06f34669868a9d2687437d9602c97c4b.png

 

Edited by aerohost
Link to comment
Share on other sites

2 минуты назад, doctorraz сказал:

А если галку снять с show non-managed??

Тоже нет, какие  то странные процессы 

Спойлер

image.png.7284ce8890b07280c99ff861dfce4039.png

Edited by aerohost
Link to comment
Share on other sites

Только что, doctorraz сказал:

MVS

Нет :( Ладно, тогда сначала лучше обкатаю дома все на MVS , потом буду все переносить на эту барахолку, Спасибо  !  

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Tell a friend

    Love Официальный форум компании Нанософт? Tell a friend!
×
×
  • Create New...