|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Программа для редактирования XML файла acad.cuix
Регистрация: 14.12.2008
Сообщений: 1,134
|
||
Просмотров: 20735
|
|
||||
Moderator
Конструктор (машиностроение) Регистрация: 23.10.2006
Россия
Сообщений: 23,297
![]() |
Цитата:
|
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450
|
Потому что нечего извращаться и выдумывать замену имеющегося функционала: http://autolisp.ru/2011/09/23/about_corporatemenu/
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Я думаю, что программистам большой тайны не открою, а остальным будет по крайней мере интересно: форматы docX (для Office 2010), cuiX (для Autocad 2010 и выше) являются стандартными MS Structured Storage OpenXML контейнерами. Т.е., говоря по простому, архивами. Итак:
1. Копию cuiX файла переименовываем в zip 2. Любым редактором распаковываем. 3. Видим структуру из xml файлов 4. Правим 5. Упаковываем в zip 6. Переименовываем в cuiX Цитата:
PS: Zip из лиспа ZIP files ZIP folders & VLISP Unzip a file programmatically?
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 01.10.2011 в 19:41. |
|||
![]() |
|
||||
Регистрация: 14.12.2008
Сообщений: 1,134
|
Спасибо VVA! Очень интересно! Я а всё думал почему DrWeb находил вирусы в обычных ".xls" файлах и вылечивал их а в файлах ".xlsx" находит но вылечить не может и пишет что файл является архивом. Вот оно теперь как получается. Ещё бы DrWeb узнал бы про эту особенность файлов с добавлением буквы "x".
А на моей панели теперь кнопки отображаются! Не могу сказать что я делал, но наверое надо залезть в файл mnr нажав кнопку "Диспетчер изображений..." которая расположена 3 по счёту от раскрывающегося списка "Файлы адаптации: Все файлы" на кнопке изображено голубое небо. Откроется список из картинок панели которую вы настраиваете, можно наверное понажимать эти картинки и потом нажать кнопку ОК. Важно чтобы после этого появился файл .mnr в каталоге с вашим дополительным файлом адаптации. Прогамма меню будет потом брать картинки из этого файла, так как файл mnr это архив пользовательских картинок применяющихся в на панелях инструментов. Наверное когда адаптация меняла полный путь до картинки на простое название картинки, то при этом файл картинки помещался в файл mnr в котором картинку можно найти по простому названию картинки. В общем теперь у меня даже после повтороного запуска AutoCAD все картинки присутствуют на пользовательской панели инструментов. Ура! Всем СПАСИБО! |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Файл mnr - файл ресурсов меню. Формируется автоматически при загрузке меню. После любой правки меню файл удалять. (можно удалять сразу, как только возникло желание исправить меню). Цитата из п.2 по ссылке из #5
Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
МишаИнженер, Закрой Автокад, удали mnr файл (можно все mnr файлы, какие найдешь поиском по всему диску) и загрузи Автокад снова
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
dev.nano Регистрация: 21.03.2009
Сообщений: 363
|
Цитата:
![]() Кстати, прям в сuix можно добавить файлы битмапок для кнопок (не помню можно ли это сделать через CUI). Единственное, нужен OpenXML package editor, ну или вручную патчить xml-ки, где описан контент. Последний раз редактировалось yal, 01.10.2011 в 14:53. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
yal, Спасибо, исправил
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Цитата:
То есть из автокада при помощи инструментов CUI его уже не отредактировать. Все, что изменил - путь до лисп-файла сделал из абсолютного относительным. |
||||
![]() |
|
||||
Autodesk предупреждает:
Цитата:
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
Thượng Tá Quân Đội Nhân Dân Việt Nam Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372
|
Цитата:
То, что он запихан в ZIP - значения не имеет. А то, что аутодесковская "читалка" его не читает - так это их глюки. В CUI полно нелогичных мест. |
|||
![]() |
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,839
|
Цитата:
__________________
Когда в руках молоток все вокруг кажется гвоздями. |
|||
![]() |
|
||||
Цитата:
Цитата:
Цитата:
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: Последний раз редактировалось hwd, 10.09.2012 в 17:30. |
||||
![]() |
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,839
|
Цитата:
Скажите мне хоть одну современную версию любой, но хоть более-менее фирменной, программы где задекларированно изменение конфигурации путем изменения файлов настроек - по крайней мере я ни одной такой не пользуюсь (хотя это конечно не показатель).
__________________
Когда в руках молоток все вокруг кажется гвоздями. |
|||
![]() |
|
||||
Autodesk говорит это своим пользователям ежегодно
![]() Цитата:
Цитата:
Цитата:
Если кратко, то я считаю, что все важные XML документы (например CUI) должны иметь XSD схему и соответствовать ей, дабы документ всегда можно было проверить на предмет валидности. Спорить на эту тему мол "нафига это надо" - нет никакого желания.
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: Последний раз редактировалось hwd, 10.09.2012 в 18:08. |
||||
![]() |
|
||||
Thượng Tá Quân Đội Nhân Dân Việt Nam Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372
|
Цитата:
Форматы файлов настроек у этих программ разные. Ну и что? Что касается CUI и прочих основанных на XML фишках, тут у Autodesk явно нету "царя в голове". Куда пропал их же замечательный DesignXML? Да просто испужались, что "и без них большевики обойдутся". Что касается совместимости, то XML тем и хорош, что в него можно что угодно записать, и это не будет мешать любым "чтецам". Чужие данные они просто будут пропускать. |
|||
![]() |
|
||||
Цитата:
Вряд ли они чего-то испугались. Наличие стороннего визуального редактора для построения пользовательского интерфейса в AutoCAD вовсе не отменяет необходимости наличия самого AutoCAD. ![]() Цитата:
![]() P.S. Кстати, можно на основе имеющихся CUI создать XSD файл для своих нужд и использовать его для проверки валидности своих и сторонних CUI файлов.
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: Последний раз редактировалось hwd, 10.09.2012 в 20:40. |
||||
![]() |
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,839
|
И что хоть в одной из этих программ настраивается "официальным" методом путем изменения файлов конфигурации? Видимо я их плохо знаю и не умею использовать? Покажите мне место в мануале где расписан формат файла настроек (config.sys, system.ini и.т.п - не предлагать - они "немного" устарели и несут почетную функцию рудиментов)?
__________________
Когда в руках молоток все вокруг кажется гвоздями. |
|||
![]() |
|
||||
Thượng Tá Quân Đội Nhân Dân Việt Nam Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372
|
Цитата:
Цитата:
![]() Цитата:
|
|||
![]() |
|
||||
Все оказалось банально просто - cuix создан в 2012 версии, поэтому в 2010 он read-only. Наверное, структура cuix в этих версиях разная.
P.S. структура полностью одинакова. Последний раз редактировалось Do$, 11.09.2012 в 12:03. |
||||
![]() |
|
||||
Сильно отличаются?
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
Исправился малость
![]() Сильно не копался, но похоже, что чем-то различаются. Потому что в 2012 автокаде я могу с помощью CUI изменять файл cuix, а в 2010 этот же файл read-only. Если есть время и желание - вот 2 чистых cuix, созданных в 2010 и 2012 версиях. А может разница вообще не в версиях, а в том, что 2010 у меня чистый автокад, а 2012 - Civil? P.S. Заглянул в некоторые файлы, там явно прописана версия автокада. Потому, наверное, не хочет младшая версия редактировать cuix старшей версии. Последний раз редактировалось Do$, 11.09.2012 в 12:04. |
||||
![]() |
|
||||
dev.nano Регистрация: 21.03.2009
Сообщений: 363
|
Ха, вы ещё не знаете, как оно внутри спроектировано
![]() |
|||
![]() |
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,839
|
Ей богу не хотел я эту тему затрагивать, ибо чувствую начнется срач, но раз уж "мысль жива" - "изначально хорошее планирование", это миф - который стал очевидным годам так к 80-тым, (когда начали постепенно замещать "классическую" к тому времени каскадную модель разработки, в итоге получив всякие RUP'ы, XP и прочее) - нет реальных программ с жизненным циклом в 10 лет (только, если вдруг кто решит написать, что моя программа вот уже 15 лет как работает и еще столько-же проработает - предупрежу сразу - сколько она работает к понятию жизненного цикла програмного продукта имеет очень малое отношение). Нет никакой возможности "все продумать" - так как программа Ваша в 100% случаев пишется с использованием кучи сторонних библиотек, структур, форматов и пр., да еще и в 85% процентах, является не чем иным как просто связкой между несколькими вышеперечисленными "чужими" наработками (что не в коем случае не является плохо - для того они и делаются).
__________________
Когда в руках молоток все вокруг кажется гвоздями. |
|||
![]() |
|
||||
В любом деле важно не утонуть в деталях и уметь вовремя остановиться. Процесс планирования - не исключение. Идеального ПО не существует, но чем лучше оно продумано до того, как программисты сели писать код, тем качественней это ПО будет. На тему предварительного планирования (и не только) при написании ПО, есть хорошая книжка от Макконнелла - "Совершенный код".
Применительно к CUI файлам выполнить предварительное "планирование" было очень просто, тем более, что состав меню по сути один и тот же: риббоны, палитры, кнопки... Разработчикам Autodesk ничего не мешало добавить в CUI файл два атрибута: один - указывающий хранение XSD файла (например в каталоге "C:\Program Files\Common Files\Autodesk Shared"), второй - собственно имя и префикс пространства.
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,839
|
Это и есть основа так называемого каскадного или классического проектирования, которое увы давно потеряло актуальность. Если упрощенно то при современных условиях не возможно продумать все до мелочей - т.к. по сути ваш непосредственный вклад в программу которую Вы разрабатываете стремится к нулю и дело сосвсем не в незнании ньюансов библиотек - все современные методы разработки (планирования) основанны на цикличности "переделок" в разных, но повторяющихся стадиях (отличие методологий в таких деталях как обязательное постоянное сохранение функциональности у каждой стадии, очередность итераций и пр.). Каскадная модель умерла в немалом потому, что суммарное время планирования ВСЕГДА дольше процесса непосредственно программирования (еще дольше отладка - но это из другой темы) - и если мы представим, что мы хотим вначале полностью "продумать" до всех мелочей проект, а лишь потом взять и написать, то скорее всего к концу планирования она уже потеряет актуальность, а во вторых по факту это просто невозможно (в современных реалиях).
__________________
Когда в руках молоток все вокруг кажется гвоздями. |
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Программа редактирования положения размеров аналогично стандартной DIMSPACE | tov | Программирование | 17 | 18.09.2009 10:57 |
Фундамент с динамическими нагрузками в Scad | Tlelaxu | SCAD | 9 | 31.08.2007 10:44 |