Автоматическое открытие сменных носителей в TC

Материал из TCKB 2.0
Перейти к:навигация, поиск


© Copyright
Эта статья защищена авторским правом, и на её правку наложены ограничения.

Как сделать, чтобы сменные носители такие как CD-, DVD- и Flash-диски открывались автоматически в Total Commander, а не в Проводнике?

Окно автозапуска с пунктом "Открыть в Total Commander"

Сделать это очень просто: в системе регистрируется новый тип файла и новый обработчик автозапуска, далее необходимо привязать обработчик к системным событиям вставки диска.

Регистрация нового типа файла

Сначала зарегистрируем новый тип файла (я назвал его "FolderTC"). Делается это простым клонированием стандартного типа "Folder". Мы заменим в его описании только имя файла обработчика действия "open", и вместо стандартного Проводника пропишем туда путь к Total Commander. Ключи - на свой вкус.

Пример REG-файла, реализующего описанные действия:

Окно редактора реестра Windows, окрытое в ветке созданного типа файлов
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"=""


Врезка
Отмечу, что обработчик добавляется не ко всем типам накопителей, а только к наиболее популярным, остальное можно поправить в реестре вручную, если вам это нужно.
Павел Дубровский


Всё! Подключаем флешки, вставляем диски и радуемся жизни!

Алексей Выскубов