Создание объектов в "Мой компьютер"

Ответить
Аватара пользователя
defrag

Создание объектов в "Мой компьютер"

Сообщение defrag »

Подскажите пожалуйста, как можно в папке "Мой компьютер" создать ссылку на собственный объект?

Ничего необчного не нужно, нужна просто ссылка на одну папку. И чтобы она таким образом была видна в древовидном меню "Проводника" наряду с логическими дисками и "Панелью управления".



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

Re: Создание объектов в "Мой компьютер"

Сообщение Blast »

Было где-то, но с разбегу и сам не нашел Изображение

Пробуем делать так:

1) создайте идентификатор своей папки в ветках HKEY_CLASSES_ROOT\CLSID и HKEY_LOCAL_MACHINE\SOFTWARE\CLASSES\CLSID такого же вида как там уже существуют, например {912251E4-9C9C-44D9-8BDE-F66BAD1E3F3A} - здесь дайте волю фантазии, значение произвольное, а можете и этот взять.



2) В созданном подразделе создавайте строковый (REG_SZ) параметр по умолчанию со значением равным имени папки которое хотите чтоб отображалось:

HKEY_CLASSES_ROOT\CLSID\{912251E4-9C9C-44D9-8BDE-F66BAD1E3F3A}

Параметр: (По умолчанию)

Значение: Своя папка



3) Создайте в новом разделе подраздел DefaultIcon, а в нем строковый параметр со значением равным пути к *.ico файлу - файлу иконки папки:

HKEY_CLASSES_ROOT\CLSID\{912251E4-9C9C-44D9-8BDE-F66BAD1E3F3A}\DefaultIcon

Параметр: (По умолчанию)

Значение: c:\myicon.ico (например)



4) Затем еще подраздел InProcServer32 и в нем два также строковых параметра - по умолчанию и ThreadingModel, значение первого shell32.dll, значение второго Apartment:

HKEY_CLASSES_ROOT\CLSID\{912251E4-9C9C-44D9-8BDE-F66BAD1E3F3A}\InProcServer32

Параметр: (По умолчанию)

Значение: shell32.dll

Параметр: ThreadingModel

Значение: Apartment



5) Создайте подраздел Shell, в нем подраздел Open, а в этом Command, значение параметра по умолчанию = команда открытия вашей папки:

HKEY_CLASSES_ROOT\CLSID\{912251E4-9C9C-44D9-8BDE-F66BAD1E3F3A}\Shell\Open\Command

Параметр: (По умолчанию)

Значение: C:\Windows\explorer /n / root, C:\MyFolder

где C:\MyFolder - путь к вашей папке



6) После этого еще подраздел ShellEx, в нем PropertySheetHandler, а в нем свой идентификатор, то есть {912251E4-9C9C-44D9-8BDE-F66BAD1E3F3A}

здесь параметры вроде как не нужны:

HKEY_CLASSES_ROOT\CLSID\{912251E4-9C9C-44D9-8BDE-F66BAD1E3F3A}\ShellEx\PropertySheetHandler\{912251E4-9C9C-44D9-8BDE-F66BAD1E3F3A}



7) Еще один подраздел: ShellFolder, а в нем двоичный параметр (REG_BINARY) Attributes:

HKEY_CLASSES_ROOT\CLSID\{912251E4-9C9C-44D9-8BDE-F66BAD1E3F3A}\ShellFolder

Параметр: Attributes

Значение: hex:00,00,00,00



8) Теперь разместим папку в Моем компьютере и если надо на рабочем столе:

В ветке HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace\

создайте подраздел со своим идентификатором {912251E4-9C9C-44D9-8BDE-F66BAD1E3F3A} - это для отображения на рабочем столе



HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{912251E4-9C9C-44D9-8BDE-F66BAD1E3F3A} - для отображения в Моем компьютере



Вроде все, должно работать
Аватара пользователя
defrag

Re: Создание объектов в "Мой компьютер"

Сообщение defrag »

Огромное спасибо! В общих чертах понятно.



Получилось, но не совсем то, что мне хотелось...

Нужно, чтобы папка открывалась в текущем окне, а не новом (как при клике на локальных дисках), а также, чтобы эта папка была видна в левой древовидной панели, которая появляется после нажатия кнопки "Папки" и была раскрываемая (ну т.е. опять же как любой локальный диск).



Чтобы в этом списке папка появилась, я добился, изменив Attributes в ShellFolder на hex:00,00,04,f0 (подсмотрел у других папок), но проблема в том, что эта папка там только присутствует, но ее нельзя выбрать или "развернуть" в виде дерева...

Помогите пожалуйста и с этим, если возможно! Изображение



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



Спасибо заранее Изображение
Аватара пользователя
Blast

Re: Создание объектов в "Мой компьютер"

Сообщение Blast »

defrag

Боюсь, что больше ничем не смогу вас порадовать, по крайней мере мне не удалось добиться то чего вы хотите экспериментами...
Ответить

Вернуться в «Microsoft Windows 2000/XP»