Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как программно создать собственный девай, типа как делает subst [Win95/98, WinME, NT4, Win2k, WinXP]


Poirot ©   (2003-05-04 16:50:00) 

Вобщем-то вот такая фигня... Надо сделать, чтобы появился мой девайс (напр как в проводнике лог диски) и я все обращения к нему обрабатывать бы мог... Мне любая инфа будет интересна, я знаю что такое описано в МСДН, но хотелось бы хоть какой нить примерчик...
Заранее спасио!!!


Poirot   (2003-05-11 18:46:00) [1]

Ну делфя тут просто к слову приходится... Я догодался, что в DDK врятли что-то на ней будет...


Alex Konshin   (2003-05-07 08:08:00) [2]

Примеры есть в DDK, но, опять-таки, Delphi там тебе не пригодится.


Poirot   (2003-05-07 08:05:00) [3]

Ну это-то я знаю!!! Мнебы полностью рабочий пример... Хотя... Попробую ручками... Но вы неразбегайтесь!!!


N142   (2003-05-06 10:01:00) [4]

Go to: MSDN, topic: Storage Devices


Poirot (Work)   (2003-05-06 09:41:00) [5]

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


Alex Konshin   (2003-05-06 05:29:00) [6]

Subst не создает девайс, она создает только символический линк.
Subst работеает через DefineDosDevice, но можно это сделать и напрямую через NT Native API.
Насколько я понимаю, то, что тебе тут предлагают c шеллом, тоже никаких девайсов не создает - просто будет объект в эксплорере.

А чтобы создать девайс нужно использовать DDK и Delphi тут не поможет. Конечно, можно и зайца научить курить, но вот сколько времени и зайцев ты на это убьешь?.

Все-таки что тебе нужно-то?


ZZ   (2003-05-05 16:47:00) [7]

Тебе надо или
http://www.akzhan.midi.ru/devcorner/articles/Windows-Shell-Namespace-Extension.html
или DefineDosDevice


dito   (2003-05-04 18:32:00) [8]

Сначала создай текстовый файл и там запиши:

REGEDIT4

[HKEY_CLASSES_ROOT\CLSID\{FD4DF9E0-E3DE-11CE-BFCF-ABCD1DE12345}]
@="My Personal Folder"

[HKEY_CLASSES_ROOT\CLSID\{FD4DF9E0-E3DE-11CE-BFCF-ABCD1DE12345}\DefaultIcon]
@="E:\\Icons\\MyIco.ico"

[HKEY_CLASSES_ROOT\CLSID\{FD4DF9E0-E3DE-11CE-BFCF-ABCD1DE12345}\InProcServer32]
@="shell32.dll"
"ThreadingModel"="Apartment"

[HKEY_CLASSES_ROOT\CLSID\{FD4DF9E0-E3DE-11CE-BFCF-ABCD1DE12345}\Shell]

[HKEY_CLASSES_ROOT\CLSID\{FD4DF9E0-E3DE-11CE-BFCF-ABCD1DE12345}\Shell\Open]

[HKEY_CLASSES_ROOT\CLSID\{FD4DF9E0-E3DE-11CE-BFCF-ABCD1DE12345}\Shell\Open\Command]
@="explorer /n /root, E:\\MyFolder"

[HKEY_CLASSES_ROOT\CLSID\{FD4DF9E0-E3DE-11CE-BFCF-ABCD1DE12345}\ShellEx]

[HKEY_CLASSES_ROOT\CLSID\{FD4DF9E0-E3DE-11CE-BFCF-ABCD1DE12345}\ShellEx\PropertySheetHandler]

[HKEY_CLASSES_ROOT\CLSID\{FD4DF9E0-E3DE-11CE-BFCF-ABCD1DE12345}\ShellEx\PropertySheetHandler\{FD4DF9E0-E3DE-11CE-BFCF-ABCD1DE12345}]

[HKEY_CLASSES_ROOT\CLSID\{FD4DF9E0-E3DE-11CE-BFCF-ABCD1DE12345}\ShellFolder]
"Attributes"=hex:50,00,01,00

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\explorer\MyComputer\NameSpace\{FD4DF9E0-E3DE-11CE-BFCF-ABCD1DE12345}]
@="My Folder"

Вместо E:\\Icons\\MyIco.ico укажи реальный путь к твоему файлу *.ico, потом вместо E:\\MyFolder твой каталог.

Переименуй файл в *.reg и запусти.

Enjoy.


Serious Sam   (2003-05-04 18:06:00) [9]

virtual drives:

open cmd.exe, type: SUBST /?


Наверх

Титульная страница Поиск, карта сайта Написать письмо