Автоматическое открытие сменных носителей в TC
© Copyright |
Эта статья защищена авторским правом, и на её правку наложены ограничения. |
Как сделать, чтобы сменные носители такие как CD-, DVD- и Flash-диски открывались автоматически в Total Commander, а не в Проводнике?
Сделать это очень просто: в системе регистрируется новый тип файла и новый обработчик автозапуска, далее необходимо привязать обработчик к системным событиям вставки диска.
Содержание
Регистрация нового типа файла
Сначала зарегистрируем новый тип файла (я назвал его "FolderTC"). Делается это простым клонированием стандартного типа "Folder". Мы заменим в его описании только имя файла обработчика действия "open", и вместо стандартного Проводника пропишем туда путь к Total Commander. Ключи - на свой вкус.
Пример REG-файла, реализующего описанные действия:
REGEDIT4
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FolderTC]
@="Папка"
"EditFlags"=hex:d2,03,00,00
"TileInfo"="prop:Size"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FolderTC\DefaultIcon]
@="%SystemRoot%\\System32\\shell32.dll,3"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FolderTC\shell]
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FolderTC\shell\explore]
"BrowserFlags"=dword:00000022
"ExplorerFlags"=dword:00000021
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FolderTC\shell\explore\command]
@="%SystemRoot%\\Explorer.exe /e,/idlist,%I,%L"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FolderTC\shell\explore\ddeexec]
@="[ExploreFolder(\"%l\", %I, %S)]"
"NoActivateHandler"=""
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FolderTC\shell\explore\ddeexec\application]
@="Folders"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FolderTC\shell\explore\ddeexec\ifexec]
@="[]"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FolderTC\shell\explore\ddeexec\topic]
@="AppProperties"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FolderTC\shell\open]
"BrowserFlags"=dword:00000010
"ExplorerFlags"=dword:00000012
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FolderTC\shell\open\command]
@="\"c:\\dshell\\totalcmd.exe\" /O /T /R=\"%1\""
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FolderTC\shellex]
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FolderTC\shellex\ColumnHandlers]
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FolderTC\shellex\ColumnHandlers\{0D2E74C4-3C34-11d2-A27E-00C04FC30871}]
@=""
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FolderTC\shellex\ColumnHandlers\{24F14F01-7B1C-11d1-838f-0000F80461CF}]
@=""
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FolderTC\shellex\ColumnHandlers\{24F14F02-7B1C-11d1-838f-0000F80461CF}]
@=""
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FolderTC\shellex\ColumnHandlers\{66742402-F9B9-11D1-A202-0000F81FEDEE}]
@=""
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FolderTC\shellex\ContextMenuHandlers]
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FolderTC\shellex\DragDropHandlers]
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FolderTC\shellex\DragDropHandlers\{BD472F60-27FA-11cf-B8B4-444553540000}]
@=""
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FolderTC\shellex\PropertySheetHandlers]
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.FolderTC]
@="Snapins.FolderSnapin"
Врезка |
Обратите внимание: красным выделена строка, в которой указан путь к Total Commander и параметры открытия диска, заданные ключами TC. Путь, само собой, нужно вписать правильный, с ключами разобраться можно, прочтя справку TC. В данном случае (/O /T /R=\"%1\") диск будет открываться в уже запущенной копии TC, на новой вкладке в правой панели. |
Павел Дубровский |
Регистрация обработчика автозапуска
Далее зарегистрируем обработчик автозапуска "OpenTC" и назначим его выполнение на вставку диска. В нём нужно указать описание действия, которое будет показано в окне автозапуска (параметр Action), путь к иконке, которая будет отображаться напротив (DefaultIcon), тип файла, созданного выше (InvokeProgID), действие, которые необходимо выполнить (InvokeVerb) и название исполнителя обработчика (Provider). Ниже приведён пример REG-файла, выполняющего регистрацию обработчика автозапуска.
REGEDIT4
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\OpenTC]
"Action"="Открыть для просмотра файлов"
"InvokeProgID"="FolderTC"
"InvokeVerb"="open"
"Provider"="Total Commander"
"DefaultIcon"="C:\\dshell\\totalcmd.exe,-0"
Параметр "DefaultIcon" указываtn на файл с иконкой (путь и номер иконки в файле). Можно указывать исполняемые файлы, библиотеки и отдельные иконки.
Привязка созданного обработчика к событиям
Выполняем следующий REG-файл:
REGEDIT4
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\EventHandlers\AutorunINFLegacyArrival]
"OpenTC"=""
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\EventHandlers\GenericVolumeArrival]
"OpenTC"=""
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\EventHandlers\HandleCDBurningOnArrival]
"OpenTC"=""
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\EventHandlers\IomegaHipZipArrival]
"OpenTC"=""
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\EventHandlers\MixedContentOnArrival]
"OpenTC"=""
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\EventHandlers\PlayCDAudioOnArrival]
"OpenTC"=""
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\EventHandlers\PlayDVDMovieOnArrival]
"OpenTC"=""
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\EventHandlers\PlayMusicFilesOnArrival]
"OpenTC"=""
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\EventHandlers\PlayVideoFilesOnArrival]
"OpenTC"=""
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\EventHandlers\ShowPicturesOnArrival]
"OpenTC"=""
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\EventHandlers\VideoCameraArrival]
"OpenTC"=""
Врезка |
Отмечу, что обработчик добавляется не ко всем типам накопителей, а только к наиболее популярным, остальное можно поправить в реестре вручную, если вам это нужно. |
Павел Дубровский |
Всё! Подключаем флешки, вставляем диски и радуемся жизни!