Вывод в windows-проводнике названия баз в каталоге кластера 1С и каталогах локального кэша и настроек пользователя

15.11.17

База данных - Инструменты администратора БД

Вывод в windows-проводнике названия баз в каталоге кластера 1С и каталогов локального кэша и настроек пользователя. Используется создание файла desktop.ini, который автоматически размещается в подкаталогах кластера 1С. Теперь станет немного проще определить прямо в windows-проводнике, что, к примеру, каталог fd531400-428c-41c0-954f-b910bb5cc552 это именно база ERP.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Вывод в windows-проводнике названия баз в каталоге кластера 1С и локальных каталогах пользователя (v2)
.epf 119,13Kb
64 2 500 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

Возможно, существует много обработок которые анализируют файл 1CV8Clst.lst, выводят из него данные в человеческом, позволяют удалить каталоги несуществующих баз, предоставляют другие сервисные возможности и т.д. Да что там говорить, я и сам когда-то в качестве развлечения тоже делал различные варианты парсера этого файла.

Однако что интересно, я не смог найти на Инфостарте упоминания файла desktop.ini или уникального идентификатора {F29F85E0-4FF9-1068-AB91-08002B27B3D9}.

А между тем, несложно сложив одно с другим, мы получаем возможность задать некоторые свойства каталога (что, как мне кажется, невозможно сделать интерактивно), которые будут видны в отдельных колонках в проводнике Windows при выводе в режиме "таблица". Если кому-то, как и мне, надоело видеть в каталоге "reg_1541" безликие УИДы, это можно легко исправить -- всего-то создать desktop.ini нужного формата и включить отображение колонки "Название".

После успешного тестирования этой идеи я решил создать обработку, которая максимально упростила бы этот процесс и привнесла в  него возможности произвольной настройки. В итоге получилось следующее:

  • выбираем место выполнения кода (клиент или сервер).
  • выбираем или указываем каталог кластера 1С (с учётом контекста; помним что выполнение возможно на клиенте и на сервере). Например каталог "C:\Test" при работе с сервера и "\\Server1C\C$\Test" при работе с клиента это суть одно и то же, вопрос только в авторизации доступа.
  • нажимаем "Создать desktip.ini". После этого:
  • проверяется доступ к каталогу.
  • считывается и парсится файл 1CV8Clst.lst.
  • считываются подкаталоги кластера.
  • в каждом подкаталоге создаётся файл desktop.ini, формирующийся по заданному шаблону, используя данные из 1CV8Clst.lst и любой код на языке 1С.
  • теперь в windows-проводнике каталога кластера можно отобразить колонки, заполненные нашими данными. Данные могут появиться не мгновенно, но в пределах десятка секунд.

Информации о desktop.ini довольно мало, и иное его использование (кроме задания тех свойств про которые я упоминал) у меня не получилось. Даже свойство "Комментарий" почему-то не работает, не говоря уже о более экзотических вариантах типа установки индивидуальной иконки для папки (хотя описано и такое, и ещё куча прочих). Однако лёгкая возможность настройки произвольного шаблона создания файла даёт возможность поэкспериментировать самостоятельно.

Ссылки к размышлению (https://msdn.microsoft.com/en-us/library/ms692560, https://hwiegman.home.xs4all.nl/desktopini.html) есть в обработке.

Обработка прилагается, собственно идея не так уж сложна, так что основной объём кода -- это обвязка, интерфейс, удобства и настройки. Ах да, управляемые формы.
Результаты работы -- на скриншотах. Буду рад, если кому-то пригодится.

Upd. 17.11.2017 - "Хочу такую же для локального кэша и для настроек пользователя!" (с)
Теперь нужно выбрать ещё и "Режим работы" -- каталог кластера или каталоги пользователя. Первый режим (для кластера) работает по старому, а во втором (каталоги пользователя) каталог выбирать уже не нужно, используются AppData и LocalAppData. Второй режим можно включить только в случае выполнения кода на клиенте. Шаблоны для двух режимов -- разные.
Схема работы во втором режиме:
- считываются и парсятся файлы ibases.v8i из каталогов %APPDATA%\1C\1Cv81, %APPDATA%\1C\1CEstart;
- в каталоге %APPDATA%\1C\1CEstart считываются указанные в файле 1CEStart.cfg параметры CommonInfoBases, и указанные в них файлы ibases.v8i тоже считываются и парсятся;
- считываются подкаталоги %APPDATA%\1C\1Cv81, 1Cv82, 1Cv8, %LOCALAPPDATA%\1C\1Cv81, 1Cv82, 1Cv8
- в каждом подкаталоге создаётся файл desktop.ini, формирующийся по заданному шаблону, используя данные из ibases.v8i (поиск по УИД) и любой код на языке 1С

NB! в настоящее время наименее производительным местом является разбор файла-шаблона, который осуществляется много раз и посимвольно (для каждого подкаталога). В результате при большом количестве подкаталогов формирование файлов может затянуться на несколько лишних секунд, хотя парсинг, фактически, каждый раз выполняется один и тот же. Не оптимизировал, т.к. обработка не предполагается для частого запуска. Удаляйте из шаблона лишние комментарии и неиспользуемые параметры.

P.S. не знаю можно ли скачивать обновление без $m, получится ли обновить предыдущий файл; так что выложил новый в то же место как v2. Если что не так, то скачавшие первую версию могут написать, вышлю вторую.

Вступайте в нашу телеграмм-группу Инфостарт

обработка desktop.ini каталог кластера каталог локального кэша каталог настроек пользователя

См. также

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы, интерфейс 8.5. Может выполнять свертку одновременно в несколько потоков, а также без непосредственного участия пользователя. Решение в Реестре отечественного ПО.

24900 руб.

20.08.2024    74976    379    170    

325

Разработка Инструменты администратора БД Администрирование веб-серверов Администрирование Программист 1C:ERP Платные (руб)

Это специализированное решение для глубокого анализа и мониторинга серверов и баз данных 1С. Продукт позволяет выявлять причины замедлений, блокировок и ошибок, объединяя данные технологического журнала, СУБД и оборудования в единой интерактивной системе.

90000 руб.

13.05.2026    1268    2    0    

4

Инструменты администратора БД Инструментарий разработчика Роли и права Программист 1С:Предприятие 8 1C:Бухгалтерия Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

17000 руб.

10.11.2023    26368    98    46    

104

Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтер Пользователь 1С:Предприятие 8 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

14640 руб.

29.04.2020    51264    141    162    

95

Информационная безопасность Инструменты администратора БД Инструментарий разработчика Учет документов Системный администратор Программист Бизнес-аналитик Бухгалтер Пользователь Руководитель проекта 1С 8.3 1С 8.5 Розничная и сетевая торговля (FMCG) Платные (руб)

Контроль ввода данных в 1С: проверка заполнения реквизитов, обязательные поля, контроль перед записью и проведением, запрет проведения документа. Позволяет настраивать любые проверки данных в 1С 8.3/8.5 от обязательных полей до сложных условий – без открытия конфигуратора и написания кода. Готовое расширение, которое подключается и работает сразу.

6000 руб.

15.04.2026    2571    6    0    

21

SALE! 15%

Файловый обмен (TXT, XML, DBF), FTP Поиск данных Инструменты администратора БД Корректировка данных Системный администратор Программист 1С:Предприятие 8 1C:Бухгалтерия 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Данная обработка позволит Вам легко и просто, а главное - быстро, выполнить сравнение данных между ЛЮБЫМИ базами (и РИБ, по правилам конвертаций) по контрольным суммам выбранных объектов баз 1С, работающих на платформах 8.3 и выше. Удобный и понятный интерфейс в виде "мастера". Высокая скорость сравнения достигается за счет специального алгоритма расчета контрольной суммы объекта/записи и сравнения по данным суммам объектов 2х баз через файл. Имеется возможность выбора реквизитов, по которым система будет сравнивать объекты. Сравнение количества записей в движениях документов, возможность сравнивать данные по правилам конвертации и не только! Выбор объектов конфигурации для КАЖДОГО узла в отдельности с индивидуальным отбором для каждого объекта конфигурации, работа с FTP, сохранение или загрузка настроек, сохранение или загрузка результата сравнения, регистрация на обмен объекта и его движений. (Обновление от 12.11.2024, версия 2.2-2.5)

24400 20740 руб.

27.10.2017    46927    32    15    

50
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. guy_septimiy 16.11.17 09:44 Сейчас в теме
Полезно.
Плюс
nomadon; cleaner_it; emakei; +3 Ответить
2. Йожкин Кот 1009 16.11.17 09:54 Сейчас в теме
Очень здорово! Хочу такую же для локального кэша и для настроек пользователя!
ixijixi; BigB; nixel; nomadon; cleaner_it; ALagutin; emakei; KroVladS; dmpas; +9 Ответить
3. cleaner_it 200 16.11.17 13:50 Сейчас в теме
Очень даже полезно, молодец)
4. nomadon 369 16.11.17 14:39 Сейчас в теме
5. Darklight 37 16.11.17 16:49 Сейчас в теме
6. Brawler 466 16.11.17 18:23 Сейчас в теме
Подайте кто нить идею самой 1С.
Прогеры платформы, могли бы такое тоже спокойно замутить))

P.S.
Я бы наверное поступил несколько иначе при оформлении ini файла.
В такой ситуации имя папки в проводнике заменяется на указанное в ini файле.

Например

[.ShellClassInfo]
InfoTip=Супер база!!!
IconFile=ico.ico
IconIndex=0
LocalizedResourceName=Супер база!!! [9a0b6c4b-c564-4b66-8e14-9c0b8f565564]



IconFile - путь к файлу иконки ежели очень нужно, в данном случае она лежит в этой же папке
7. Alias 177 17.11.17 09:09 Сейчас в теме
(6)
Однако лёгкая возможность настройки произвольного шаблона создания файла даёт возможность поэкспериментировать самостоятельно.

Скажите, а Вы сами проверяли указанный вариант? Работало? На какой ОС?

Использование иных параметров (кроме задания тех свойств про которые я упоминал) у меня не получилось. Даже свойство "Комментарий" почему-то не работает, не говоря уже о более экзотических вариантах.

Конечно я пробовал и "несколько иначные" варианты. У меня на WinServ2008R2 и Win7Pro не взлетели. Если у Вас есть успешный опыт использования иных вариантов -- делитесь :)
8. Brawler 466 17.11.17 09:56 Сейчас в теме
(7) Это точно вопросы ко мне? Цитаты просто не из моего сообщения. Я в замешательстве.
9. Alias 177 17.11.17 10:02 Сейчас в теме
(8) Прошу прощения, вопросы к Вам. :) а цитаты из текста публикации, которые заранее ответили на сообщение. В частности, на Ваше "Я бы наверное поступил несколько иначе" есть ответ в тексте -- "лёгкая возможность даёт поэкспериментировать"; а на "использовать LocalizedResourceName" -- "я пробовал у меня не получилось".
10. Brawler 466 17.11.17 10:38 Сейчас в теме
(9) У папки должен быть установлен атрибут "Только чтение", только так начинает показывать.
Атрибут устанавливать рекомендую не при помощи проводника винды)))
Прикрепленные файлы:
cleaner_it; Alias; +2 Ответить
11. Alias 177 17.11.17 11:44 Сейчас в теме
(10) Спасибо, да, действительно сработало. Видимо нужно в настройки вывести отдельно галочку "Устанавливать атрибут Только чтение", чтобы для желающих обеспечить возможность такого отображения...
Для себя я не хочу менять отображаемое имя, опасаюсь. Нужна всё же какая-то стабильность :) а то видим имя одно, а по факту оно другое -- это может ввести в ступор.
12. Brawler 466 17.11.17 12:22 Сейчас в теме
(11)
Для себя я не хочу менять отображаемое имя, опасаюсь. Нужна всё же какая-то стабильность :) а то видим имя одно, а по факту оно другое -- это может ввести в ступор.


Поэтому я в примере и заключил в квадратные скобки GUID базы, ну чтобы не вызывать внутренние противоречия.
13. LexSeIch 212 18.11.17 14:15 Сейчас в теме
Интересная статья. Будет время попробую на практике. Спасибо!
14. Vyatcheslav 22 22.11.17 09:56 Сейчас в теме
Очень оригинально, спасибо!
15. 7OH 70 22.11.17 10:54 Сейчас в теме
У вас ошибка в шаблоне по-умолчанию в ШаблонПоУмолчаниюКаталогПользователя.
М.Получить(
У структуры не такого метода - там должно быть
ИсточникДанных.Получить(
16. Fatov_DI 23.11.17 11:58 Сейчас в теме
(15)
У себя исправил так М.НаименованиеВСписке
17. kolya_tlt 92 26.01.18 09:05 Сейчас в теме
идентификаторы зачем было замазывать? это же не пароли от карточки банковской
SerVer1C; +1 Ответить
18. kuzyara 2260 31.01.18 05:17 Сейчас в теме
Колонки отображаются автоматически, или их через диалог "Выбор столбцов в таблице" нужно включать?
19. Alias 177 31.01.18 10:08 Сейчас в теме
(18) К сожалению, включить самому. Я не знаю где хранятся эти настройки (отображаемых колонок)... Если бы знал -- подумал бы как включить их автоматически. Буду рад любой информации :)
20. sergpogo 2 01.02.18 11:04 Сейчас в теме
Ошибка при разборе файла списка на баз на строках типа:
//Folder=/ИмяПапки
21. Alias 177 01.02.18 16:20 Сейчас в теме
(20) Такая строка не является штатной... Документация по структуре v8i -- https://its.1c.ru/db/v8312doc#bookmark:adm:TI000000368
Если такая строка появилась путём ручной корректировки файла -- что ж, всего предусмотреть невозможно :)
Обработка гарантированно умеет работать с форматом файла, описанным в документации. Иные варианты требуют хоть и простейшей, но всё же доработки.
P.S. Хотите я дополню код чтобы строки файла v8i, начинающиеся с "//", пропускались?
22. sergpogo 2 01.02.18 16:59 Сейчас в теме
(21) ручной корректировки не было. Спасибо сам поправлю.
23. Zhilyakovdr 148 15.02.18 11:39 Сейчас в теме
В шаблоне по умолчанию поправьте М.Получить("Имя базы 1С") на ИсточникДанных.Получить("Имя базы 1С")
Для отправки сообщения требуется регистрация/авторизация