Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Корневой каталог расширения пространства имен обычно отображается проводником Windows в виде папки как в виде дерева, так и в представлениях папок. Чтобы обозреватель Windows отображал файлы и вложенные папки расширения, необходимо указать расположение корневой папки в иерархии пространства имен оболочки. Это расположение называется точкой соединения .
- использование виртуальных папок в качестве точек соединения
- использование папок файловой системы в качестве точек соединения
- открытие представления расширения пространства имен
Использование виртуальных папок в качестве точек соединения
Самый простой способ определить точку соединения расширения — сделать корневую папку вложенной папкой виртуальной папки системы. Этот тип точки соединения называется виртуальной точкой соединения. Папки desktop и "Мой компьютер" — это типичные расположения для виртуальных точек соединения, но можно также определить виртуальную точку соединения на удаленном компьютере или в папке "Мои сетевые места", Internet Explorerи панели управления.
Чтобы определить виртуальную точку соединения, создайте подраздел ключа, который представляет соответствующую виртуальную папку, и назовите его строковым представлением идентификатора класса расширения (CLSID). Зарегистрированный CLSID будет отображаться следующим образом.
HKEY_LOCAL_MACHINE or HKEY_CURRENT_USER
Software
Microsoft
Windows
CurrentVersion
Explorer
Virtual Folder Name
NameSpace
{Extension CLSID}
(Default) = Junction Point Name
имя виртуальной папки является одним из подразделов в следующей таблице.
| Местоположение | Имя виртуальной папки |
|---|---|
| Панель управления | Панель управления |
| Рабочий стол | рабочий стол |
| Вся сеть | Сетевое окружение\Вся сеть |
| Мой компьютер | МойКомпьютер |
| Мои сетевые места | Сетевое окружение |
| Удаленный компьютер | RemoteComputer |
| Файлы пользователей | UsersFiles |
Удаленные расширения необходимо инициализировать с помощью IRemoteComputer.
Использование папок файловой системы в качестве точек соединения
Существует два способа определения папок файловой системы в качестве точек соединения. Самый простой подход заключается в создании папки в соответствующем расположении и добавлении периода к имени папки, а затем строковой форме CLSID расширения. Только имя папки будет отображаться в проводнике Windows. В следующем примере создается точка соединения с отображаемым именем MyFolder.
MyFolder.{Extension CLSID}
Кроме того, можно определить обычно именованную папку как точку соединения.
- Создание папки только для чтения.
- Сделать папку системной путем вызова PathMakeSystemFolder.
- Поместите скрытый Desktop.ini файл в папку, содержащую CLSID расширения.
Desktop.ini — это стандартный текстовый файл, который можно добавить в любую папку для настройки определенных аспектов поведения папки. Общие сведения об использовании этого файла см. в разделе Настройка папок с помощью Desktop.ini. Чтобы определить папку как точку соединения, раздел [.ShellClassInfo] файла Desktop.ini должен содержать CLSID расширения следующим образом:
[.ShellClassInfo]
CLSID={Extension CLSID}
Открытие представления расширения пространства имен
Когда пользователь переходит в точку соединения, обозреватель Windows автоматически создает представление корневой папки. Вы также можете создать представление, явно запуская Explorer.exe с помощью CLSID расширения в качестве аргумента. Например, этот подход можно использовать для запуска представления расширения из контекстного меню или ярлыка. Например, чтобы запустить представление MyExtension, включающее представление дерева, можно использовать следующую командную строку.
%SystemRoot%\Explorer.exe /e,::{MyExtension CLSID}
Альтернативную командную строку можно использовать для запуска представления объекта в расширении. Эта функция будет полезна, например, для расширения, использующего представление папок, чтобы разрешить пользователям просматривать содержимое одного из нескольких сжатых файлов.
%SystemRoot%\Explorer.exe /e,::{MyExtension CLSID},objectname
Параметр имя объекта — это имя объекта, который необходимо просмотреть. Обозреватель Windows преобразует имя в соответствующий идентификатор PIDL и передает PIDL в метод объекта новой папки IPersistFolder::Initialize.
Заметка
Строка CLSID должна предшествовать паре двоеточий (::) или команда завершится ошибкой. Флаг косой черты (/e), используемый в двух примерах команд, показанных ранее, указывает проводнику Windows отобразить представление дерева. Флаг должен быть отделен от двух двоеточий запятой. Если представление дерева не требуется, опустите флаг /e и запятую.