Total Commander Knowledge Base

Есть вопрос?

Поищите ответ в самой большой русскоязычной базе знаний по Total Commander!

Total Commander: создание собственной инсталляции

WTF?

Эта статья содержит спорные, или несогласованные данные. Её необходимо обсудить.

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

Файловый менеджер Total Commander, ранее известный как Windows Commander, является, на мой взгляд, лучшим средством для работы с файлами (и далеко не только для этого!). Не менее известной среди многих продвинутых пользователей является программа FAR. Я не буду обсуждать здесь достоинства и недостатки обеих программ, поскольку эта тема уже неоднократно поднималась в различных дискуссиях среди их сторонников и противников. Лично я предпочитаю использовать Total Commander. Что же касается FAR, — один из последних плагинов для Total Commander даёт возможность подключать архиваторные модули от FAR, что позволяет теперь пользоваться его возможностями, не выходя из Total Commander.

Данная статья описывает то, каким образом можно создать свой собственный дистрибутив программы, содержащий все необходимые вам навороты, чтобы в будущем упростить себе жизнь в случае необходимости переустановки Total Commander.
Для выполнения данной операции вам потребуются, помимо прочего, архиватор WinRAR и любой архиватор, позволяющий создавать cab-архивы с вложенными папками внутри (например, PowerArchiver или Cabinet Manager. Входящий в состав Windows XP iexpress.exe тут, к сожалению, не подойдёт, поскольку он умеет запаковывать лишь содержимое одной папки и не видит подпапок).

Устанавливаем Total Commander

Последнюю версию этой замечательной программы можно всегда найти на сайте «производителя» — Кристиана Гислера из Швейцарии (www.ghisler.com). Установка программы «по умолчанию» уже позволяет воспользоваться большинством предложенных возможностей. Здесь надо отдать должное автору, создавшему своё произведение так, чтобы оно было максимально удобно в использовании.

Итак, для установки программы нужно всего лишь запустить исполнимый файл программы и ответить на простейшие вопросы в нескольких диалоговых окнах. Поскольку текущая цель установки программы — создать свою собственную инсталляцию, настроенную по своему вкусу, то в целях упрощения работы при начальной установке нужно задать расположение ini-файлов программы в папке самой программы (обычно это C:\wincmd\ или c:\totalcmd\). Все остальные настройки здесь — на ваш вкус. Лично я обычно никогда не включаю файлы других языков, кроме английского — хотя это и не требует много места, этими файлами я всё равно никогда не пользуюсь. Впрочем, здесь вы можете поступить так, как сами считаете нужным.

После установки программы вы можете настроить её по своему вкусу — например, добавить архиваторные плагины, создать цветовые настройки, добавить или удалить кнопки на панели инструментов, установить и настроить IrfanView, включить файлы поддержки русского языка — в общем, создать из программы свою собственную «рабочую среду». Для этого я рекомендую вам посетить сайт wincmd.ru — русскоязычный сайт по Total Commander, довольно часто обновляющийся и содержащий, кроме ссылок на саму программу, также множество аксессуаров — новейшие плагины, форум, советы и прочее. Этот сайт я настоятельно рекомендую вам добавить в «Избранное», а лучше — подписаться на рассылку этого сайта и всегда быть в курсе происходящего за счёт новостей. Если вам лень разбираться в том, что именно вам нужно, а что нет, вы можете посетить сайт totalcmd.nm.ru, где рассказывается, как установить Total Commander со всеми наворотами и без лишнего шума, а также можно скачать все плагины, все утилиты, все архиваторы и т.д. одним файлом. Главная цель для нас сейчас — создать для себя полностью настроенную и максимально удобную программу.

Я рекомендую вам установить IrfanView или другую программу, интегрируемую в качестве просмотрщика картинок в Total Commander непосредственно в папку программы, создав там для неё дополнительную подпапку (например, c:\wincmd\irfanview\). Впрочем, с версии 5.50 Total Commander прекрасно может обойтись без внешней программы просмотра графики - существует достаточное количество плагинов, делающих это, например Imagine или sgviewer. Суть в том, чтобы все программы, которыми вы пользуетесь только как наворотами к Total Commander, установить непосредственно в дерево папок Total Commander'а.

Готовим собственную инсталляцию

Теперь перейдём ко второму этапу — созданию собственной инсталляции программы, чтобы в будущем можно было устанавливать её «со всеми наворотами» одним кликом мыши.

Во-первых, откройте файл wincmd.ini, содержащий настройки программы, и внимательно отредактируйте его. Пути ко всем плагинам, работающим с Total Commander, можно сделать относительными — относительно исполнимого файла программы. То есть, к примеру, если плагины у меня лежат в папке c:\wincmd\plugins, а сама программа находится в c:\wincmd\, то я могу вместо полного пути плагина (c:\wincmd\plugins\...) писать относительный путь (plugins\...). Также, многие плагины и утилиты для TC поддерживают переменную окружения %COMMANDER_PATH%, появившуюся в версии 6.0. Это удобно, поскольку позволяет сохранить структуру конфигурации при установке программы по другому пути. Это относится к архиваторным плагинам (секция [packerplugins]), плагинам файловой системы (секция [FileSystemPlugins]) и плагинам встроенной программы просмотра (секция [ListerPlugins]). К сожалению, такой фокус не пройдёт с путём к программе IrfanView. Его придётся оставить абсолютным (проверка это не подтверждает - IrfanView прекрасно вызывается через %commander_path%). Ещё — если вы работаете под Windows NT/2K/XP, и среди каталогов «быстрого вызова» у вас есть папки, находящиеся в профиле пользователя (например, «Мои документы», «Temp» или «Рабочий стол»), то в секции [DirMenu] нужно заменить абсолютные пути переменными окружения (т.е., к примеру, вместо «C:\Documents and Settings\Alexey\My Documents» нужно написать «%UserProfile%\My Documents». Полный список всех установленных переменных окружения и соответствующие им значения вы можете узнать при помощи команды «set» без параметров, набранной в командной строке Windows. Кроме того, из файла можно удалить все ненужные строки, носящие временный характер (например, историю «путешествий» по папкам, историю командной строки, историю поисковых запросов и прочее). Суть всех этих изменений — максимально «оторвать» файл настроек Total Commander'a от физического расположения программы, оставив его при этом полностью работоспособным. Это позволит в будущем, при установке программы в другую папку, вносить минимум правки в файл настройки, или не трогать его совсем.

Во-вторых, откройте файл Tcuninst.wul, находящийся в папке с программой, и отредактируйте его. Этот файл содержит пути ко всем файлам, которые необходимо удалить при удалении программы. Заметьте, что все пути в этом файле являются относительными, либо выражены при помощи переменных окружения. Вам нужно дописать в этот файл по строчке для каждого нового файла, добавленного в папку Total Commander при установке «наворотов» в папку программы. Также, если вы желаете удалить какие-либо файлы вне папки Total Commander-а (к примеру, если вы создали ярлык на рабочем столе к программе TweakTC, и хотите удалить его при удалении TotalCommander-а), то нужно прописать пути к этим файлам, используя переменные окружения (в последнем примере это может быть «$desktop$\Тонкая настройка Total Commander.lnk» — обратите внимание на знаки $ вокруг слова desktop).

В-третьих, создайте где-нибудь временную папку для складывания дистрибутива — например, c:\temp\totcmd\cab. В эту папку скопируйте полностью содержимое папки программы. Затем удалите из этой папки файл справки (обычно totalcmd.hlp), файл с описанием клавиатурных сокращений (keyboard.txt) и файл register.wri. После чего создайте ещё одну папку, и распакуйте в неё исходный дистрибутив Total Commander. Для этого просто войдите в исполнимый файл дистрибутива, как в архив (нажмите на нём Ctrl+PageDown), затем выделите всё, что в нём содержится, и просто перенесите (распакуйте) в нужное место. Далее. В дистрибутиве войдите в архив Install.cab, и скопируйте из него папку Windows в нашу временную папку с нашим (не оригинальным) дистрибутивом.

Теперь вам нужно выделить всё содержимое подготовленной папки и сжать её в один cab-архив (для этого потребуется PowerArchiver или Cabinet Manager). Имя архива должно быть install.cab. Надеюсь, вы не забыли упаковать в архив также ключевой файл wincmd.key? :)
Затем подготовьте ещё одну папку, в которую поместите вышеупомянутые файлы totalcmd.hlp, keyboard.txt и register.wri. Будет весьма неплохо, если вы найдёте русские переводы этих файлов и скопируете именно их. Затем запакуйте все эти файлы в архив installr.cab.
Далее. Скопируйте только что созданные файлы install.cab и installr.cab в папку с распакованным оригинальным дистрибутивом программы (файл install.cab нужно будет записать поверх имеющегося).

Структура дистрибутива следующая: общее «мясо» программы лежит в файле install.cab, а то, что относится к конкретному языку — в файлах installe.cab (английский) и installd.cab (немецкий). Мы только что перезаписали основной архив, а также добавили архив с русскими ресурсами - installr.cab. Кстати, если вам не нужен файл с немецкими ресурсами - installd.cab, то его можно удалить. Теперь осталось заставить программу-инсталлятор увидеть то, что мы ей предлагаем! Открываем в блокноте файл install.inf и редактируем его. Я приведу ниже лишь изменённые секции, которые я сделал для своей инсталляции:

[Languages]
Count=2
Default=2
1=English
2=Русский (Russian),r
[LangName]
langdir=language
0=wcmd_eng
r=wcmd_rus

Немного ниже я удалил секцию [Installd] со всем её содержимым, и прописал вместо неё следующую секцию:

[Installr]
1=installr.cab,c
2=install.cab,c

(если вам нужны немецкие ресурсы, вы можете не удалять секцию installd, а просто дописать русскую секцию, или не прописывать ничего)
Далее. Изменения в секции DeskTop. Здесь вы можете прописать дополнительные иконки. Например, иконку для TweakTC:

[Desktop]
...
2=tweak\tweaktc.exe","Тонкая настройка Total Commander.lnk"

Наконец, в секции [ini] добавляем русскую секцию:

[inir]
1=wincmd.ini,configuration,languageini,wcmd_rus.lng
2=wincmd.ini,configuration,Mainmenu,wcmd_rus.mnu

Также, если нужно, удаляем все остальные секции, кроме [ini]. Не забудьте сохранить изменения в отредактированном файле.

Последние штрихи...

Созданный дистрибутив Total Commander уже полностью работоспособен. Вы можете сами убедиться в этом, запустив файл install.exe. Однако для полного счастья вы можете запаковать полученный дистрибутив WinRar-ом так, чтобы получился самораспаковывающийся архив — чтобы при запуске он «молча» распаковывался во временную папку и запускал там файл install.exe. Ещё можно назначить этому архиву оригинальную иконку от Total Commander (её можно вытащить любым редактором ресурсов).

Что в итоге получилось? Установив программу, мы получаем полностью работоспособный, русифицированный, и максимально навороченный Total Commander со всеми приладами! Ну разве не прелесть?!

Alexey N. Vinogradov

Смотри также