1с получить список дисков

Обновлено: 07.07.2024

Как получить список дисков удаленного компьютера?
Как получить список дисков удаленного компьютера находящегося домене имея логин /пароль админа.

Список дисков
Доброго дня. wmic logicaldisk get description,name|Find "Removable Disk" Дает результат.

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

Как получить список смонтированных систем?
Здравствуйте! Требуется получить информацию об одной из смонтированных файловых системах. Как.

Решение

Список всех смонтированных дисков в системе можно вывести так:

Решение

Да тоже не плохая команда )) И даже повеселее, показывает подробную (относительно) информацию о разделах.
Только тогда поочередно в столбик:

Возможностей много. Но в автоматическом режиме запускать придется только через отдельно
созданный текстовичек с командами:

А для простой задачи вывода списка дисков, ИМХО, сложновато - его еще и парсить придется (см. скрин).

Решение

Здравствуйте.
Не получается объединить две переменные и вывести в одну строку:

Решение

Не получается объединить две переменные и вывести в одну строку


sotik, дело в том, что после буквы диска с двоеточием ещё "запрятан" символ "CR". Отсечь его можно так:

Не "просто подставить двоеточие", а добавить двоеточие в двух местах кода, как написано.

Гружусь с winpe, необходимо с него найти логический диск системы с пакетного файла. получить путь.
т.е. есть в системе С D E F, пробежаться по ним, и например найти папку windows, и записать в переменную путь, по типу D:\windows

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

Как это сделать?

Добавлено через 15 секунд
vavun, =)

vavun, Dragokas, не нашел решения.

- этот код как раз находит буквы локальных дисков, вот еще бы папку найти.

Добавлено через 1 час 13 минут

Список всех смонтированных дисков в системе можно вывести так:
- этот тоже отлично отрабатывает, причем без цикла. проще некуда. А можно ли в списке выведенных дисков добавить описания дисков, чтобы понять кто есть жёсткий диск, кто флэшка, кто subst, кто сетевой?

Mitek1977, через какой из предложенных в теме способов или Вам все равно?

Для WMI - это будет свойство DriveType:

Поиск файла на внешних устройствах или как получить список всех смонтированных носителей
В общем есть задача найти файл test.txt в директории testdir на любом устройстве SD карта или USB.


Получить список дисков
Есть функция DWORD WINAPI GetLogicalDrives(void) Делаю следующий вызов в событии Form1_Shown.


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


Получить список физических дисков
Здравствуйте! Как можно получить список имен физических дисков в формате PhysicalDriveN, где N -.

Мне приходится общаться с бухгалтерами, которые работают не в соседней комнате, а в соседней области. Бухгалтера часто слабо разбираются в нюансах работы с файловой системой, поэтому вопрос о том, в каком каталоге находится база данных 1С, ставит бухгалтеров в тупик.

Что такое Каталог?

Если Вы не знаете, что такое каталог, то у этого объекта есть другое название - папка, которое перешло к нам от английского "folder" (папка). Не понимаете, что такое "папка"? Если коротко, то папка - это место хранения группы файлов, отобранных по определённому признаку. Скажем, вся информация, которую Вы видите в 1С, хранится в файлах. Иначе говоря, мы имеем группу файлов, которых объединяет то, что в них хранится информация Вашей базы данных 1С. Поэтому все файлы базы данных хранятся в одной папке, которую мы и будем искать в этой статье.

И поскольку папка или каталог - это объект файловой системы Вашего компьютера, то с каталогом информационной базы данных 1С можно делать все те же операции, что и с другими каталогами, например:

  • копировать
  • перемещать
  • архивировать
  • и даже. удалять, что делать нужно с предельной осторожностью!

Зачем знать путь к Базе данных 1С?

Если Ваш "программист 1С", как Вы его, должно быть, называете, сидит в двух шагах от Вас, или если Ваша информационная база 1С уже давным-давно настроена и работает исправно, то Вам вряд ли придётся иметь дело с каталогом базы данных 1С. Но жизнь богата на непредвиденные ситуации, и иногда бабушке, которая впервые в жизни садится за компьютер, приходится выполнять удаление индексных файлов из каталога базы данных для того, чтобы базу данных переиндексировать. Поверьте мне, что такое бывает.

Поэтому, если вдруг и не дай Бог молодой человек на другом конце телефонного провода попросит Вас зайти в каталог базы данных 1С, то Вы легко сможете это сделать, прочитав мою статью.

Как узнать, где находится база данных 1С?

Для того, чтобы узнать, в каком каталоге находится Ваша база данных 1С, я рекомендую проделать следующие 3 шага.

Шаг 1. Запустите 1С:Предприятие

Запустите 1С:Предприятие так, как Вы обычно это делаете. Как правило, у Вас на экране появится окошко "Запуск 1С:Предприятия" со списком информационных баз, которые Вы можете запустить.

В предыдущем абзаце я написал "как правило", потому что в большинстве случаев ребята, которые Вам устанавливают 1С, не утруждают себя заботой о Вашем удобстве. Я говорю о том, что в программе 1С предусмотрена возможность запускать 1С без необходимости что либо делать в окошке "Запуск 1С:Предприятие". Если в строке запуска 1С дописать несколько "золотых" слов, то после нажатия на ярлычке сразу запустится Ваша база. А если очень "постараться", то Вам даже не придётся выбирать пользователя и вводить пароль.

Для чего я Вам это рассказываю? Если всё же Вам повезло, и Ваш "программист" о Вас позаботился, дописав в нужное место нужные слова, то Вы не увидите окошка "Запуск 1С:Предприятия", и у Вас не будет возможности узнать расположение каталога базы данных 1С тем способом, о котором я Вам рассказываю. Но даже в этом случае у Вас есть надежда.

Дело в том, что при установке программы 1С:Предприятие в Главном меню системы Windows создаётся папка с ярлычками для запуска различных программ, имеющих отношение к программе 1С. Среди ярлычков данной папки есть и ярлычки, которыми запускается сама программа 1С:Предприятие. Абсолютно точно известно, что в ярлычках те "золотые" слова, о которых я упоминал выше, не прописаны. Поэтому, если Вы запустите программу 1С:Предприятие через ярлычок из Главного меню, то перед Вами обязательно возникнет окошко "Запуск 1С:Предприятия", и у Вас будет возможность узнать расположение каталога Информационной базы 1С.

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

Шаг 2: Выберите Информационную базу

В окошке "Запуск 1С:Предприятия" Вы видите список информационных баз, которые Вы можете открыть или запустить. Найдите среди всех строк этого списка именно ту информационную базу, расположение которой Вы хотите определить, и установите курсор мыши на эту строку.

Шаг 3: Прочтите адрес каталога Информационной базы

После того, как Вы выберите в списке информационных баз нужную Вам строку, в нижней части окошка под списком информационных баз Вы увидите текст. Этот текст обозначает адрес каталога, в котором находится Информационная база 1С.

Как зайти в каталог Информационной базы 1С?

После того, как Вы узнали расположение Вашей Информационной базы 1С, Вы можете зайти в каталог, в котором Информационная база находится. Чтобы это сделать, нужно открыть менеджер файлов. Скажу с полной уверенностью, что на Вашем компьютере есть встроенный файловый менеджер, который называется "Проводник Windows" или просто "Проводник". Но почему-то иногда люди не понимают меня, когда я говорю "Откройте Проводник" или "Зайдите в Проводник".

Если Вы также не понимаете, что такое "Проводник", тогда есть другой способ зайти в файловую систему Вашего компьютера. Вы можете открыть "Мой компьютер", дважды щёлкнув на одноимённом ярлычке на Рабочем столе. Запустится программа "Проводник Windows", только Вы об этом и не узнаете, поскольку в заголовке открывшегося окна будет написано "Мой компьютер".

После того, как Вы открыли программу "Проводник", Вам нужно пройти по адресу, который мы с Вами нашли в окошке "Запуск 1С:Предприятия". Возьмём для примера, что Ваша информационная база 1С находится по адресу "E:\1cv7\1sbukr". В переводе на человеческий язык это означает, что информационная база 1С находится на локальном диске "Е" в папке "1cv7" и затем в папке "1sbukr".

Если адрес к Вашей информационной базе 1С начинается с двух косых чёрточек (например, вот так " \\ Server\1cv7\1sbukr"), значит Ваша база 1С находится на сервере, и Вам её искать нужно в разделе "Сетевое окружение".

Как узнать каталог с информационной базой 1С?

Нередко бывают случаи, когда путь к информационной базе 1С достаточно длинный и содержит в себе много косых чёрточек. Это означает, что папка с базой данных 1С находится внутри большого количества вышестоящих папочек. И когда идёшь по пути к базе данных 1С, входя в каждую следующую папочку, бывает сложно распознать ту самую папку, в которой находится база данных 1С. Тогда нужно знать, когда необходимо остановиться.

Чтобы распознать каталог, в котором находится база данных 1С, нужно увидеть в ней такие папки:

Как правило, эти папки программа 1С создаёт в своём каталоге самостоятельно, и именно по ним можно определить каталог, в котором находится информационная база данных 1С. В большинстве случаев в каталоге базы данных 1С можно обнаружить все четыре указанные папки, но иногда Вы увидите лишь некоторые из них.

Что нельзя делать в каталоге информационной базы 1С?

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

  1. Нельзя удалять частично или полностью файлы базы данных 1С, если Вы увольняетесь и хотите отомстить Вашему директору.
  2. Нельзя удалять файлы из папки "SYSLOG", если Вы хотите стереть всю историю о Ваших действиях в программе 1С.
  3. Нельзя удалять файлы из папки "usrdef", если Вы хотите войти в программу 1С без пароля.
  4. Нельзя копировать базу данных, если Вы хотите унести на новое место работы информацию о Ваших старых клиентах.

Как умные администраторы защищают информационную базу 1С?

Поскольку в большинстве случаев информационная база 1С легко доступна, и только ленивый не сможет найти её местонахождение, то умные администраторы с целью защиты информации вверенной им базы данных используют такие методы:

  1. Создание архивной копии информационной базы данных 1С каждый день.
  2. Запрет на вход в базу данных для пользователя, который не авторизирован.
  3. Настройка работы с 1С в терминальном режиме.

С администраторами, обслуживающими информационные базы данных 1С, я могу поделиться секретом о том, как программным методом можно защитить базу данных от неавторизированного входа недобропорядочных пользователей. Раскрытие этого секрета Вы найдёте в статье "Защита от неавторизированного входа в 1С".

Резюме

В статье, посвящённой бухгалтерам, рассказывается о том, как быстро и легко определить расположение информационной базы данных 1С. Для тех, кто с трудом воспринимает текстовую информацию, даны визуальные образы выполняемых действий. Администраторам баз данных 1С, дочитавшим статью до конца, дано несколько рекомендаций о том, как защитить базу данных от несанкционированных действий злых пользователей.


&НаСервере
Процедура ЧтениеИЗаписьФайлов ()

// Любое сериализуемое значение (массив, структура, таблица значений, строки. ) можно сохранить в файл
НаборСимволов = Новый Массив ;
НаборСимволов . Добавить ( 125 );
НаборСимволов . Добавить ( "А" );
НаборСимволов . Добавить ( "99" );
НаборСимволов . Добавить ( "%" );
ЗначениеВФайл ( "D:\Symbol.txt" , НаборСимволов ); // работает только на &НаСервере

// Восстановление произвольных значений из файла
НаборСимволовИзФайла = ЗначениеИзФайла ( "D:\Symbol.txt" );
Сообщить ( НаборСимволовИзФайла [ 0 ]); // 125
Сообщить ( НаборСимволовИзФайла [ 1 ]); // А
Сообщить ( НаборСимволовИзФайла [ 2 ]); // 99
Сообщить ( НаборСимволовИзФайла [ 3 ]); // %

&НаКлиенте
Процедура ОперацииНадФайлами ( Команда )

// Создание переменных (имя и путь к файлу)
ПутьКФайлу_Test = "D:\Test.txt" ;
ПутьКФайлу_Copy = "D:\Copy.txt" ;

// Создание пустого файла
ТекстФайл = Новый ЗаписьТекста ();
ТекстФайл . Закрыть ();

// Проверка на существование файла
ТекстФайл = Новый Файл ( ПутьКФайлу_Test );
Если ТекстФайл . Существует () Тогда
Сообщить ( ПутьКФайлу_Test + " существует!" );
КонецЕсли;

// Копирование файла. Параметры: Какой файл копируем, Куда файл копируем
КопироватьФайл ( ПутьКФайлу_Test , ПутьКФайлу_Copy ); // Если файл существует, то перезапишет

// Перемещение файла. Параметры: Какой файл копируем, Куда файл копируем
ПереместитьФайл ( ПутьКФайлу_Test , ПутьКФайлу_Copy ); // Если файл существует, то перезапишет

// Поиск файлов в каталоге (функция возвращает массив значений)
// Параметры: Каталог поиска, Маска поиска, Поиск и в подкаталогах
МассивФайлов = НайтиФайлы ( "D:\" , "*.txt" , Ложь);
Для Каждого ТекФайл Из МассивФайлов Цикл
Сообщить ( "Найден файл: " + ТекФайл . ПолноеИмя );
КонецЦикла;

// Удаление файла
УдалитьФайлы ( ПутьКФайлу_Test ); // Если файл с параметром только для чтения, то будет ошибка

// Удаление файлов в каталоге по маске
// поиск в каталоге нерекурсивный
УдалитьФайлы ( "D:\" , "*.txt" ); // Если маски нет, то удалятся все файлы и сам каталог

// Получение имя временного файла
ПолучитьИмяВременногоФайла (); // Например, C:\Temp\H_kImX035.tmp
ПолучитьИмяВременногоФайла ( ".txt" ); // Например, C:\Temp\H_kImX035.txt

&НаКлиенте
Процедура ПолучениеИИзменениеАтрибутовФайла ( Команда )

ТекстФайл = Новый Файл ( "D:\Test.txt" );

// Чтение атрибутов
ТекстФайл . ПолучитьВремяИзменения (); // время последнего изменения файла
ТекстФайл . ПолучитьТолькоЧтение (); // проверяем атрибут только чтение
ТекстФайл . ПолучитьНевидимость (); // проверяем атрибут hidden (скрытность, невидимость)
ТекстФайл . Размер (); // размер файла в байтах

// Получение расширение файла из его пути
ТекстФайл . Расширение (); // .txt

// Получение имени файла без расширения
ТекстФайл . ИмяБезРасширения (); // Test

// Получение информации по пути файла - это файл или каталог
Если ТекстФайл . ЭтоКаталог () Тогда
// Это каталог
ИначеЕсли ТекстФайл . ЭтоФайл () Тогда
// Это файл
КонецЕсли;

// Изменение атрибутов
ТекстФайл . УстановитьВремяИзменения ( ТекущаяДата ()); // меняем время последнего изменения файла
ТекстФайл . УстановитьТолькоЧтение (Ложь); // меняем атрибут только чтение
ТекстФайл . УстановитьНевидимость (Ложь); // меняем атрибут невидимости

&НаКлиенте
Процедура ОперацииНадКаталогами ( Команда )

//Создание каталога (он может уже существовать)
СоздатьКаталог ( "D:\Catalog" );

//Создание подкаталогов
СоздатьКаталог ( "D:\Catalog\2020\1" );

// Проверка существования каталога
Каталог = Новый Файл ( "D:\Catalog" );
Если Каталог . Существует () Тогда
Сообщить ( "Каталог по пути D:\Catalog существует!" );
КонецЕсли;

// Удаление каталога (вместе с файлами и подкаталогами)
УдалитьФайлы ( "D:\Catalog" ); // Можно добавить максу

// Получение каталога временных файлов
КаталогВременныхФайлов (); // Например, C:\Windows\Temp

&НаКлиенте
Процедура ОперацииСВременнымХранилищем ( Команда )

// Временное хранилище позволяет передавать данные,
// которые иначе не передать (произвольного типа) между сервером и клиентом

// Сохранение произвольного значения (списка значений) во временном хранилище
СЗ = Новый СписокЗначений ;
СЗ . Добавить ( "Арбуз" );
СЗ . Добавить ( "Дыня" );
СЗ . Добавить ( "Яблоко" );
АдресВХранилище = ПоместитьВоВременноеХранилище ( СЗ );

// Чтение произвольного значения (списка значений) из временного хранилища
СЗИзХранилища = ПолучитьИзВременногоХранилища ( АдресВХранилище );
Если СЗИзХранилища = Неопределено Тогда
Сообщить ( "Значение по этому адресу из хранилища уже удалено!" );
Иначе
Сообщить ( СЗИзХранилища [ 0 ]); // Арбуз
КонецЕсли;

// Перезапись уже сохраненного значения (массив) во временном хранилище
НаборСимволов = Новый Массив ;
НаборСимволов . Добавить ( 125 );
НаборСимволов . Добавить ( "А" );
НаборСимволов . Добавить ( "99" );
НаборСимволов . Добавить ( "%" );

// Время хранения зависит от параметра "АдресВХранилище" функции ПоместитьВоВременноеХранилище
ПоместитьВоВременноеХранилище ( НаборСимволов , АдресВХранилище );

// Если адрес - уникальный идентификатор формы или существующий адрес в хранилище:
// Значение будет удалено после закрытия формы
ПоместитьВоВременноеХранилище ( НаборСимволов , ЭтаФорма . УникальныйИдентификатор );

// Если адрес - уникальный идентификатор, не являющийся уникальным идентификатором формы %
// Значение будет удалено после завершения сеанса пользвоателя
ПоместитьВоВременноеХранилище ( НаборСимволов , Новый УникальныйИдентификатор );

// Если адрес не указан:
// Значение будет удалено после очередного запроса сервера
ПоместитьВоВременноеХранилище ( НаборСимволов );

// Удаление значения из временного хранилища
УдалитьИзВременногоХранилища ( АдресВХранилище );

// Проверка является ли строка адресом во временном хранилище
Если ЭтоАдресВременногоХранилища ( АдресВХранилище ) Тогда
// Это адрес во временном хранилище
КонецЕсли;

&НаКлиенте
Процедура ПередачаФайлаСКлиентаНаСервер ( Команда )

ТекстФайл = Новый ЗаписьТекста ( "D:\Prostokvashino.txt" );
ТекстФайл . ЗаписатьСтроку ( "Кот Матроскин" );
ТекстФайл . ЗаписатьСтроку ( "Дядя Федор" );
ТекстФайл . ЗаписатьСтроку ( "Шарик" );
ТекстФайл . Закрыть ();

Завершено = Новый ОписаниеОповещения ( "ПослеПередачи" , ЭтотОбъект );

// Параметр УникальныйИдентификаторФормы - если не указывать - то файл будет удален после очередного запроса сервера
// если указать - то после удаления объекта формы
// Параметр Интерактивно (Истина) - дает пользователю выбрать файл самому
НачатьПомещениеФайла ( Завершено , , "D:\Prostokvashino.txt" , Ложь, ЭтаФорма . УникальныйИдентификатор );

&НаКлиенте
Процедура ПослеПередачи ( Результат , ХранимыйАдрес , ВыбранноеИмяФайла , ДопПараметры ) Экспорт

Если Результат Тогда
// Сохранение полученного адреса в реквизите формы (строка) - адрес файла в хранилище на сервере
АдресФайлаВХранилище = ХранимыйАдрес ;
Сообщить ( "Файл " + ВыбранноеИмяФайла + " передан на сервер и сохранён во временном хранилище. Адрес: " + ХранимыйАдрес );
Иначе
Сообщить ( "Ошибка передачи файла на сервер!" );
КонецЕсли;

Tool_1CD . exe C : \ Users \ Иван \ Documents \ 1c \ DemoSmallBusinessEduc \ 1Cv8.1CD - ExportAllToXML F : \ 1 С _ Аналитика \ db_xml \

Интерфейс программы Tool_1CD.exe

Техническое описание внутреннего устройства опубликовано мной в статье Краткое описание формата файлов *.1CD (файловых баз 1Сv8). Однако она достаточно сумбурна, плоха для восприятия, поэтому здесь я попытаюсь описать формат немного более популярно. Чтобы не было путаницы с термином «файл», сразу замечу, что когда я буду иметь в виду файл базы *.1CD, я буду говорить «файл базы», когда же я буду говорить про внутренние файлы, содержащиеся внутри базы, я буду употреблять просто термин «файл».


На самом нижнем уровне файл базы данных 1CD состоит из страниц размером 4 килобайт (0x1000).

По сути, весь файл базы состоит из массива четырехкилобайтных страниц. Каждая страница имеет свой номер (индекс). Здесь и далее каждый прямоугольник с красной рамкой обозначает одну страницу.

Файлы


На более высоком уровне находятся файлы. Файл состоит из одной или более страниц. У каждого файла есть ровно одна заголовочная страница, в которой размещается массив номеров страниц размещения. В каждой странице размещения, в свою очередь, находится массив номеров страниц данных. Заголовочная страница и страницы размещения – это служебные страницы, которые нужны только для хранения служебных данных (сигнатура, длина файла, версия) и для нахождения страниц данных. Собственно содержимое файла хранится в страницах данных.

Структура таблиц

Каждая таблица состоит из нескольких файлов:

  • файла описания таблицы DESCR;
  • файла записей DATA;
  • файла индексов INDEX;
  • файла данных неограниченной длины BLOB.


Как просмотреть базу данных 1С предприятие 8.3 - 1Cv8.1CD

Файл описания таблицы DESCR содержит текстовое описание таблицы – имя таблицы, состав полей и индексов. А также файл DESCR содержит номера файлов DATA, INDEX и BLOB. Таблица адресуется с помощью файла описания таблицы. Структуру файлов таблиц мы в данной статье рассматривать не будем, подробности можно узнать из моей статьи, ссылку на которую я приводил выше. Файл индексов может отсутствовать, если в таблице нет ни одного индекса. Файл данных неограниченной длины тоже может отсутствовать, если в таблице нет ни одного поля с данными неограниченной длины.

Адресация

База состоит из таблиц. Таблицы, в свою очередь, состоят из файлов. И наконец, файлы состоят из страниц. Адресом страницы является ее порядковый номер (индекс) в файле базы. Адресом файла является номер его заголовочной страницы. Адресом таблицы является адрес ее файла описания, а значит, номер заголовочной страницы файла описания. Т.е. о каком бы объекте мы бы не говорили – странице, файле или таблице, адресом объекта всегда является просто номер страницы.

Как запустить epf файл для выгрузки из 1С метаданных

for each fileName in FileList ( 'F:\1С_Аналитика\db_xml\*.xml' ) FROM '$(fileName)' ( XmlSimple , Table is [ Table / Fields / Field ] ) ;

После небольшой корректировки получаем отчет, можете скачать (но там ничего не понятно, нужна расшифровка метаданных): Таблицы и поля из 1С Предприятия 8.3 после обработки Tool 1CD.exe и выгрузкой в XML.xlsx

1С Script Builder реализован в виде внешней 1С-обработки и предназначен для автоматизированного проектирования скрипта загрузки данных из БД 1С версии 8.x в аналитическое приложение QlikView. Использование 1С Script Builder позволяет получить максимальную скорость загрузки данных и максимальную гибкость при формировании самых сложных запросов.

ВНИМАНИЕ! В коде последнюю запятую перед SQL надо удалить. Не знаю, как программными средствами убрать.

На вкладке LOAD Script For QlikView приведен загрузочный скрипт. Не забывайте про запятую, которую нужно убрать.

Читайте также: