Новая инструкция для разработчиков WebSheets для MA/CS

Форум, посвященный Mathcad Application Server
VFO
Сообщения: 4226
Зарегистрирован: Ср фев 27, 2002 8:03 pm

Новая инструкция для разработчиков WebSheets для MA/CS

Сообщение VFO » Пн апр 09, 2007 12:39 pm

Уважаемые коллеги!
В рамках подготовки новой книги по Mathcad 14 я вынес главы 6 и 7 на сайт.
Глава 7 "Mathcad Application/Calculation Server" опубликована здесь:
http://twt.mpei.ac.ru/ochkov/Mathcad_14 ... index.html
Буду рад получить по ней замечания и пожелания.
С уважением,
В.Очков

уни
Сообщения: 227
Зарегистрирован: Сб дек 16, 2006 9:26 pm

Сообщение уни » Пн апр 09, 2007 10:15 pm

А по шестой главе где замечания оставлять? Или только по 7-й главе?

Валерий Фёдорович, по поводу параграфа "7.3. Верблюд и игольное ушко":
Следовало бы указать плюсы и минусы функций преобразования текстовых выражений в математические. Наример, maple_eval(), насколько я помню, не может работать полноценно, она как-бы одноразовая - нельзя далее использовать её результаты. Функция Maple(), как я Вам писал, потенциально опасная. Почему-то никто не обратив внимания на мой пост про вирус. Это ведь вполне реальная угроза, основанная на доступности в символьном движке MC11-13.5 функции (s)system(). Из-за этого выполнение "нехорошего" документа
http://collab.mathsoft.com/~Mathcad2000 ... _win9x.mcd
или
http://collab.mathsoft.com/~Mathcad2000 ... /virus.mcd
(автоматическая калькуляция отключена у обоих, если включить её, то второй документ всё снесёт напрочь)
под администраторскими привилегиями на соотв-щих системах может привести к полному уничтожению системы как таковой с удалением всей информации с диска С: - это разве шутки? То же можно проделать и с сервером, где установлены символьные ядра MapleV R4, при наличии доступа к документу, где используется функция Maple().
Документы отличаются только вызовом функций: deltree в одном и del в другом. Я провёл эти эксперименты на виртуальных машинах - система гибнет прямо на глазах. Восстановление не возможно. Что ж об этом молчать что-ли?
В MC14 такое сделать нельзя, т.к. благоразумно system() в символьном движке MuPAD заблокирована. Потому, в принципе, использование функции text2expr() можно считать безопасным, но с оговоркой: доступна функция записи writebytes() - с её помощью потенциально возможно натворить бед на сервере MCS14. Вырезание её из строки может не помочь, т.к. имя функции можно сформировать побайтно (что я как-то демонстрировал).
Самое печальное, что в MC11 нельзя отключать автоматическую калькуляцию в меню (вроде бы, не нашёл такой опции). Это такой же макро-вирус, как макро-вирус в WORD'е. Вот.
Лучше пользовать "деревенские" самодельные преобразователи-конверторы, либо учить недокументированные приёмы глубже. В MuPAD варианте с text2expr() можно преобразовать текстовое выражение и сразу проверить его тип, т.е. принадлежность нужному домену - матрице, числу, строке и т.д. Если выражение принадлежит "опасному" домену, то прекращать вычисления... это вопрос дальнейших исследований. Наверное, тоже можно было сделать и в Maple варианте.

Korobov V I
Сообщения: 1609
Зарегистрирован: Вт янв 21, 2003 5:12 pm

Сообщение Korobov V I » Вт апр 10, 2007 12:00 pm

Мне кажется, это сообщение уни надо бы перенести в частную переписку. А то мало ли кому что-либо на ум придет...

уни
Сообщения: 227
Зарегистрирован: Сб дек 16, 2006 9:26 pm

Сообщение уни » Ср апр 11, 2007 11:04 am

Вообще-то, я хотел бы, чтобы Валерий Фёдорович это напечатал, чтобы компания PTC обратила на это внимание и выпустила патч, либо, чтобы какая антивирусная компания обратила на это внимание и тоже, почитав документы вирусами, выпустила обновление вирусных баз.
Ну или чтобы весь народ побыстрее покидал MC11-13.5. Хоть в последних версиях и отключается автоматическая калькуляция, но кто смотрит полностью весь документ?

Насколько я понял сам полный Maple не видит в этом проблему и держит функции (s)system() в строю. MuPAD же объявил в справке, что не поддерживается, хотя на самом деле (по крайней мере в 4-ой версии) эту функцию можно вызват. Т.е. ничего страшного в этом нет, пока пользователь сам видит документ до его исполнения, а дальше уже сам виноват... надо было лучше смотреть.

VFO
Сообщения: 4226
Зарегистрирован: Ср фев 27, 2002 8:03 pm

Сообщение VFO » Чт апр 12, 2007 9:05 am

Вообще-то, я хотел бы, чтобы Валерий Фёдорович это напечатал, чтобы компания PTC обратила на это внимание

Ну и напишите Валерию Фёдоровичу, а не на "заборе" :x

уни
Сообщения: 227
Зарегистрирован: Сб дек 16, 2006 9:26 pm

Сообщение уни » Чт апр 12, 2007 2:20 pm

"Будут бить..." (с)

Где же это видано, чтобы столь достопочтенный сайт забором обзывать?

Я передумал. Не нужно об этом писать. Пусть будет как будет (как есть т.е.). Всё равно никто в книжках по MC ещё недокументированных приёмов не описывал и не будет. Будем пользоваться MuPAD и Maple отдельно, да и всё. Как в общем-то все и делают по мере необходимости. Толку от них никакого, только соблазняют.

VFO
Сообщения: 4226
Зарегистрирован: Ср фев 27, 2002 8:03 pm

Сообщение VFO » Пн апр 16, 2007 10:32 am

Всё равно никто в книжках по MC ещё недокументированных приёмов не описывал и не будет.

Описывать в книгах недокументированные приемы - это оказывать читателям медвежью услугу.
Нам хватает и интернета!

klertiv
Сообщения: 1
Зарегистрирован: Чт июн 04, 2009 11:08 am

Сообщение klertiv » Чт июн 04, 2009 11:10 am

Отличная инструкция, спасибо, а то я никак не мог разобраться.

---------------------------------------------
люблю смотреть сериал Ранетки (прямо онлайн)