NanoCAD 23.1 и MS Visual Studio 2022 - первые шаги - Страница 2
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > .NET > NanoCAD 23.1 и MS Visual Studio 2022 - первые шаги

NanoCAD 23.1 и MS Visual Studio 2022 - первые шаги

Ответ
Поиск в этой теме
Непрочитано 15.03.2024, 16:50
NanoCAD 23.1 и MS Visual Studio 2022 - первые шаги
===AAA===
 
г. Норильск
Регистрация: 15.08.2005
Сообщений: 616

Всем привет!

Писал я под AutoCAD на LISP'е всё, что нужно было, использовал
библиотеку DOSLIB и всё было замечательно.

Но пришлось переходить на nanoCAD - тут всё и началось... :-(

Видимо, дальше нужно будет использовать C#

Теперь вопрос - как начать (да, просто начать !) писать программы
в этой самой MS VS 2022 ?

Вот прямо по шагам.

0. Запустил /это я уже умею/.

А дальше?

Нужно выбрать в VS какой-то шаблон, куда-то установить поставляемый
c nanoCAD'ом SDK, добраться до окна, куда буду вводить текст программы,
скомпилировать его, как загружаемое в nanoCAD приложение...

Т.е. нужны эти 10 ... 15 начальных шагов, чтобы потом просто ввести в командную
строку nanoCAD'а новую команду "new_command" и там же получить в ответ
"Привет, мир!" :-)))
__________________
Счастливо, Алексей!
Просмотров: 8310
 
Непрочитано 17.03.2024, 20:08
#21
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,499


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Вроде да, а что?
его владелец MS, а он собирается ограничить доступ к своим облачным решениям..
Сергей812 вне форума  
 
Непрочитано 17.03.2024, 20:22
#22
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406


Для корпоративных клиентов, насколько я слышал. Частные лица под подобные ограничения не попадают вроде бы.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 17.03.2024, 20:25
#23
doctorraz

электрик
 
Регистрация: 19.02.2010
Волгоград
Сообщений: 2,298
Отправить сообщение для doctorraz с помощью Skype™


Не проверял, но вроде чот такое наши сделали
https://gitflic.ru/public/project
__________________
Мастерская СПДС
doctorraz вне форума  
 
Непрочитано 17.03.2024, 20:26
#24
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406


Да, я видел - но пока не тестировал, не регистрировался, не смотрел. Китайские варианты смотреть как-то не хоцца.

----- добавлено через ~10 мин. -----
То ли лыжи, то ли я - но отправить в туда репозиторий у меня не получилось. Так что пока похороню этот вариант
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 17.03.2024, 20:46
#25
doctorraz

электрик
 
Регистрация: 19.02.2010
Волгоград
Сообщений: 2,298
Отправить сообщение для doctorraz с помощью Skype™


Offtop: Решать вопросы по мере поступления
Иначе ваще ни на что время не хватит
__________________
Мастерская СПДС
doctorraz вне форума  
 
Автор темы   Непрочитано 18.03.2024, 08:25
#26
===AAA===


 
Регистрация: 15.08.2005
г. Норильск
Сообщений: 616


а) А если у меня в VS только ".NET 8.0" доступен, мне ".NET 6.0" доустановить нужно?
б) Где в VS можно изменить цвет экрана с черного на другой и увеличить размер
шрифта в поле ввода текста программы?
__________________
Счастливо, Алексей!

Последний раз редактировалось ===AAA===, 18.03.2024 в 08:31.
===AAA=== вне форума  
 
Непрочитано 18.03.2024, 08:57
1 | 1 #27
doctorraz

электрик
 
Регистрация: 19.02.2010
Волгоград
Сообщений: 2,298
Отправить сообщение для doctorraz с помощью Skype™


Цитата:
Сообщение от ===AAA=== Посмотреть сообщение
а) А если у меня в VS только ".NET 8.0" доступен, мне ".NET 6.0" доустановить нужно?
да

Цитата:
Сообщение от ===AAA=== Посмотреть сообщение
б) Где в VS можно изменить цвет экрана с черного на другой и увеличить размер
шрифта в поле ввода текста программы?
в параметрах
Средства->параметры
Окружение-общие (там тема)
Шрифты и цвета там шрифты и цвета
ну и поиск по настройкам работает
И из самой IDE работает поиск в том числе и по параметрам
__________________
Мастерская СПДС
doctorraz вне форума  
 
Непрочитано 18.03.2024, 09:14
1 | #28
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406


Если NET6 не установлен, то надо запустить Visual Studio Installer, нажать кнопку "Изменить" - и дальше "Дополнительные компоненты". Ну или отдельно скачивать NET6 SDK и пытаться его воткнуть. Но вариант установки через студию ИМХО самый простой.
Оформление студии - чистой воды вкусовщина. Просто я подустал от светлого фона в VBA и VLIDE
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 18.03.2024, 10:26
#29
avatarez


 
Регистрация: 08.08.2019
Сообщений: 21


Объектную модель для мультикада можно выдернуть при помощи ILSpy из соответствующих dll. Там даже комментарии в коде кое где есть.
На работе мне VS никто бы не поставил, так что приходилось код писать в Notepad++ и батником компилировать

Код:
[Выделить все]
chcp 1251 >nul

::ИМЯ БИБЛИОТЕКИ
set "name=compiled"

::ЧТЕНИЕ КОМАНДНОЙ СТРОКИ
if not "%~nx1" == "" (
	set "name=%~n1"
)

::КОМПИЛЯЦИЯ
echo f | xcopy "output\%name%.dll" "output\%name%.bak" /r /y /h
del "output\%name%.dll" /q /f
"%SYSTEMROOT%\Microsoft.NET\Framework\v3.5\csc.exe" ^
-reference:"bin\hostdbmgd.dll" ^
-reference:"bin\hostmgd.dll" ^
-reference:"bin\imapimgd.dll" ^
-reference:"bin\mapibasetypes.dll" ^
-reference:"bin\mapimgd.dll" ^
-target:library ^
-optimize ^
-out:"output\%name%.dll" ^
"cs\*.cs"
avatarez вне форума  
 
Непрочитано 18.03.2024, 10:36
#30
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406


Цитата:
Сообщение от avatarez Посмотреть сообщение
код писать в Notepad++
Не, до такого я не дорос. И вряд ли дорасту ))
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 18.03.2024, 11:12
| 1 #31
trir


 
Регистрация: 18.12.2010
Сообщений: 5,107


Цитата:
На работе мне VS никто бы не поставил
https://vscode.dev/
trir вне форума  
 
Автор темы   Непрочитано 22.03.2024, 16:15
#32
===AAA===


 
Регистрация: 15.08.2005
г. Норильск
Сообщений: 616


Добрался до момента, когда только средствами LISP задачу в nanoCAD решить не получится.
Нужно создать аналог функции (dos_processes) из библиотеки DOSLIB.

Функция запускается без параметров и возвращает список работающих в данный момент
приложений Windows, типа:

(... "msedge.exe" "ShellExperienceHost.exe" "RuntimeBroker.exe" "UcMapi.exe" "plan.exe" "EXCEL.EXE"
"NOTEPAD.EXE" "splwow64.exe" "DllHost.exe" "msedge.exe" "WINPROJ.EXE" "iexplore.exe" "IEXPLORE.EXE"
"IESettingSync.exe" "lynchtmlconv.exe" "msedge.exe" "SearchProtocolHost.exe" "acad.exe" ну и т.д.)

который может быть передал в программу на LISP и обработан.

Сформулируем так: нужно из программы на LISP узнать, запущен ли "Блокнот" и если да, то сколько
копий его сейчас открыто.
__________________
Счастливо, Алексей!
===AAA=== вне форума  
 
Непрочитано 22.03.2024, 16:33
#33
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,499


а нано поддерживает атрибут LispFunction? А так через Windows API типа FindWindow скорее всего искать. Или, например, Process класс Net фреймворка.

Последний раз редактировалось Сергей812, 22.03.2024 в 16:39.
Сергей812 вне форума  
 
Непрочитано 22.03.2024, 16:44
#34
doctorraz

электрик
 
Регистрация: 19.02.2010
Волгоград
Сообщений: 2,298
Отправить сообщение для doctorraz с помощью Skype™


Цитата:
Сообщение от Сергей812 Посмотреть сообщение
нано поддерживает атрибут LispFunction?
В 24й версии добавили
__________________
Мастерская СПДС
doctorraz вне форума  
 
Автор темы   Непрочитано 22.03.2024, 16:45
#35
===AAA===


 
Регистрация: 15.08.2005
г. Норильск
Сообщений: 616


Цитата:
а нано поддерживает атрибут LispFunction?
Я бы знал?

Это для меня пока вообще тёмный лес от слова "совсем". :-)
Я только на ЛИСПе умею.

----- добавлено через ~3 мин. -----
Отсутствие этого атрибута в 23-й нане не позволяет запустить из
лиспа программу на дотнет или передать в неё полученные данные?

Если только второе - не беда. Пусть в файл результат выбросит,
я из него заберу.
__________________
Счастливо, Алексей!
===AAA=== вне форума  
 
Непрочитано 22.03.2024, 18:26
#36
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,499


Цитата:
Сообщение от ===AAA=== Посмотреть сообщение
Я только на ЛИСПе умею.
ветка .Net все таки - поэтому тыц, и там смотрим метод GetProcessesByName(String) и пример к нему.
Сергей812 вне форума  
 
Непрочитано 22.03.2024, 20:11
#37
doctorraz

электрик
 
Регистрация: 19.02.2010
Волгоград
Сообщений: 2,298
Отправить сообщение для doctorraz с помощью Skype™


Цитата:
Сообщение от ===AAA=== Посмотреть сообщение
Пусть в файл результат выбросит,
я из него заберу.
Offtop: Да будет так...
Шарп учи, и тогда так будет и лисп не сильно нужен будет
Если уж. kpblc Гуру лиспа Шарп учит, остальным тем более)) не помешает
__________________
Мастерская СПДС
doctorraz вне форума  
 
Автор темы   Непрочитано 23.03.2024, 11:43
#38
===AAA===


 
Регистрация: 15.08.2005
г. Норильск
Сообщений: 616


Насчёт необходимости изучения C# согласен, поэтому и тему эму создал.
Возможно, что она со временем даже превратится в "песочницу", подобную
теме, висящую в топе подфорума "программирование на LISP" :-)

Поясните, плиз, базовую вещь - на C# возможно создать для nanoCAD 23.1
DLL-ку, содержащую функции, которые, будучи вызванными из программы на
лиспе, смогут возвращать в неё информацию или для этого нужен nanoCAD 24+ ?

Т.е. будет ли работать в nanoCAD 23.1 конструкция типа:

(defun a1 ()

(setq b1 5 b2 (функция_из_dll b1))

(print b2)

)

?

Цель - "для начала" мне нужно написать (с помощью уважаемых гуру форума)
некоторые функции, ранее присутствовавшие в DOSLIB, но которые стали
недоступны в nanoCAD'e. В основном это функции интерфейса, работы с внешним
окружением nanoCAD'a и другие вещи, которые невозможно сделать на Лиспе.
__________________
Счастливо, Алексей!
===AAA=== вне форума  
 
Непрочитано 23.03.2024, 13:01
#39
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,499


Ну если
Цитата:
Сообщение от doctorraz Посмотреть сообщение
В 24й версии добавили
то уже не будет "естественного" вызова в лиспе методов, определенных в .Net сборках. Но если методы в .Net сборке оформлены как команды - ничто не мешает их из комстроки в лиспе вызвать) Если нанокадовцы это реализовали, конечно...

Последний раз редактировалось Сергей812, 23.03.2024 в 13:08.
Сергей812 вне форума  
 
Непрочитано 23.03.2024, 13:29
#40
doctorraz

электрик
 
Регистрация: 19.02.2010
Волгоград
Сообщений: 2,298
Отправить сообщение для doctorraz с помощью Skype™


Цитата:
Сообщение от Сергей812 Посмотреть сообщение
Если нанокадовцы это реализовали, конечно...
Команды реализовали, иначе б обсуждать было бессмысленно

----- добавлено через ~2 мин. -----
Цитата:
Сообщение от ===AAA=== Посмотреть сообщение
некоторые функции, ранее присутствовавшие в DOSLIB, но которые стали
недоступны в nanoCAD'e
Имха проще сделать реализацию полностью на net
Это будет работать значительно быстрее
__________________
Мастерская СПДС
doctorraz вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > .NET > NanoCAD 23.1 и MS Visual Studio 2022 - первые шаги

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите вернуть обычный AutoLisp вместо Visual Studio Code МишаИнженер LISP 2 04.12.2022 16:06
Первые шаги в мир программирования под nanoCAD dows Другие CAD системы 15 26.05.2022 19:38
Как Visual Studio создавая проект библиотеки классов (dotnet.dll) подключить форму (Windows Forms) gizmo_zx Программирование 4 17.02.2015 10:35
Поссорились Visual Studio 2010 и Acad 2013 gizmo_zx Программирование 3 12.02.2014 10:05
Microsoft Visual Studio: Инициатива по лицензированию разработчиков ПО Кулик Алексей aka kpblc Разное 6 05.09.2009 18:16