| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Как исправить ошибку "неизвестная команда load"

Как исправить ошибку "неизвестная команда load"

Ответ
Поиск в этой теме
Непрочитано 25.09.2019, 14:30 #1
Как исправить ошибку "неизвестная команда load"
Strelec
 
Регистрация: 07.04.2014
Сообщений: 14

Пытаюсь самостоятельно изучить autolisp, но споткнулся на первом же упражнении первого урока:
"… Напишем нашу первую программу на Автолиспе. Для этого в любом текстовом редакторе создадим текстовый файл такого содержания:
(defun myprog 1 ( ) (prompt "My first program") (prompt "-Моя первая рограмма") )
Сохраним файл под именем TEST1.LSP. Для выполнения программы в Автокаде необходимо ввести: команда:
(load "Test1")
На экране в зоне командной строки и сообщений появляется сообщение:
My first program - Моя первая программа. …" Текст написал в блокноте и сохранил на рабочем столе под указанным именем и расширением. Открываю AutuCAD 2015 и в командной строке ввожуload "Test1"). Получаю в ответ:"... (load "Test1"); ошибка: сбой при выполнении LOAD:"Test1"..." Потом пробую ввести в командную строку :load "Test1" и получаю в ответ -"... load Неизвестная команда "LOAD". Для вызова справки нажмите F1..." Везде в интернете написано, что команда "LOAD" является стандартной командой autolisp. Помогите разобраться.
Просмотров: 4039
 
Непрочитано 25.09.2019, 14:32
#2
Кулик Алексей aka kpblc
Moderator

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


https://dwg.ru/pub/9 ?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 25.09.2019, 16:46
#3
Strelec


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


Ок. На диске "С" создал папку "MyLips" , прописал к ней путь в AutoCADe и положил туда файл "TEST1.LSP". В командной строке AutoCAD ввожу командуload "Test1") и получаю ответ - Команда: (load "Test1") ; ошибка: синтаксическая ошибка. Это что такое и где ее искать?
Strelec вне форума  
 
Непрочитано 25.09.2019, 16:58
#4
vasilev666


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


_load
vasilev666 вне форума  
 
Непрочитано 25.09.2019, 17:10
#5
AlexCondor

инженер
 
Регистрация: 03.08.2007
Сообщений: 1,326


Я конечно не программист, но кажется "myprog 1" должно быть без пробела.
AlexCondor вне форума  
 
Автор темы   Непрочитано 25.09.2019, 17:12
#6
Strelec


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


Да, нет, к сожалению не помогло:
Команда: (_load "Test1")
; ошибка: no function definition: _LOAD

----- добавлено через ~9 мин. -----
Тоже нет. Если "myprog 1" написать без пробела, т.е. "myprog1", то вообще начинается буря...
AutoCAD пишет :
Команда: Команда: Неизвестная команда "КОМАНДА:". Для вызова справки нажмите F1.
Команда: (_load "Test1")
; ошибка: no function definition: _LOAD
Команда: ; Неизвестная команда ";". Для вызова справки нажмите F1.
Команда: ошибка: Неизвестная команда "ОШИБКА:". Для вызова справки нажмите F1.
Команда: no Неизвестная команда "NO". Для вызова справки нажмите F1.
Команда: function GRIPMULTIFUNCTIONAL
Новое значение GRIPMULTIFUNCTIONAL <3>: definition:
Требуется целое значение от 0 до 3.
Новое значение GRIPMULTIFUNCTIONAL <3>: _LOAD*Прервано*
_LOAD
Strelec вне форума  
 
Непрочитано 25.09.2019, 17:29
#7
AlexCondor

инженер
 
Регистрация: 03.08.2007
Сообщений: 1,326


Да все работает. Уберите лишний пробел и загрузите: (load "test1"), потом выполните: (myprog1)
AlexCondor вне форума  
 
Автор темы   Непрочитано 25.09.2019, 17:43
#8
Strelec


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


Цитата:
Сообщение от AlexCondor Посмотреть сообщение
Да все работает. Уберите лишний пробел и загрузите: (load "test1"), потом выполните: (myprog1)
Извини, но я не понимаю, где этот лишний пробел. Ты можешь рассказать подробней...
Strelec вне форума  
 
Непрочитано 25.09.2019, 17:55
#9
koMon


 
Блог
 
Регистрация: 26.09.2017
Сообщений: 1,665


Цитата:
Сообщение от Strelec Посмотреть сообщение
Текст написал в блокноте и сохранил на рабочем столе
(load "C:\\Users\\...\\Desktop\\Test1.lsp")
koMon вне форума  
 
Непрочитано 25.09.2019, 18:05
#10
Семёныч


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


Цитата:
Сообщение от Strelec Посмотреть сообщение
На диске "С" создал папку "MyLips"
Папка "МоиГубы"?
Судя по сообщениям, автор темы - совершеннейший профан.
Семёныч вне форума  
 
Автор темы   Непрочитано 25.09.2019, 18:18
#11
Strelec


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


Спасибо, все получилось!!! Я по совету koMon заменил выражение "defun myprog 1 ( ) " на "defun Test1 ( ) " и все сработало. Всем спасибо!
Strelec вне форума  
 
Автор темы   Непрочитано 25.09.2019, 18:21
#12
Strelec


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


А я и не скрываю, что только начинаю... и не надо смеяться и тыкать пальцем... лучше помогайте, по мере возможности, ведь и вы когда-то такие же были...
Strelec вне форума  
 
Непрочитано 25.09.2019, 18:32
#13
===AAA===


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


Давай для начала выясним, АвтоЛисп вообще работает или нет?
Если ввести

Команда: (+ 3.5 7.5)

Что получается?

Может быть "AutuCAD 2015" - вообще какая-нибудь лайт-версия...
__________________
Счастливо, Алексей!

Последний раз редактировалось ===AAA===, 25.09.2019 в 18:43.
===AAA=== вне форума  
 
Автор темы   Непрочитано 25.09.2019, 18:47
#14
Strelec


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


Почему то не появился ответ на 8 пост. Все получилось: я заменил выражение "defun myprog 1 ( ) " на "defun Test 1 ( )" и все получилось. Всем спасибо.

----- добавлено через ~2 мин. -----
Цитата:
Сообщение от ===AAA=== Посмотреть сообщение
Давай для начала выясним, АвтоЛисп вообще работает или нет?
Если ввести

Команда: (+ 3.5 7.5)

Что получается?

Может быть "AutuCAD 2015" - вообще какая-нибудь лайт-версия...
Вроде все работает:
Команда: (+ 3.5 7.5)
11.0
Strelec вне форума  
 
Непрочитано 25.09.2019, 19:19
#15
engngr

сети
 
Регистрация: 03.11.2008
Московия*
Сообщений: 5,766


Пробел перед единицей. Да?
engngr вне форума  
 
Автор темы   Непрочитано 25.09.2019, 21:06
#16
Strelec


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


Да, но не только, еще, я слово "myprog " в выражении "(defun myprog1 ( ) (prompt "My first program") (prompt "-Моя первая рограмма") )
заменил на слово TEST. Получилось следующее: (defun TEST1 ( ) (prompt "My first program") (prompt "-Моя первая рограмма") ).
Это первое. Второе создал на диске "С" папку "MyLips", положил туда файл "TEST1.LSP" и прописал к нему путь доступа AutoCADa
через Сервис-Настройка-Путь к вспомогательным файлам-Добавить. И все заработало. При вводе в командную строку AutoCADa команды (load "Test1")
он выдает окно с просьбой разрешить загрузку . Нажимаем ОК и получаем следующую запись - Команда: (load "Test1")
TEST1.
В командную строку AutoCADa вводим команду (TEST1) и получаем: Команда: (TEST1)
My first program-Моя первая рограммаnil,
что и требовалось получить. При этом слово TEST1 должно быть заключено в скобки.
Strelec вне форума  
 
Непрочитано 25.09.2019, 23:12
#17
Сергей812


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


Цитата:
Сообщение от Strelec Посмотреть сообщение
В командную строку AutoCADa вводим команду (TEST1) и получаем: Команда: (TEST1)
...
При этом слово TEST1 должно быть заключено в скобки
только различайте вызов лисп-функции из комстроки (где действительно нужны скобки) и синтаксис команды на лиспе
Цитата:
(defun c:TEST1 ( )
которая вызывается без всяких скобок.
Сергей812 вне форума  
 
Непрочитано 26.09.2019, 08:51
#18
koMon


 
Блог
 
Регистрация: 26.09.2017
Сообщений: 1,665


Цитата:
Сообщение от Strelec Посмотреть сообщение
Я по совету koMon заменил выражение "defun myprog 1 ( ) "
это не мой совет), я предлагал загрузку лиспа прямым указанием местоположения...
koMon вне форума  
 
Автор темы   Непрочитано 26.09.2019, 08:52
#19
Strelec


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


Спасибо за совет. Постараюсь разобраться и запомнить
Strelec вне форума  
 
Непрочитано 26.09.2019, 09:19
#20
koMon


 
Блог
 
Регистрация: 26.09.2017
Сообщений: 1,665


Цитата:
Сообщение от Strelec Посмотреть сообщение
разобраться и запомнить
в лиспе имя функции, команды, переменной не может содержать пробел, поскольку он является естественным разделителем.
koMon вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Как исправить ошибку "неизвестная команда load"

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Заглубление вблизи фундамента. Как исправить ошибку? Garaj Основания и фундаменты 25 22.04.2016 05:24
Как исправить ошибку с полилинией? Диммм AutoCAD 12 08.04.2014 10:57
Как исправить ошибку "Четырех узловые элементы, выродившиеся в треугольник"? Юлия Серенко SCAD 3 19.12.2013 16:29
Как устранить ошибку в Civil 3D "Невозможно выполнить макрос " Serghei Вертикальные решения на базе AutoCAD 7 25.03.2013 10:46
команда аналогичная BURST в autodesk architectural desktop 2011 Vombat Вертикальные решения на базе AutoCAD 4 26.11.2010 14:00