Пакетная очистка файлов dwg
Захотелось мне создать такой мини-опрос
Известно, что нередки ситуации, когда надо сто-двести-пятьсот файлов очистить от мусора. Известно, что есть решения на том же dwg.ru / caduser.ru / cadtutor.net / theswamp.org etc, решающие такие вопросы.
Собственно вопрос - надо ли создавать код для таких задач? Будет он использоваться? Вообще - надо ли? Или оставить все как есть?
Прошу ответы в комментариях. В ответах не приводите никаких ссылок (иначе срабатывает спам-бот, комментарий может запросто свалиться в спам, и его никто не увидит).
Version 0.1.0; исходник.
Ошибки и пожелания
- Для 2013 и 2014 версиий AutoCAD добавить проверку и удаление проксиобъектов
Заработало, когда я снял атрибут "только чтение" с файлов.
ошибок не выдавал про толькочтение
еще бы сюда _audit и удаление vba.....
Есть предложение: в диалоге устанавливается флажок "вести лог", а содержимое лога предоставить сюда. Тогда хоть что-то будет понятно (ну, по крайней мере, я на это надеюсь).
ставил, в лог ничего не записывал я бы выложил. ну в любом случае, проблема отпала )
так какие проблемы с _audit?
Очень странно, что лога не было.
С проверкой пока все не очень гуд: время как-то кончилось. Если сегодня с основной работой более-менее получится, попробую продолжить ковырять.
Вчера ковырялся с консольным AutoCAD'ом. Спасибо Евгению Елпанову, подсказал некоторые моменты.
Тем не менее, результаты неутешительные:
arxload
, и через командуarx
. Результат нулевой.Поэтому при работе через консоль про корректное удаление и разбиение прокси можно практически забыть.
Хотя такой подход позволяет и arx загрузить, и проверку файла выполнить, и параметрические зависимости поудалять (то, что мне лиспом сделать не удалось, сколько ни пытался), и командные реакторы подключить при необходимости. Но достаточно слабая гарантированность результата сводит все плюсы к нулю
Как результат - даже не знаю, имеет ли смысл дальше пытаться что-то сделать. Или оставить как есть и черт с ним?
А сейчас тестовая версия очистки прокси как работает?
На тех файлах, которые ко мне приходили, срабатывало вроде корректно.
Акад 2014, почему в появившемся окошке все надписи заменены на символы?
Win7 x 64 Pro; ACAD 2014 Eng x64 + SP1; ACAD 2014 Rus x64 + SP1: диалог отображается корректно. Какие у Вас настройки ОС и ACAD'a?
Win7 x 64 Pro; ACAD 2014 Rus x64 + SP1, а что подразумевается под настройками ОС и Акад?
Имелись в виду прежде всего обновления на Win и на ACAD.
Странно... Только что подключился к домашней машине (Win 7 Ultimate x64; ACAD 2014 Eng / Rus + SP1) - диалог формируется вполне нормально. Попробуйте в проводнике Windows в адресной строке вбить %temp% (прямо так, с процентами в начале и в конце), нажать Enter, найти подпапку kpblc, в ней - подкаталог с именем текущего профиля AutoCAD и там файл dlg.dcl. Откройте его в Блокноте - там нормальные символы или чертовщина какая-то?
Такие же кракозябры
Акад с последним SP и раз в квартал производится обновление системы (машина рабочая)
Оччень интересно. Получается, что запись файла dcl выполняется криво? Попробую выяснить, в каких случаях это возможно и как это обходить. Прошу паузы.
О, пока не забыл! Логин пользователя на английском или там есть кириллица? И в AutoCAD выполните строку
(getvar "cprofile")
Ответ приведите здесь.
У нас все профили идут на латинице и пароли тоже
Команда: CPROFILE
CPROFILE = "Акад2012" (только чтение)
Ничего не понимаю... А Вы копировали текст с браузера или сохраняли его как lsp?
Копировал текст с браузера, создавал новый LISP через редактор, ну может единственный вариант, что я его запускал не с диска C, а с диска D (не хватает прав для копирования в системный диск)
Попробуйте скопировать текст в блокнот или Notepad++ и оттуда сохранить как lsp. Можно попробовать и из браузера: правый клик на ссылке - сохранить объекта как:
Нажал сохранить как, потом переименовал (поменял расширение) и все стало отображаться корректно
Открыл текстовое окно по окончанию и там было написано
Команда: BP
Регенерация модели - кэширование видовых экранов.
; ошибка: аргумент не является ошибкой vl-catch-all-apply: "Ошибка Automation. Отсутствует описание."
Это нормально?
Так, есть предложение связаться через почту (адрес доступен по ссылке http://autolisp.ru/about/ ). Можно "поковыряться" в конкретной ситуации через, например, TeamViewer - он бесплатен и может работать без установки.
Антон ,
поиграйтесь с Regional options в системе - всё пройдет.
Алексей,
а можно ли сделать так, что бы после обработки файлов дата последнего изменения и версия акада сохранялись ?
Или хотябы что бы можно было выбирать версию для сохранения файла (как это реализовано в пакетной обработке файлов ToolPak) ?
К сожалению, это невозможно: механизм ObjectDBX использует сохранение только в текущей версии. В принципе, попробовать сохранять дату и время файла попробовать можно - но я пока не представляю, как это можно сделать только лиспом.
После проверки на локальной машине, рискнул попробовать на корпоративном сервере Программа совершенно спокойно обходит файлы "read only", сбои были при встрече каталогов с длиной пути более 255 символов (как такие каталоги вобще могли быть созданы - ума не приложу). Ещё при наличии "кракозябельных" символов в пути файла происходит отказ.
Но это ошибка вызвана настройками системы, а не недочётом в проге (имхо).
Результаты более чем удовлетворительные.
Освободил 10-15% места на сервере. Жалоб о "битых" файлах не поступало (прошло 2 недели активного юзания почищенного сервера).
Спасибо Алексей !!!