Robink Posted April 28, 2017 Report Share Posted April 28, 2017 (edited) github.com/RobinKzn/CustomAutosaveNanoCad Работает в отделе больше 2х месяцев. Нареканий не было. Edited July 28, 2017 by Robink 5 Quote Link to comment Share on other sites More sharing options...
Ivanco Posted April 28, 2017 Report Share Posted April 28, 2017 (edited) надоел глючный стандартный? Вероятно там как то сложно все внутри, иначе бы уже реализовали корректный. Куда и как сохранять, когда удалять старое, настройки 1.Куда - две опции в текущую папку с файлом(причем создавать отдельный Autosave) папку + возможность выбирать папку общую для всех автосохранений. 2. Как - исходя из текущей настройки формата файла. В имени дописывать время сохранения. 3.Возможно хорошо бы было так: сделать сохранение "по кругу" нескольких .dwg .Например 3,4 .dwg которые перезаписываются по кругу. А образуются они из одного активного .dwg. ( ну и тут создается проблема разрастания занимаемого места, т.к. автосейвы вроде как надо бы удалять, а вот это как раз и не всегда нужно , вообще это принципиальный момент наверное. Т.е. что делать с автосейвами удалять или нет.). 4.Из настроек точно надо это пользовательский выбор времени сохранения. _________________ Кстати у меня как то была мысль , а почему не реализовывают автосейв , от процента изменений в .dwg( вероятно сложно отследить/оценить), ведь результатом работы является не сколько файл "висел" по времени, а именно количество внесенных изменений. Edited April 28, 2017 by Ivanco 1 Quote Link to comment Share on other sites More sharing options...
Vladimir-omsk Posted April 28, 2017 Report Share Posted April 28, 2017 (edited) Идея очень хорошая. Я хотел разработчикам предложить ввести в настройки такую же настраиваемую опцию (рядом с автосохранением), но по итогам форума энтузиазм пропал. Хотелки и предложения: 1. Делать "Сохранить как" сразу при открытии файла. (Пояснение - не раз сталкивались со следующей ситуацией: файл с сервера открывают на одном РС, начинают в нём работать, периодически сохраняясь. В какой-то момент этот же файл открывают с другого РС (только для чтения) и используют "чтобы посмотреть". Потом на первом РС файл сохраняют и закрывают. Через некоторое время на втором РС закрывают весь NC (со всеми вкладками) и "на автомате" на все вопросы "Файл существует. Переписать?" отвечают "Да". Получаем, ессно, файл по состоянию его открытия на втором РС). 2. Сохранять версии по умолчанию в той же папке. 3. К имени в конце добавлять "vNN", где NN - номер версии 01-99. Важное дополнение - предыдущий № брать из состояния в папке, т.к. при одновременном открытии файла (как я описал в п.1) возможно, что версии с разных РС будут "через одну". 4. Период "сохранения как" - настраиваемый (10мин...60 мин) с интервалом в 10мин. 5. Период стирания минорных версий - настраиваемый от "0"(не стирать-ручное стриание) до 10 суток с интервалом 1 сутки. Надо также понимать, что такой режим "сохранить как" сделает возможным одновременное открытие файла любым количеством пользователей, причём предупреждений о том, что файл уже открыт, - не будет. Т.е. потенциально можно также получить проблему. Edited April 28, 2017 by Vladimir-omsk Quote Link to comment Share on other sites More sharing options...
Kreator Posted April 28, 2017 Report Share Posted April 28, 2017 (edited) Докину свои мысли. 1. Настройки таймера: Время между сохранениями. Галка Сброс таймера при сохранении вручную. Галка Делать автосейв сразу после открытия. 2. Галка Сохранить без доп. настроек. 3. Галка Сохранить копию как. Настройка расположения файлов - путь к папке (с обработкой относительных путей). Настройка количества файлов автосейвов. Удаление по принципу FIFO (если ограничение установлено). Настройка имён файлов с подставновкой {T} - время, {D} - дата, {N} - имя, {X} - номер по порядку. Настройка удаления всех (либо всех, кроме X последних) автосейвов при зыкрытии файла. Уважаемые пассажиры! Пристегните ремни, сейчас пилот первого класса Иван Сидоров постарается поднять всю эту бандуру в воздух По проблемам: ХЗ, не сталкивался. В настройках пути и имени давать предупреждение по этому поводу, а при неудачной настройке (если по факту получилось длинее) заставлять что-то менять. Можно, конечно, имя файла резать, но тут уже ИИ надо подключать, это лишнее. Рядом с DLL в любом удобном виде - что легче прочитать и записать. Я в XML храню - можно при необходимости в Calc'e открыть. Надо думать. Какого рода проблемы? Если ФС (нехватка места, отсутствие прав) - можно показать уведомление и открыть настройки для изменения на рабочие. Edited April 28, 2017 by Kreator Quote Link to comment Share on other sites More sharing options...
Ivanco Posted May 2, 2017 Report Share Posted May 2, 2017 x64 никак не могу получить nanoCAD.Application. Ну и фиг с ним. Всех с первомаем! у меня на x64 Win10 вроде подключилось. но VS попросила добавить ссылку на Microsoft.CSharp.dll. первая обнаружившаяся проблема, это то что автосейв "сработал" в "другом" нанокаде, т.е. в том который в данный момент зарегистрирован последним(насколько я понимаю), а не в том в котором я открыл чертеж и планировал протестировать. Возможно проблема в коде ниже, или я чего то не понимаю.зачем создавать новый Instance, нужно ведь пользоваться имеющимся? Type t1 = Type.GetTypeFromProgID("nanoCAD.Application"); NC = (nanoCAD.Application)Activator.CreateInstance(t1); Quote Link to comment Share on other sites More sharing options...
Ivanco Posted May 2, 2017 Report Share Posted May 2, 2017 (edited) может так? nanoCAD.Application ncApp = Marshal.GetActiveObject("nanocad.Application") as nanoCAD.Application; опять же если разные nanoCAD что получится в итоге, вероятно последнее зарегистрированное все равно. Edited May 2, 2017 by Ivanco Quote Link to comment Share on other sites More sharing options...
alexey77 Posted February 9, 2018 Report Share Posted February 9, 2018 Доброго дня! Подскажите пожалуйста по шагам как внедрить Ваш вариант автосохранения в имеющийся NanoCad 5.1 бесплатный вариант? ОС - Win 10 Pro x64. Quote Link to comment Share on other sites More sharing options...
Robink Posted February 9, 2018 Author Report Share Posted February 9, 2018 Доброго дня! Подскажите пожалуйста по шагам как внедрить Ваш вариант автосохранения в имеющийся NanoCad 5.1 бесплатный вариант? ОС - Win 10 Pro x64. Скачайте проект CustomAutosaveNanoCad/autosave2/obj/Debug отсюда возьмите autosave51.dll Interop.OdaX.dll Interop.nanoCAD.dll Положите их в одну папку Или можете оставить как есть все лежать, куда положите скачанный проект Потом загрузить через команду Netload autosave51.dll Для того чтобы при загрузке программы подгружалась библиотека автоматом надо ее вписать в nApp.ini Для настройки команда customausosavesettings 1 Quote Link to comment Share on other sites More sharing options...
alexey77 Posted February 16, 2018 Report Share Posted February 16, 2018 Доброго времени суток всем! В общем пробовал установить по данной схеме на Win8 x64 с правами админа. но в дальнейшем надо будет это все проделать на Win10 x64. В разделе с программой C:\Program Files (x86)\Nanosoft\nanoCAD 5.1\ создал файл nApp.ini [\NetModules] autosave51.dll Interop.nanoCAD.dll Interop.OdaX.dll в nCad.ini пока оставил так [\NetModules] hostdcl.dll outdvbutils.dll #include "nApp.ini" #include "userdata.ini" Сами 3 dll положил в папку C:\Program Files (x86)\Nanosoft\nanoCAD 5.1\bin - вопрос надо их как-то регистрировать, чтобы НаноКад мог с ними работать или достаточно разместить их в нужном каталоге? Далее ввожу в командной строке НаноКада: NetLoad Команда: NETLOAD тут выбираю нужный файл autosave51.dll NetLoad - NetLoad Команда: CUSTOMAUTOSAVESETTINGS Неправильный ключ или команда. Введите (') для команды или (?) для математического выражения: CUSTOMAUTOSAVESETTINGS Вопрос: почему может не работать .net библиотека? Quote Link to comment Share on other sites More sharing options...
Robink Posted February 16, 2018 Author Report Share Posted February 16, 2018 Interop.nanoCAD.dll Interop.OdaX.dll эти не надо вписывать Quote Link to comment Share on other sites More sharing options...
Robink Posted February 16, 2018 Author Report Share Posted February 16, 2018 Вообще в bin можно класть? Вот Interop.nanoCAD.dll, Interop.OdaX.dll они и так там лежат Quote Link to comment Share on other sites More sharing options...
Robink Posted February 16, 2018 Author Report Share Posted February 16, 2018 Удали их оттуда, похоже от этого весь сыр бор Quote Link to comment Share on other sites More sharing options...
alexey77 Posted February 16, 2018 Report Share Posted February 16, 2018 Не. изначально этих файлов не было в bin - и все равно не давало запустить настройки автосохранения. Сейчас опять удалил из bin эти файлы - результат такой же. Quote Link to comment Share on other sites More sharing options...
Robink Posted February 16, 2018 Author Report Share Posted February 16, 2018 а autosave51.dll где лежит? они должны лежать рядом с ней Interop.nanoCAD.dll Interop.OdaX.dll все это не в bin Quote Link to comment Share on other sites More sharing options...
dromandon Posted November 2, 2018 Report Share Posted November 2, 2018 (edited) Подскажите пожалуйста. Попробовал использовать данный способ автосохранение в Nanocad СПДС 6.0 Когда таймер доходит до нуля, нанокад выдаёт ошибку.. Это я что-то настроил не так, или просто под нано СПДС 6.0 данный способ не предназначен? Винда 7-ая, 64 битная, использовал файл в папке CustomAutosaveNanoCad-master\autosave7x64\obj\Debug Edited November 2, 2018 by dromandon Quote Link to comment Share on other sites More sharing options...
Robink Posted November 2, 2018 Author Report Share Posted November 2, 2018 А команда стартует customautosave? папка есть автосохранения? Quote Link to comment Share on other sites More sharing options...
dromandon Posted November 2, 2018 Report Share Posted November 2, 2018 Стартует.. Команда: CUSTOMAUTOSAVE CustomAutosave - CustomAutosave CustomAutosaveRun C:\\Автосохранения\АС Андрей(1610_02112018).dwg Команда: ResetCustomAutosaveCycle ResetCustomAutosaveCycle - ResetCustomAutosaveCycle И как только отчёт в CUSTOMAUTOSAVESETTINGS подходить к концу... НЕУСТРАНИМАЯ ОШИБКА! и бла бла бла Quote Link to comment Share on other sites More sharing options...
Robink Posted November 2, 2018 Author Report Share Posted November 2, 2018 (edited) проблема в коде, не верно суммируются пути, надо было использовать Path.Combine. Попробуйте поменять на как у меня положение папки автосохранения. Edited November 2, 2018 by Robink 1 Quote Link to comment Share on other sites More sharing options...
dromandon Posted November 4, 2018 Report Share Posted November 4, 2018 проблема в коде, не верно суммируются пути, надо было использовать Path.Combine. Попробуйте поменять на как у меня положение папки автосохранения. Почему-то не могу прикрепить в этой ветке форума скрины, странно. Настроил как у вас в на скрине в первом посте, всё так же - неустранимая ошибка( Quote Link to comment Share on other sites More sharing options...
Robink Posted November 6, 2018 Author Report Share Posted November 6, 2018 Попробуйте сохранить документ как в папку автосохранения. Попробуйте запустить сами команду customautosave. Quote Link to comment Share on other sites More sharing options...
dromandon Posted November 6, 2018 Report Share Posted November 6, 2018 Попробуйте сохранить документ как в папку автосохранения. Попробуйте запустить сами команду customautosave. Если помещаю документ в папку автосохранения и сам запускаю команду customautosave, то пишет следующие: "Документ из папки автосохранение: "C:\temp\autosave\18_00312_Залесье_исп_доб новые колодца_recover.dwg". Автосохранение отменено." Quote Link to comment Share on other sites More sharing options...
Robink Posted November 6, 2018 Author Report Share Posted November 6, 2018 Я вот подумал, может в СПДС по другому назван COM интерфейс, не "nanoCAD.Application"? Quote Link to comment Share on other sites More sharing options...
dromandon Posted November 6, 2018 Report Share Posted November 6, 2018 Я вот подумал, может в СПДС по другому назван COM интерфейс, не "nanoCAD.Application"? К сожалению не знаю( Quote Link to comment Share on other sites More sharing options...
Robink Posted November 6, 2018 Author Report Share Posted November 6, 2018 Вы SDK устанавливали? Quote Link to comment Share on other sites More sharing options...
dromandon Posted November 6, 2018 Report Share Posted November 6, 2018 Вы SDK устанавливали? Знал бы я что это такое) Если сильно не затруднит, расскажите последовательность всей установки данного приложения, считая, что я полный кретин в данном случае) С программирование я пока на Вы, увы) Могу описать последовательность своих действий.. Имею: Windows 7 64 битную и Нанокад СПДС 6.0. Захожу по ссылке из первого поста (github.com/RobinKzn/CustomAutosaveNanoCad), качаю всё zip'ом. Разархивировываю папку на рабочий стол. Далее захожу в нанокад, netload и указываю этот файл autosave7x64 (путь к папке к нему C:\Users\Admin\Desktop\CustomAutosaveNanoCad-master\autosave7x64\obj\Debug) Далее запускаю команду CUSTOMAUTOSAVESETTINGS, настраиваю как у вас в первом посте на скрине. Команда customautosave сохраняет файл в указаную папку в виде НазваниеФайла(1300_06112018).dwg Но когда таймер из настроек доходит до нуля, нанокад фаталит( Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.