Выгрузка кода JavaScript

Автор Тема: Выгрузка кода JavaScript  (Прочитано 16426 раз)

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

Тема содержит сообщение с Решением. Нажмите здесь чтобы посмотреть его.

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

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Выгрузка кода JavaScript
« : 21-03-2014, 12:34:12 »
Можно ли выгрузить ранее загруженный код JavaScript или же это невозможно, как для LISP? В .NET API вижу только возможность загрузки.

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

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Выгрузка кода JavaScript
« Ответ #1 : 21-03-2014, 15:35:46 »
Можно ли выгрузить ранее загруженный код JavaScript или же это невозможно, как для LISP?
Ну, во-первых, выгрузить можно только компилированный LISP. JavaScript выгрузить нельзя и интуиция подсказывает, что этого никогда не будет. В чем-то JavaScript напоминает некомпилированный LISP.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

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

  • Administrator
  • *****
  • Сообщений: 1096
  • Карма: 172
Re: Выгрузка кода JavaScript
« Ответ #2 : 23-03-2014, 13:37:27 »
Стоп, что значит "выгрузить"? Сделать недоступной функцию? Так это и в некомпилированном лиспе делается на ура. Или я чего-то не понимаю?
Все, что сказано - личное мнение.

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

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

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

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Выгрузка кода JavaScript
« Ответ #3 : 23-03-2014, 13:40:00 »
Стоп, что значит "выгрузить"?
Выгрузить - это выгрузить. Т.е. загрузили файл file.vlx, а затем его выгрузили. Соотвественно все (!!!) функции, определенные в нем становятся недоступными.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

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

  • Administrator
  • *****
  • Сообщений: 1096
  • Карма: 172
Re: Выгрузка кода JavaScript
« Ответ #4 : 23-03-2014, 22:33:49 »
Я аналогичные действия с любым лиспом могу провернуть:
_$ tt
nil
_$
Создаем функцию
(defun tt ()
  (princ "\nTest function")
  (princ)
  ) ;_ end of defun
И загружаем ее:
_$

TT
; 1 form loaded from #<editor "<Untitled-0> loading...">
_$ tt
#<USUBR @00000000331b5c50 TT>
Теперь присваиваем ей nil:
_$ (setq tt nil)
nil
_$ tt
nil
_$
Все, функция "выгружена", т.е. ее код стал недоступен.  Или тут опять какие-то высшие материи? :)
Все, что сказано - личное мнение.

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

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

Отмечено как Решение Александр Ривилис 29-05-2015, 23:52:42

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

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Выгрузка кода JavaScript
« Ответ #5 : 23-03-2014, 22:40:05 »
Все, функция "выгружена", т.е. ее код стал недоступен.  Или тут опять какие-то высшие материи? :)
Ага. Ну во-первых JS не lisp. Во вторых и в lisp'е ты когда грузишь lsp-файл не знаешь заранее список всех функций, которые в нём определяются. Причем часть из них может вообще динамически создаваться. Так что то, что следует "обниливать" совершенно неясно. В чистом виде можно выгружать только arx/dbx/dvb/vlx-файлы.

Похоже я был не прав. У команды WEBLOAD есть опция _UNLOAD, т.е. выгружать можно!
Приношу извинение всем, кого ввёл в заблуждение. Что касается .NET API, то в нём похоже такую возможность (пока) не добавили.
« Последнее редактирование: 29-05-2015, 23:52:38 от Александр Ривилис »
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

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

  • Administrator
  • *****
  • Сообщений: 1096
  • Карма: 172
Re: Выгрузка кода JavaScript
« Ответ #6 : 23-03-2014, 22:42:34 »
Во вторых и в lisp'е ты когда грузишь lsp-файл не знаешь заранее список всех функций, которые в нём определяются. Причем часть из них может вообще динамически создаваться.
Ну, atoms-family еще пока работает :)
Все, что сказано - личное мнение.

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

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

Оффлайн genfild

  • ADN OPEN
  • Сообщений: 12
  • Карма: 0
Re: Выгрузка кода JavaScript
« Ответ #7 : 29-05-2015, 21:49:02 »
У меня одного командой WEBLOAD не  выгружает скрипт?
Делаю поправки в скрипт, но он AutoCADом не обновляется, даже после перезапуска выполняется первоначальный скрипт.

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

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Выгрузка кода JavaScript
« Ответ #8 : 29-05-2015, 22:17:45 »
Приветствую на форуме.
У меня одного командой WEBLOAD не  выгружает скрипт?
Проверил - выгружает. Для примера взял код отсюда: http://adndevblog.typepad.com/autocad/2013/03/reactors-using-autocad-javascript-api.html
1. Сохранил его по адресу c:\1.js
2. Загрузил при помощи WEBLOAD
3. Убедился что команда STARTMONITOR работает.
4. Выгрузил
5. Убедился что команда STARTMONITOR не работает.
6. Изменил в коде имя команды на STARTMONITOR1.
7. Убедился что команда STARTMONITOR1 работает.
Проверял в AutoCAD 2016 x64
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн genfild

  • ADN OPEN
  • Сообщений: 12
  • Карма: 0
Re: Выгрузка кода JavaScript
« Ответ #9 : 29-05-2015, 22:43:16 »
Попробуйте изменить этот скрипт и опять загрузить. У меня выполняется первоначальный. Попробуйте ссылку, а не локальный путь. Ссылки понимает и фтпишные.

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

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Выгрузка кода JavaScript
« Ответ #10 : 29-05-2015, 23:36:55 »
Попробуйте изменить этот скрипт и опять загрузить.
Ты невнимательно прочитал мой ответ. Я менял скрипт, загружал его и выполнял по новой - выполнялась новая версия скрипта.
Попробуйте ссылку, а не локальный путь. Ссылки понимает и фтпишные.
Проверил на своём сайте: http://maestrogroup.com.ua/1.js - изменял текст, выгружал и загружал по новой. Всё работает правильно - работает изменённый код. Похоже, что у тебя не сбрасывается кэш и поэтому скачивается старое состояние файла. Других предположений у меня нет. Проверь с локальным расположением файла.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн genfild

  • ADN OPEN
  • Сообщений: 12
  • Карма: 0
Re: Выгрузка кода JavaScript
« Ответ #11 : 30-05-2015, 06:50:09 »
Спасибо, извините, действительно не заметил 6 и 7 пункты.
Но не работает.
Про кеш
Пробовал версию на сайте http://through-the-interface.typepad.com/through_the_interface/2013/03/implementing-an-autocad-palette-using-html5-and-javascript.html
Цитировать
I deleted the contents of the following folder, which seemed to do the trick (and should be safe as they’re stored beneath the temp folder): “C:\Users\username\AppData\Local\Temp\cache”
Остается вопрос, где очистить кеш? :(

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

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Re: Выгрузка кода JavaScript
« Ответ #12 : 30-05-2015, 09:59:05 »
Что касается .NET API, то в нём похоже такую возможность (пока) не добавили.
Она появится лишь в том случае, если управляемые расширения будут загружаться в отдельные домены (AppDomain).

Оффлайн genfild

  • ADN OPEN
  • Сообщений: 12
  • Карма: 0
Re: Выгрузка кода JavaScript
« Ответ #13 : 30-05-2015, 10:15:46 »
Запутался.
Как мне отлаживать мое приложение на js?

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

  • Administrator
  • *****
  • Сообщений: 13829
  • Карма: 1784
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Выгрузка кода JavaScript
« Ответ #14 : 30-05-2015, 10:51:07 »
Что касается .NET API, то в нём похоже такую возможность (пока) не добавили.
Она появится лишь в том случае, если управляемые расширения будут загружаться в отдельные домены (AppDomain).

Ты меня не понял. Речь шла о выгрузке средствами AutoCAD .NET API кода JavaScript. То есть Application.LoadJSScript есть, а Application.UnLoadJSScript - нет.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение