Поделиться через


Схема описания библиотеки

Файлы описания библиотек — это XML-файлы, определяющие библиотеки. Библиотеки объединяют элементы из локальных и удаленных хранилищ в единое представление в Windows Обозреватель. Файлы описания библиотек соответствуют схеме "Описание библиотеки" и сохраняются как файлы *.library-ms.

Этот раздел состоит из следующих подразделов.

Общие сведения о схеме описания библиотеки

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

Схема описания библиотеки состоит из трех основных частей, описанных в следующей таблице:

Часть Описание
Общие сведения о библиотеке Сведения о библиотеке, такие как имя, владелец, версия, значок, которые Windows Обозреватель могут использовать при отображении библиотеки для пользователя.
Свойства библиотеки Одно или несколько свойств, описывающих библиотеку. Эти настраиваемые свойства относятся к библиотеке.
Расположения библиотек Один или несколько соединителей поиска, определяющих места хранения для включения в библиотеку. Каждое из этих расположений также может иметь уникальный набор свойств.

 

Файлы библиотеки в Windows 7 хранятся в известной папке FOLDERID_Libraries. По умолчанию папка FOLDERID_Libraries находится в папке %USERPROFILE%\AppData\Roaming\Microsoft\Windows\Libraries.

Управление версиями пространства имен

Версии файла описания библиотеки (*.library-ms) отслеживаются путем изменения пространства имен. Для Windows 7 формат файла имеет следующее пространство имен по умолчанию: https://schemas.microsoft.com/windows/2009/library.

Однако версии содержимого библиотеки отслеживаются с помощью <элемента version> в определенном файле описания библиотеки.

Пример файла описания библиотеки

Ниже приведен пример файла описания библиотеки, который определяет библиотеку для файлов документов.

<?xml version="1.0" encoding="UTF-8"?>
<libraryDescription xmlns="http://schemas.microsoft.com/windows/2009/library">
    <name>@shell32.dll,-34575</name>
    <ownerSID>S-1-5-21-379071477-2495173225-776587366-1000</ownerSID>
    <version>1</version>
    <isLibraryPinned>true</isLibraryPinned>
    <iconReference>imageres.dll,-1002</iconReference>
    <templateInfo>
        <folderType>{7d49d726-3c21-4f05-99aa-fdc2c9474656}</folderType>
    </templateInfo>
    <searchConnectorDescriptionList>
        <searchConnectorDescription publisher="Microsoft" product="Windows">
            <description>@shell32.dll,-34577</description>
            <isDefaultSaveLocation>true</isDefaultSaveLocation>
            <simpleLocation>
                <url>knownfolder:{FDD39AD0-238F-46AF-ADB4-6C85480369C7}</url>
                <serialized>MBAAAEAFCAAA...MFNVAAAAAA</serialized>
            </simpleLocation>
        </searchConnectorDescription>
        <searchConnectorDescription publisher="Microsoft" product="Windows">
            <description>@shell32.dll,-34579</description>
            <isDefaultNonOwnerSaveLocation>true</isDefaultNonOwnerSaveLocation>
            <simpleLocation>
                <url>knownfolder:{ED4824AF-DCE4-45A8-81E2-FC7965083634}</url>
                <serialized>MBAAAEAFCAAA...HJIfK9AAAAAA</serialized>
            </simpleLocation>
        </searchConnectorDescription>
    </searchConnectorDescriptionList>
</libraryDescription>

Элемент folderType (схема библиотеки)

Элемент iconReference (схема библиотеки)

Элемент isLibraryPinned (схема библиотеки)

Элемент libraryDescription (схема библиотеки)

Элемент name (схема библиотеки)

Элемент ownerSID (схема библиотеки)

Элемент property (схема библиотеки)

Элемент propertyStore (схема библиотеки)

Элемент searchConnectorDescription (схема библиотеки)

Элемент searchConnectorDescriptionList (схема библиотеки)

Элемент templateInfo (схема библиотеки)

Элемент version (схема библиотеки)

Схема описания соединителя поиска