Multi Commander

Download as pdf or txt
Download as pdf or txt
You are on page 1of 340

Multi Commander Documentation

Multi Commander Documentation

This PDF documentation is auto generated from the documentation located online at http://multicommander.com/docs/
The most updated version of the document is found in the webbased version online

Since this PDF is auto generated the formatting and layout can sometimes be faulty.
If you find some layout or other issues please contact author of MultiCommander (http://multicommander.com/contact) so
it can be corrected.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 1


Multi Commander Documentation

What Is Multi Commander


Multi Commander is a file manager for Windows and is a complete replacement for Windows Explorer. It provides an
efficient way of working with folders and files.
It uses the popular and efficient Dual-Pane layout, and is designed to be very keyboard friendly.
The mouse is fully supported, but its strength is that you can do everything with the keyboard alone. And that allows you to
work quickly and efficiently.

Multi Commander offers a wide range of features:

Supports both Windows Explorer-style and the popular Commander-style keyboard/mouse setup
Supports Drag & Drop
Copy/Move operations support filtering and plugins for special situations
Zip, 7Zip, Tar, Gz can be browsed as if they were folders
FTP, Portable Devices and the Registry are exposed in the file system
MultiRename tool with powerful rename operations
View text/logs files of ANY size with minimal memory usage (even if the files are many gigabytes in size)
Powerful, built-in scripting language (MultiScript) for added customization and to extend functionality
And very, very much more...

http://multicommander.com Generated : 10-Apr-2021 15:25:26 2


Multi Commander Documentation

System Requirements
Multi Commander works on most operating systems from Windows XP and Windows Server 2003 and newer.

Client Operating System : Windows 10, Windows 8.1, Windows 8, Windows 7, Windows Vista , Windows XP*, both 32bit
and 64bit
Server Operating System : Windows Server 2012/R2, Windows Server 2008/R2, Windows Server 2003, both 32bit and
64bit
Not all features are available on all operating systems. Note that from summer 2016, XP support is not support in latest
version. But latest version supporting XP is available for download.

Minimal Hardware : 32bit CPU with SSE2 support


Screen Resolution : A minimum resolution of 800x600 is recommended

http://multicommander.com Generated : 10-Apr-2021 15:25:26 3


Multi Commander Documentation

Download and Installation


Download
The official download location is http://multicommander.com/downloads. If you download it from another location make
certain that you really trust that source: you never know if somebody has manipulated the package.
This is especially important with the portable version since the package is only a .zip. Never download the portable version
from another source.

Installation
Full Installer (.exe)

The full installer is named MultiCommander_x64_([version]).exe or MultiCommander_win32_([version]).exe

You will be given two choices at the beginning of the installation: Single User or All users.

If you choose Single User the installer will, by default, select an installation location that is under your private account. By
doing this the installer will not require any administrator rights for the installation.

If you select All users the installer will, by default, select the shared Program Files folder as the install location. By
installing it here all user accounts on the machine will have access to the program.
This installation option requires administrator rights and the installer will restart itself and ask for admin permission if
needed.

All users that then run Multi Commander will get their own configuration. The configuration is always stored under the
user account, located under the Application Data Path.
Eg. C:\Users\<username>\AppData\Roaming\MultiCommander\Config\

Hint

By typing ":goconfig" in the command line field inside Multi Commander. The active Explorer Panel will then open at
the Multi Commander configuration folder

Portable Installer (.zip)

The portable installer is named MultiCommander_x64_Portable_([version]).zip or


MultiCommander_win32_Portable_([version]).zip

http://multicommander.com Generated : 10-Apr-2021 15:25:26 4


Multi Commander Documentation

The portable package is a zip archive that you only need to unpack to a folder. Just make sure that you keep the folder
structure from the zip package.
The portable version is the same as the installed version. The difference is that the portable version is configured to store
all settings and configuration in the folder that Multi Commander is installed in and run from.
The portable version does not save anything to the registry or to the user account folder. Everything is saved in the Multi
Commander folder. So the program must have write permissions to the folder that you start Multi Commander from.
This version is ideal to be installed to - and run from - a USB memory stick.

Note for WinPE Users

If you want to use Multi Commander in WinPE 4.0, and assuming your WinPE directory is X:,
copy the folowing files to the following directories before you build WinPE:

C:\Windows\System32\en-EN\oledlg.dll.mui -> X:\Windows\System32\en-EN\


C:\Windows\Syswow64\en-EN\oledlg.dll.mui -> X:\Windows\SysWOW64\en-EN\
C:\Windows\Syswow64\oledlg.dll -> X:\Windows\SysWOW64\
C:\Windows\System32\oledlg.dll -> X:\Windows\System32\

Contributed by user Ulrich; tested on Windows 10 PE, x86 and x64.

Installer Parameters
The installer accepts parameters that make it possible to run the installer silently or from a script.

MultiCommander_x64_(6.2.0.2147).exe /S /D=[Target Folder]


/PrevInstall=[Upgrade|Uninstall]
/InstallMode=[All|User] /Kill=[Ask|Auto|Abort]

/S - Silent
Do not show any UI or ask any questions
/D - Destination
The target where Multi Commander should be installed. If not specified the default path under the Program Files
folder is used.
Eg. /D="D:\MyPrograms\MultiCommander"
/PrevInstall - Previous Installation
What to do with existing installation. The options are "Upgrade" or "Uninstall"
Eg. /PrevInstall=Upgrade
/InstallMode - Installation Mode
Install Multi Commander for All users or current user. If "All" is set and install path is under a protected location
(eg. Program Files) make sure the installation is run as administrator. The options are "All" or "User"
Eg. /InstallMode=All
/Kill - Kill running instances of Multi Commander
When doing an upgrade Multi Commander may be running. Use /Kill=Auto to automatically kill any running
instance of MultiCommander
/Kill=Ask will show a dialog asking what to do. /Kill=Abort will abort the upgrade if Multi Commander is running.
Eg. /Kill=Auto
/CLEAR=Uninstall - Clear Uninstall Data
Clear all entries of Multi Commander from the Installed Programs locations in the registry
Eg. /CLEAR=Uninstall
/FORCEDEST="Path" - Force a new path
Force a new path even if a previous path was found in the registry
Eg. /FORCEDEST="D:\NewInstallPath\"

Example

# Upgrade Current
MultiCommander_x64_(6.2.0.2147).exe /S /D="C:\Bin\MultiCommander"

http://multicommander.com Generated : 10-Apr-2021 15:25:26 5


Multi Commander Documentation

/PrevInstall=Upgrade /InstallMode=All /Kill=Auto

http://multicommander.com Generated : 10-Apr-2021 15:25:26 6


Multi Commander Documentation

Upgrading
Update Tool
When Multi Commander starts it will check to see if a new version is available. If a new version is found, you will be asked
if you want to upgrade. If you select that option then the update tool is started. You can also do a manual check by either:
selecting Menu > Help > Check for Updates or by launching the update tool via Menu > Help > Launch
MultiUpdate.

The Update tools can also be started manually by running MultiUpdate.exe, located in the installation folder of Multi
Commander.

The Update tool will download the correct update package and then replace all necessary files. The tool works for both the
installed and portable versions.

When doing an upgrade be sure to close any running instances of Multi Commander before running the tool. The Update
tool cannot replace files that are in use.
If you have configured Multi Commander to exit to the system tray as an icon, then Multi Commander is not actually closed
if you just press the 'X' button. To fully close the program, right click on the tray icon and select Close Multi
Commander.

The update tool can (optionally) also download beta versions and has some advanced options that can be set if you have
issues with it.
Check the document page for MultiUpdate for more information about this tool.

Upgrade Using Installer


You can also upgrade using the installer package. If the installer detects that you already have Multi Commander installed
you will be given two options:
Upgrade installation or Uninstall installation.

If you select Upgrade it will replace all necessary existing files with the new, updated versions.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 7


Multi Commander Documentation

License
This version (1.0 - 11.x) of Multi Commander can be used for free (without paying for a license)
for personal, commercial and government use.

You are allowed to install this version of Multi Commander on multiple computers.

Multi Commander is not allowed to be used in situations and systems in which the failure of
the Multi Commander software could lead to death, personal injury or severe physical
or environmental damage.

Multi Commander and Mathias Svensson (the author of Multi Commander) are
not responsible for what you do with Multi Commander after you have installed it.
It is up to you to be careful. And always keep backups of your important data.

MultiCommander is software that is designed to copy/move and delete files.


Using this software without proper knowledge of what you are doing could result in the destruction and/or loss of data.
So always keep backups of important data.

Mathias Svensson reserves the right to change this license in a future version in any way.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 8


Multi Commander Documentation

Main Application Layout

1. Title Bar
2. Menu Bar
3. Toolbar Area
4. Command Line Field
5. Quick Launch Bar
6. Presentation Area
7. Tab Area
8. Button Panel / Log Panel
9. Status Bar

1. Title Bar
The topmost line of the MultiCommander window is the Title Bar; it shows the version number and build number of
MultiCommander.

You can also add custom text to be shown at the beginning of the title. This is done using the -T command line parameter
when invoking MultiCommander.exe

Hint

MultiCommander.exe -T=DEV.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 9


Multi Commander Documentation

2. Menu Bar
The second line (when visible) shows the Menu Bar. The default entries are: File, Edit, View, Configuration,
Extensions, Tools and Help. You can create and modify additional menus and entries for user-defined commands by
following the procedures outlined in Create User Defined Commands.
Clicking on any menu opens a list of submenus, as described in the Menu Bar detail section here.

Hint

The display of the Menu Bar can be toggled by the shortcut key Ctrl+M.

3. Toolbar Area
The Toolbar Area contains buttons for some of the most-used commands that you find in the menu. It also contains Buttons
for available drives to open in the Explorer Panel. The Command Line Bar and the Quick Launch Bar are also here.

Read more about


Command Line Bar
Quick Launch Bar
Drive Bar
File Commands Bar

4. Command Line Field

5. Quick Launch Bar

6. Presentation Area
The next part of the display is the presentation area. This displays one or more GUIs that are controlled by extensions
and plug-ins, such as the Explorer Panel and File Search.

7. Tab Area
The tab can be drag and dropped to either side. And you can also right click on a tab for additional commands. like Close
tab, Duplicate Tab, Load Tabs, Save tabs and more. Read more about the Panel Tabs.

8. Button Panel / Log Panel


Under the main presentation area there is, by default, a button panel. This panel can be toggled on and off with Ctrl+B.
You can also have a Log Panel shown here. By default this is not visible, but it can be toggled by pressing Ctrl+L.

Read more about the Button Panel.

Hint

Toggle Button Panel on/off with Ctrl+B.


Toggle Log panel on/off with Ctrl+L

9. Status Bar
The status bar shows various pieces of status information. For example, when copying files you will see the progress of the
copy process here

http://multicommander.com Generated : 10-Apr-2021 15:25:26 10


Multi Commander Documentation

Menu Bar

The default menu entries are: File, Edit, View, Configuration, Extensions, Tools and Help.
You can add additional menus and menu entries for user-defined commands by following the procedures outlined in Create
User Defined Commands.
Clicking on any menu brings up a submenu, as described below.

Menus
Menu - File
Menu - Edit
Menu - View
Menu - Configuration
Menu - Extensions
Menu - Tools
Menu - Help

Hint

The display of the Menu Bar can be toggled by the shortcut key Ctrl+M.

Menu - File

displays a submenu of File-related items.

New
displays a submenu where you can create a new:

Multi Commander window


Multi Commander window (as Administrator)
Explorer Panel tab (in the active panel)

http://multicommander.com Generated : 10-Apr-2021 15:25:26 11


Multi Commander Documentation

Tab
displays a submenu where you can:

Close the current tab (in the active panel)


Close all tabs but this one (in the active panel)
Duplicate a tab
Move a tab

This displays another submenu where you can:

1. Swap the location of the left/right panels


2. Move the active panel to the other side
Lock a tab

View file
allows you to view the selected file using the MultiDataViewer.

Edit file
allows you to edit the selected file(s) using your associated file editor (Notepad is the default).

Copy...
displays the Copy files and folders dialog. (See Copy/Move Operations.)

Copy (Quick)
creates a copy of the file/folder in focus in the same folder with a ".bak" extension added. Only the file/folder in focus is
copied, even if there are other files/folders selected. (Default shortcut key is Shift+F5).

Move...
displays the Move files and folders dialog. (See Copy/Move Operations.)

Delete...
displays the Delete Files dialog. (See Delete Operations.)

Pack files...
displays the Pack files dialog. (See Pack Files.)

Unpack files...
displays the Unpack archives dialog (but only if the file in focus is an archive.)

Test packed files...


tests the selected packed files for certain types of errors.

Find Files...
displays the Find Files dialog.

Exit
closes Multi Commander.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 12


Multi Commander Documentation

Menu - Edit

displays a submenu of Edit-related items.

Cut
Designates the currently selected files/folders/text to be moved when Paste is selected.

Copy
Designates the currently selected files/folders/text to be copied when Paste is selected.

Paste
Copies or Moves the files/folders/text that were previously designated by Edit->Copy or Edit->Cut.

Delete
Deletes selected text.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 13


Multi Commander Documentation

Select
displays the Expand Selection dialog.

Unselect
displays the Shrink Selection dialog.

Select All
selects all files and folders in the active panel.

Unselect All
deselects all files and folders in the active panel.

Invert Selection
inverts all selections in the active panel, i.e. switches all selected files and folders to unselected, and all unselected files
and folders to selected..

Select Same Extension


selects all files in the active panel having the same extension as the file currently in focus.

Unselect Same Extension


deselects all files in the active panel having the same extension as the file currently in focus.

Select Same Name


selects all files in the active panel having the same filename as the file currently in focus.

Unselect Same Name


deselects all files in the active panel having the same filename as the file currently in focus.

Save Selection to Memory


saves a list of the currently selected files/folders. The list is saved internally, and will be lost if Multi Commander is closed
before the list is reloaded.

Load Selection from Memory


selects all files/folders designated in the currently saved selection list.

Save Selection to file...


displays a Save As dialog to let you designate a file to which to save a list of the currently selected files/folders.

Load Selection from file...


displays an Open dialog to let you choose a file from which to load a list of files/folders to select. The list can be one that
was previously saved, or a manually-created list of file and folder specifications.

Compare folders should compare files


is a checkbox option that toggles whether compare folders functions should compare the files within the folders. This
option will be applied to all folder comparison functions.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 14


Multi Commander Documentation

Compare folders should compare folders


is a checkbox option that toggles whether compare folders functions should compare the subfolders within the folders.
This option will be applied to all folder comparison functions.

Compare folders, Select Newest/Missing


compares the folder open in the active panel with the one open in the opposite panel, and selects (depending on the
current options) any files/folders in either panel that are either missing from the opposite panel, or have the same name
as and are newer than the file/folder in the opposite panel.

Compare folders, Select Missing


compares the folder open in the active panel with the one open in the opposite panel, and selects (depending on the
current options) any files/folders in either panel that are missing from the opposite panel.

Compare folders, Select Newest


compares the folder open in the active panel with the one open in the opposite panel, and selects (depending on the
current options) any files/folders in either panel that have the same name as and are newer than the file/folder in the
opposite panel.

Compare folders, Select Duplicates


compares the folder open in the active panel with the one open in the opposite panel, and selects (depending on the
current options) any files/folders in either panel that are duplicates.

Compare folders, Select Selected


compares the folder open in the active panel with the one open in the opposite panel, and selects (depending on the
current options) any files/folders in either panel that are selected in both panels.

Compare folders, Advanced ...


compares the folder open in the active panel with the one open in the opposite panel, and selects (depending on the
combination of options selected) any files/folders in either panel that meet the comparison options. Comparisons can be
done using any combination of Date, File size and File content. There is a dropdown of comparison Profiles to make the
selection of commonly-used comparisons easier to select.

Menu - View

displays a submenu of View-related items.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 15


Multi Commander Documentation

Split size
displays a dialog that lets you choose one of the following split-sizes for the two explorer panels: 0/100, 25/75, 50/50,
75/25, 100/0.

Full pane width


expands the currently active panel to full pane width. (Shortcut key is Ctrl+F11.)

Log window
is a checkbox option that toggles showing the Log window. (Shortcut key is Ctrl+L.)

Button window
is a checkbox option that toggles showing the Button window. (Shortcut key is Ctrl+B.)

Menu bar
is a checkbox option that toggles showing the Menu bar. (Shortcut key is Ctrl+M.)

Toolbars
shows a list of selectable toolbars. Some of these are not really separate lines, but are subsections of the tool list line.
Uncheck the boxes of those you don't wish to have visible:

Command Line Bar

selects whether to display the Command Line toolbar. When present, this is a separate line. The tools shown here
are Back, Forward, History, Command Line, and user-selected tools (if any). (For details, see Command Line
Bar.)

Standard

selects whether to show the standard tools in the Tool Bar. These are Refresh, Cut to Clipboard, Copy to
Clipboard, Paste from Clipboard, and Split. (See Standard Command Bar.)

File Commands

selects whether to show the file command tools in the Tool Bar. These are Copy Selected Files, Move Selected
Files, Delete Selected Files, Pack Selected Files, Unpack Selected Files, View File, Edit File, Rename
Current File/Folder, Calculate folder size, Select, Unselect, and Copy the file/folder pathname to the
clipboard. (See File Commands.)

Drives

selects whether to show the drives that are present on the system. (For details on the use of this subset, see Drive
Bar.)

Vertical layout
toggles between vertical split and horizontal split.

Refresh
refreshes the display. (Shortcut key is F2 for Commander style, F5 for Windows Explorer style.)

Stop
stops the current activity. (Shortcut key is Esc.)

http://multicommander.com Generated : 10-Apr-2021 15:25:26 16


Multi Commander Documentation

Explorer Panel
selects a format or mode to configure for the Explorer Panel. The choices are

1. Date format

choices are: Standard, Week days, or File age.

View Mode

choices are: Details, List, or Thumbnail List.

Menu - Configuration

displays a submenu of Configuration-related items.

Manage Plug-ins and Extensions


displays the Extension Manager dialog. This lets you manage Application Extensions, File System Plug-ins, File
Operations Plug-ins and File Properties Plug-ins.

Manage Aliases
displays the Alias Manager dialog. This lets you create and modify aliases. (See Managing Aliases.)

File Type Setup...


displays the File Type Setup dialog. This lets you configure viewers/editors/launchers to be used for various file types.
(See File Type Setup.)

Button Editor
displays the Button Editor dialog. This lets you configure the Button Panel. (See Using The Button Editor To Customize
The Button Panel.)

http://multicommander.com Generated : 10-Apr-2021 15:25:26 17


Multi Commander Documentation

User Defined Commands


displays the User Commands dialog. This lets you define or modify User Commands. (See Create User Defined
Commands.)

Menu Customization
displays the User Menu Editor dialog. (See User Menu Editor).

Keyboard Customization
displays the Customize Keyboards Setup dialog. This lets you modify the keyboard shortcut commands in the menu. (See
Customize Keyboard Shortcuts.)

Quick Look'n'Feel Setup...


displays the Quick Look'n'Feel Setup dialog. This lets you quickly change the look and feel of the file manager. (See
Change To Windows Explorer Look and Feel.)

Toggle Button Panel Wizard Mode


is a checkbox option that toggles whether the Button Panel is in Wizard mode. (See Button Panel - Wizard Mode.)

Core Settings...
opens a new tab that lets you modify the Multi Commander Core Settings. (See Core Settings.)

Explorer Panel Settings...


opens a new tab that lets you modify the Multi Commander Explorer Panel Settings. (See Explorer Panel Settings.)

Menu - Extensions

displays a submenu of Extensions-related items.

File Search
displays the Find Files dialog. (See File Search.)

Language Editor
opens a new tab that lets you edit various Multi Commander messages.

MultiRename
displays the MultiRename dialog. (See MultiRename.)

File Checksum
opens a new tab that lets you verify checksums. (See File Verifier (CRC/SFV/MD5).)

http://multicommander.com Generated : 10-Apr-2021 15:25:26 18


Multi Commander Documentation

Menu - Tools

displays a submenu of Tools-related items.

Calculate folder size


calculates folder sizes. (See Calculate Folder Size.)

Change Properties (Attributes/Time)


displays the Change attributes and/or time dialog. This allows you to change the properties and date/time of the
selected files and folders.

Create folder...
displays the Create new folder dialog.

Rename current file/folder


lets you modify the name of the file or folder that is currently in focus.

Correct folder date/time...


displays the Correct Folder Date/Time dialog. (See Correct Folder Date/Time.)

Find opened/locked Files...


displays the Find opened/locked Handle/File/DLL dialog. (See Find Opened/Locked Files.)

Windows Control Panel


displays a submenu of commonly-used Windows Control Panel applets.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 19


Multi Commander Documentation

To Clipboard
displays a submenu of items that can be copied to the clipboard:

1. Files/Folders path and name


2. Files/Folders name
3. Files/Folders path
4. File version
5. File/Folder Date
6. Name, Size, Date
7. Path, Name, Size, Date
8. Comma-separated List
9. Comma-separated list, with full paths
10. File content as text

Special
lets you select the oldest duplicates based on version in the filename.

Rename
displays a submenu of renaming styles:

1. Uppercase
2. Lowercase
3. Capitalize
4. Replace text in name
5. Similar name, different extension

Text Tools
displays a submenu of text conversions:

1. To Unix format (LF)


2. To Windows Format (CRLF)
3. To Mac format (CR)
4. Tab to Space
5. Reformat XML to Structured
6. Reformat XML to Compact
7. Sort Lines...
8. Find and Replace...

Encoding / Decoding
displays a submenu of text encoding/decoding options:

1. Base64 Encode
2. Base64 Decode

File Security
displays a submenu of file security options:

1. Take Ownership (Admin)


2. Remove all file/folder permissions (Admin)
3. Add file/folder permissions for user (Admin)

File Links
displays the Create Links to File/Folder dialog.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 20


Multi Commander Documentation

Picture Tools
displays a submenu of Picture tools:

1. Convert picture format...


2. Rotate picture...
3. Resize picture...
4. Strip EXIF Metadata from pictures
5. Export EXIF Metadata from pictures
6. Adjust EXIF Date/Time Information...

For more information, see Picture Tools.

Audio Tools
displays a submenu of Audio tools:

1. Remove Metadata Tags from audio files


2. Export Metadata from audio files
3. Show MP3 File Information

For more information, see Audio Tools.

Video Tools
displays a submenu of Video tools:

1. Scan for Media Information


displays the Scan Media Information dialog, which lets you scan the selected files/folders for media information.
For more information, see Video Tools.

Menu - Help
displays a submenu of Help-related items.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 21


Multi Commander Documentation

Multi-Script Debugger...
opens an editing and debugging environment for the testing, running and debugging of MultiScripts. (This tool is
functional but still in the Beta stage of development.)
See a screenshot here.

Multi Commander Homepage...


displays the Multi Commander Homepage in your default web browser.

Online Documentation...
displays the Multi Commander Documentation web page in your default web browser.

Online Support forum...


displays the Multi Commander Support Forum web page in your default web browser.

Report an Issue...
displays the Multi Commander Send Issue Report web page in your default web browser.

Send Feedback...
displays the Send Feedback dialog so that you can submit feedback about Bugs, Problems or Feature requests.

Donate...
Opens a web page in your default web browser where you may support the development of Multi Commander by donating.

Multi Commander on facebook...


Opens the Multi Commander Facebook web page in your default web browser.

Go to...
displays a submenu of places you can Go To:

1. Multi Commander Config folder


2. Multi Commander Log folder
3. Multi Commander Application folder

Backup/Restore ...
displays the Backup/Restore dialog, where you can backup or restore your Multi Commander configuration.

Cleanup user data...


displays the Cleanup leftover User Data dialog.

Check for Updates


checks to see if an updated version of Multi Commander is available.

Launch MultiUpdate...
prompts for execution of the MultiUpdate plug-in, which checks for the current version of Multi Commander. (See
MultiUpdate.)

Tip of the Day...


opens the Tip of the Day window, where you can see the current Tip of the Day, and cycle through the complete set.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 22


Multi Commander Documentation

Register...
opens the Multi Commander - Register License dialog.

About Multi Commander


opens the About Multi Commander window. This contains Build information and links to Support websites.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 23


Multi Commander Documentation

Standard Command Bar


The Standard Command Toolbar is a subset of the toolbar that is shown if the corresponding checkbox in View->Toolbars
is checked. It has a number of standard commands the extension can support. If the extension in the currently active panel
supports any if these commands, the commands will be enabled; otherwise they are disabled.

1. Refresh
Button 1 refreshes the content in the active panel.

2. Cut
Button 2 cuts the selected content to the clipboard.

3. Copy
Button 3 copies the selected content to the clipboard.

4. Paste
Button 4 pastes the clipboard into the active panel.

5. Resize Panel
Button 5 provides a dropdown list from which you can select how you want to split the panel. Clicking on the icon itself
reverts to a 50/50 split.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 24


Multi Commander Documentation

File Commands

The File Commands toolbar contains tools related to working with files. Most of them only work if the active panel is an
Explorer Panel. The toolbar is displayed whenever View->Toolbars->File Commands is checked. and it can also be
disabled altogether in Explorer Panel settings. (See Explorer Panel Settings).

1. Copy
Displays a dialog for launching a Copy operation. (See Copy/Move Operations)

2. Move
Displays a dialog for launching a Move operation. (See Copy/Move Operations)

3. Delete
Launches a Delete operation. (See Delete Operations)

4. Pack Selected Files


Opens the Pack Files dialog. (See Pack Files.)

5. Unpack Selected Files


Opens the Unpack Archives dialog. (See Unpack Files.)

6. Create Folder
Show the Create folder dialog.
Right click and a popup menu with a list of folders to create is shown. This list can be customized by selecting
"Customize..."/p>

7. View File
Opens the current file to be viewed in the default viewer for that file type. (See File Type Setup)

8. Edit file
Opens the current file to be edited in the default editor for that file type. (See File Type Setup)

9. Find Files
Find Files

10. Calculate Folder Size


Causes folder sizes to be calculated. (See Calculate Folder Size)

11. Rename Current File/Folder


Renames the current file or folder using the operating system renaming protocol.
Right click and a popup menu with Quick Rename options opens.

12. Expand selection


Lets you specify a filter for selecting additional files/folders.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 25


Multi Commander Documentation

Right click and a popup menu with some dynamic selection items opens (built from items shown in the current path).
The entries of a pre-defined list of types are also shown in this list. They can be changed, or more can be added, by
selecting "Customize..."

13. Shrink selection


Lets you specify a filter for de-selecting files/folders.

Right click and a popup menu with some dynamic selection items opens (built from items shown in the current path).
The entries of a pre-defined list of types are also shown in this list. They can be changed, or more can be added, by
selecting "Customize..."

14. Copy PathName


Copies the file/folder pathname to the clipboard.

Right click and a popup menu opens with commands for other copy path alternatives.

15. Show/Hide Hidden and System files


Show or hide hidden and system files.

Right click and a popup menu opens with options to only show/hide hidden files or show/hide system files.

16. File Coloring


A popup menu opens where Rule-based file coloring can be configured.
It is possible to enable/disable file coloring from the menu. A list of all the file coloring profiles is also shown so the file
coloring profile to use can be easily changed.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 26


Multi Commander Documentation

Drive Bar

The Drive toolbar is the rightmost subset of the toolbar, and is displayed whenever View->Toolbars->Drives is checked
and it is enabled in the Explorer Panel Settings.

The Drive toolbar shows a list of drives that the user can choose from. It also show common folder locations like desktop,
pictures, download and more. All the virtual filesystems (like REG, FTP: WPD: ) are also here.
Clicking on one of the icons causes the current tab to switch to that location.

You can also right click on a drive button to show the Windows Shell Context Menu (the "Right-click" menu) for that drive.

Add more buttons


It is possible to configure which of the special folders and virtual devices to show on the drive toolbar.

To configure the drive toolbar go to Menu -> Configuration -> Explorer Panel Settings and click on the Layout tab

If you enable all of them the toolbar might grow very long and the system will try to auto-rearrange it to its own line if it
does not fit in the Window.
On some systems this causes the toolbar area to rearrange itself incorrectly and may look unsightly.
This can be avoided if, in settings, you allow the drive toolbar to be placed on its own line.

Enabling this option causes the drive toolbar to be placed on its own line and, if there are many drive buttons, they will fit
better.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 27


Multi Commander Documentation

Drivebar Inside Explorer Panel


It is also possible to place the drivebar inside an Explorer Panel.
This is enabled by checking the option "Drive buttons" under the "Explorer Panel toolbars" section

There will now be a drive buttons bar inside the Explorer Panel.

note that the drive bar inside an Explorer Panel is limited in that it does not support showing special folders or virtual
devices.

Other Configuration
If you have a drive bar active (application global or inside an Explorer Panel) you can remove the Device Dropdown list.
However, if you are a user who likes to use hotkeys for fast access then this is not recommended.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 28


Multi Commander Documentation

Command Line Bar


The fourth line in the Main Application Layout is the Command Line Bar, shown below. This toolbar can be removed from
the display by unchecking the check box in View->Toolbars.

The buttons are enabled if the active extension (panel) supports back/forward/history. If the active extension does not
support these commands, the buttons are disabled.

1. Back
Button 1 tells the extension to go back one step. If this button is held down for 2 seconds, a list of previous locations that
you can select from is displayed. If the active extension is an Explorer Panel it will go back to the previously visited path.

2. Forward
Button 2 tells the extension to go forward one step. This can only be done if you have previously gone backwards. If this
button is held down for 2 seconds, a list of all available forward locations is shown.

3. History
Button 3 shows a list of the previous 40 locations that the currently active extension has visited. From this list a previous
location can be accessed quickly.

The default keyboard shortcut for Back is Alt+Left Arrow, Forward is Alt+Right Arrow and History is Alt+Down Arrow.
In the Explorer Panel the Back and Forward mouse button can also be used if your mouse supports these buttons.

4. Favorites Window
The button shown as a star at the left end of the Command Line. Clicking the star button brings up the Favorites window.
This window contains three sections:

Quick Paths (F1)


Quick Paths are paths that can be selected by pressing Ctrl+num. There can be only 10 Quick Paths defined.

Favorites (F2)
Favorites are paths that can be defined and stored as a list. To select a Favorite path, simply select it and press
Enter.

Web (F3)
Web paths are URLs that can be defined in a list of web addresses. To select a web address, simply select it and
press Enter.

5. Command Line field


The Command Line field (number 5) allows you to enter commands for the active extension or plug-in. If the extension or
plug-in does not handle the command it is sent to Windows to handle. If the command is a filename and is sent to Windows
to be handled, Windows will launch that program. If the command is a URL, a browser is opened for it.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 29


Multi Commander Documentation

If you type a command for Windows to launch, you can insert a "*" in front of it to run it as Administrator. For example,
"*cmd" will launch the command prompt as Administrator.

The Explorer Panel supports commands such as the command prompt's "cd" command. Thus if an Explorer Panel is
currently active you can type "cd .." , "mkdir myfolder" and the Explorer Panel will create this folder.

Special Internal Commands


The Command Line field supports some special internal commands:

Start an external program as administrator, e.g. "*cmd" starts an admin


*<external program>
prompt at the current path

Normally Multi Commander will go to a path if it is entered. Typing ! in


!<cmd / path> front of the path will force the path/cmd to be opened by the Windows
Shell

cd <path> Change directory

mkdir <path> Create a folder

cf <file> Create a new, empty file

alias <name>=<expanded to> Create a new alias, eg. "alias d=d:\bin"

alias2 <name> Create a new alias for the current path, eg. "alias2 d"

Change whether Multi Commander is always on top of other windows.


topmost 1
Use 1 to enable, any other value to disable

Used to add support for another language so that you can create new
addlanguage
translations

importcmd Used to import a script command quickly

dbg folog Enable full file operations logging

dbg fslog Enable full file system logging

dbg applog Enable full application logging

Save all autoload settings for all tabs. This is the same save as is done
:save
before exit

:showhidden Change the settings to show all system and hidden files and folders

:hidehidden Change the settings to hide all system and hidden files and folders

:goapp Go to the path from which Multi Commander is started

Go to the path under the Windows user account where Multi Commander
:userdata
saves data

:gomcreg Go to the registry path used by Multi Commander

:golog Go to the path where Multi Commander stores its log files

:goconfig Go to the path where Multi Commander reads/writes its settings files

Go to the location where you have your DropBox folder (if you have
:box
DropBox installed)

Go to the location where you have your SkyDrive folder (if you have
:sky
SkyDrive installed)

Go to the
location
where you
have your
:one OneDrive
folder (if
you have
OneDrive
installed)

http://multicommander.com Generated : 10-Apr-2021 15:25:26 30


Multi Commander Documentation

:desk Go to the desktop

Go to the Windows Download folder (not available on Windows XP/Server


:dl
2003)

:doc Go to the My Documents folder

Clear Thumbnail Cache - Will remove all thumbnail cache information


:ctc
stored in memory

:rdrive Refresh all devices in Device dropdown and Device Toolbar

:hex2dec <num> Convert a hex value to decimal. eg. ":hex2dec ff"

Show the error message of an internal windows error code. Eg. ":winerr
:winerr <num>
5"

:sysinfo Get some system information

6. Quick Launch Buttons


The area following the Command Line Field is used for Quick Launch Buttons. If you right-click in that area, a menu will
open with the following entries:

For further information, see Quick Launch Bar.

Allow - Insert button by dropping file/folder


If selected, this allows the use of drag and drop to insert a file or folder.

Allow - Rearrange of buttons


If selected, this allows the buttons to be rearranged using drag and drop.

Insert User Defined Command


Opens the User Defined Command menu, where you can select an existing User Defined Command (or create a new
one) to be inserted.

Insert Separator
Inserts a vertical separator line.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 31


Multi Commander Documentation

Quick Launch Bar

The Quick Launch Bar is located after the command line field and the more buttons that are added the shorter the
command line field will be.

Here is a list of some of the features of the Quick Launch bar:

If you drop a file or folder on the Quick Launch bar area, a button for it will be automatically added for it.

You can rearrange the buttons in the Quick Launch bar by dragging them around.

If a file is dropped on a program button, that file is sent as a parameter to the program it is dropped on. For
example, if you drop a text file on the notepad button, the text file will be opened in notepad.

If you click on a folder button, that folder will be opened inside Multi Commander.

If you (left-) click on a program button, that program will be started. If you right-click on it, a menu will be opened
that allows you to:

1. Start it normally
2. Start it as Administrator (Vista/Win7 +)
3. Go to the folder containing the program file
4. Remove the button from the Quick Launch bar
5. Customize the way the program is opened, or what icon or tooltip to show for it, etc.
6. Insert a user-defined command button on its left
7. Insert a separator to its left. (This lets you group Quick Launch buttons.)

Entire Quick Launch Row


To add an entire Quick Launch row, go to Configuration > Core Settings > Application Layout > Toolbars > Quicklaunch
bar (Entire row) and click on the checkbox. (Clear the checkbox to remove the extra row.)

http://multicommander.com Generated : 10-Apr-2021 15:25:26 32


Multi Commander Documentation

You will now have two Quick Launch Bars.

Enable/Disable
If the Quick Launch Bar items are unchecked under Core Settings, then they are not created or loaded during startup. But
if they are checked in Core Settings, they can still be hidden if Configuration > Core Settings > Application Layout >
Toolbars > CommandLine Bar > Quick Launch bar is unchecked.
You should only use that option to temporarily hide them. If you want to permanently remove them, then uncheck them
under Core Settings. If they are just hidden they are still using memory resources and are loaded and created during
startup. To minimize resource usage, disable them under Core Settings.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 33


Multi Commander Documentation

Status Bar

At the very bottom of the Multi Commander window is an area where the application can show status information about
background tasks like folder sizing, copy operations and more.

The progress status for copy/delete/move operation is shown to the right in the status bar area. If you double-click on the
progressbar the progress dialog window for that operation will be brought to the foreground and shown.

When Administrator Mode is active you will see an indication of that in the status bar. Administrator Mode will turn itself
off when it has been idle for a couple of minutes, but if you right-click on the status text for it a popup menu will be shown
where you can turn off Administrator Mode without waiting.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 34


Multi Commander Documentation

Extensions and Plug-ins


Multi Commander is built around extensions and plug-ins.
Some of the extension are built directly into Multi Commander and some of them are located as external DLL files.

This allows for Multi Commander to grow with new features in an easy way and for other developers to create plugins to
extend Multi Commander.

With the Manage Plugins and Extensions selection in the Configuration menu you can enable and disable extensions
and plugins.

There are 4 types of extensions and plug-ins:

Application Extensions
These are extensions that have GUIs and create new tabs with functions in Multi Commander. Examples of Application
Extensions are the Explorer Panel and File Search.

FileSystem Plug-ins
All filesystems and archives that Multi Commander supports are handled by plug-ins. There are plug-ins for Zip, 7-Zip,
RAR, FTP and the Registry.

File Operations Plug-ins


These are plug-ins that are used when copying and moving files. These plug-ins can change how and where files are read
and written.

FileProperties Plug-ins
These plug-ins allow for more data to be shown about files in new columns in the Explorer Panel. For Example the
filesystem plug-in FS-Registry also has a FileProperties Extension allowing you to see the special registry information in
the Explorer Panel.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 35


Multi Commander Documentation

Configuration of Virtual FileSystem Plug-ins


Configuration of which file extension a file system plug-in uses are configured here.
Read more about that under the Virtual FileSystem pages

http://multicommander.com Generated : 10-Apr-2021 15:25:26 36


Multi Commander Documentation

Favorites
The Favorites window will be shown if you press the Favorites button on the toolbar.

Shortcuts

ALT+Backspace - Show Favorites Window

When the Favorites window is shown it will open with the section that you had opened last.

Favorites is a path to location that can be access faster. It can be a path to a filesystem location, but also path to a web
address is possible.
The Favorites window is automatically close if it loses input focus, So you do not have to click the X button. pressing ESC
or clicking anywhere outside the window will automatically close it.

1. Favorites Sections
It is possible to have multiple sections of Favorites for easier management.
In many sections it is possible to have different lists of Favorites for different purposes

Above the section name you will see F1, F2 and so on. This is the shortcut key to switch to that section.

2. QuickPaths
The first section is special. This section has 10 fixed Favorites that are assigned to the QuickPath shortcut keys.
The QuickPaths may be accessed from almost anywhere by pressing Ctrl+1, Ctrl+2 and so on up to Ctrl+0

Right click on a QuickPath item and select the actin you need: Clear/Modify/Copy/Set Current

http://multicommander.com Generated : 10-Apr-2021 15:25:26 37


Multi Commander Documentation

To set the current active path to a QuickPath item, select the path and press Ctrl+S

3. Add Section
Press this to add a new section to the list.

Right click on existing section titles to rename or remove them

4. Favorites list
All Favorites for the active section are listed here. With right click a menu is shown with actions that can performed in the
list
It is also possible to create subsections where favorites can be placed or moved to. Subsections are useful when you have
many Favorites and theyneed to be better organized.

To Add a new Favorite to the list press Ctrl+N. The Favorite's name and path are by default the path of the active panel.
Press Ctrl+F to create a new subsection. Ctrl+E will edit and allow the current selected Favorite item to be modified.

Pressing Ctrl+Q and the list will toggle between showing the Favorites name and the target path.

Ctrl+C and Ctrl+V can be use to copy and paste Favorites. They can be used to copy a Favorite from one section and
paste it into another.
It is also possible to drag and drop Favorites to rearrange their order and placement inside the current section.

5. Help/Hint Texts
This field will show hints and help text

6. Filter
Type here and the list result will be filtered. It is a way to minimize the list if there are a lot of Favorites.

Browse Favorites like a FileSystem


Favorites are also exposed as a virtual filesystem under the virtual device FAV: and also found in the device dropdown or
folder tree

Read more about that here

http://multicommander.com Generated : 10-Apr-2021 15:25:26 38


Multi Commander Documentation

Button Panel

The button panel is shown at the bottom of the main program screen. All of these buttons can be customized in the Button
Editor

A button can be configured to change the location that an Explorer panel is showing or to call an internal or external
command or script.
Since the button panel can run any of the built-in scripts, buttons customization can be a very powerful tool.

By default there are 4 rows of button and 8 button per row, every button can have 4 actions assigned to it giving you up to
128 commands for easy access.
The number of rows can also be change from 1 to 6 and the entire Button Panel can also be disabled.

When holding Ctrl, Shift or Ctrl+Shift (or having the Right or Middle mouse button pressed) the button panel is switched
to its alternative buttons. This allows easy access to the alternative button functions.

If alternative buttons are not used they can be disabled in settings.

Shortcuts

Ctrl+B - Toggle the button panel on/off

Button Panels Settings


The settings for the button panel are found under the Core Settings. ( Menu > Configuration > Core Settings).

Option - Alternative Button


The first two button panel options enable/disable the switching of the button panel to show the alternative button actions.
NB: If both if these options are disabled there is no way to access the alternative button actions.

Option - Transparent/Flat
The Transparent option will remove the button background and make the button transparent, giving a "flat" look.

More

http://multicommander.com Generated : 10-Apr-2021 15:25:26 39


Multi Commander Documentation

Read more about how to customize buttons with the Button Editor and how the button wizard works.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 40


Multi Commander Documentation

Panel Tabs

Each Multi Commander tab holds an instance of an Explorer Panel or another module, for example Settings or Search.

By clicking on an inactive tab that tab will become active.


Double-clicking on empty area in the tab area will open a new Explorer Panel. It is possible to configure which module is
opened by default in Core Settings.

It is also possible to move tabs from one side to the other by dragging and dropping them.

Right-clicking on the tab will show a popup menu with some tab options.

The list of options will change depending on which module is open in the tab.

For an Explorer Panel the following options will be availible:

1. Close Tab
2. Close All Tabs But This
3. Duplicate Tab
4. Move Tab
5. Save Tabs To File...
6. Load Tabs From File...
7. Lock Tab
8. Lock Tab - Allow subpath change
9. Tab Properties

1. Close Tab
Close the current tab.

Shortcuts
Ctrl-W - Close Current Tab

http://multicommander.com Generated : 10-Apr-2021 15:25:26 41


Multi Commander Documentation

2. Close All Tabs But This


Close all tabs except the current one. The current tab will remain open.

3. Duplicate Tab
Duplicate the current tab. Open a new Explorer Panel tab showing the same path as the current tab.
This only works if the current tab is an Explorer Panel.

Shortcuts
Ctrl-T - Duplicate Tab (Create new based on current tab)

4. Move Tab
1. Swap the location of left/right panel

Swap the locations of the active panels in the two panel sides. The tab on the left will move to the right, that on the
right will move to the left.

2. Move Active panel to other side

The current panel will be moved to the other side. A panel on the left side will be moved to the right and vice versa.

5. Save Tabs To File


Save the layout of the current tab (or all tabs) to a file. This file can then be used to load a new set of tabs, either by
selecting "Load Tabs From File" or by creating a User Defined Command.

Hint

Tab layouts can be saved from a User Defined Command using the Custom Command MC.SaveTabs

6. Load Tabs From File


Loads the layout of tabs from a file that was saved using the "Save Tabs To File" command.

Hint

Tab layouts can be loaded from a User Defined Command using the Custom Command MC.LoadTabs

7. Lock Tab
If the tab is an Explorer Panel then it will be locked to its current path: it will not be possible to navigate away from this
path.
In Explorer Panel settings it is possible to configure whether a new tab should be open instead or if the new path
navigation should simply be ignored.
A * will be shown before the tab name to indicate that the tab is locked.

8. Lock Tab - Allow subpath change


If the tab is an Explorer Panel and "Lock Tab - Allow subpath change" is enabled, the Explorer Panel is locked to a path,
but it will allow a change of path to a subfolder under the locked path. For example, if the path is locked to C:\Windows it
will allow navigation to any subfolder and sub-subfolder under C:\Windows\.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 42


Multi Commander Documentation

9. Tab Properties
In Tab Properties you can can customize the look of an Explorer Panel tab, for example to change colors or force a tab
name.

If "Solid Color" is selected the tab will be drawn with one solid colorotherwise it will be rendered with a color gradient,
starting with the standard UI color (often greyish) that fades into the selected color.

If the Core settings for "Allow tab colors" is disabled, this color setting will have no effect.

If "Use Hover Color when tab is active" is active, then when the tab is active the color will be the same as when
hovering over it.
It will be shown a little lighter than the selected color to make it stand out.
If the color should always be the same as the selected color, uncheck this option.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 43


Multi Commander Documentation

Explorer Panel
The Explorer Panel is the main panel in Multi Commander.
It is from here that you browse the filesystem and select files or folders for copying, moving, renaming, deleting, viewing
and so forth.

You can have multiple tabs that each contain one Explorer Panel. Each Explorer Panel is a separate file browser.

The Explorer Panel also adds a couple of additonal commands to the context menu on the Panel tab. It adds supports for
actions like Duplicate Tab, Lock Tab, Tab Properties.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 44


Multi Commander Documentation

By selecting "Duplicate Tab" from the Context Menu on the Tab or with the keyboard shortcut CTRL+T, a new Explorer
Panel will be shown. It will display the same location as the current, active Explorer Panel.

"Lock Tab" allows an Explorer Panel to be locked at the location it currently displays. If you try to go to another location a
new Explorer Panel will be opened for that location.

Tab Properties will show a window where you can customize the tab color and override the tab name,

Read more about the Layout of the Explorer Panel.


Read more about the functionality of the Explorer Panel.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 45


Multi Commander Documentation

Explorer Panel - Layout


The layout of the Explorer Panel is similar to that in otherfile managers that you may be familiar with, although it has many
more features than most.
Below is a description of the various parts of the display.

The image below shows an example of how the Explorer Panel can look with all of its user interface options enabled. Most
of the user interface items can be configured and turned on/off in settings.

1. Device toolbar
Here you can see a list of available devices. This toolbar is very similar to the global device toolbar, except that this toolbar
will only show drives. Special folders and virtual devices that the global toolbar can show is not shown in this Explorer
Panel device toolbar.

You can enable/disable this toolbar in Explorer Panel Settings by checking/unchecking the "Drive buttons" options.

2. Device Dropdown list


This dropdown list shows not only drivesbut all available Devices, Special Folders, Virtual Devices. When an item in the
dropdown list is selected the Explorer Panel will change to that location and show the content of the new path.
For fast access to drives when the list is shown you can press (for example) the letter E to make the Explorer Panel go to
the E: drive.
If the SHIFT key is pressed while selecting a location, that location is then opened in a new Explorer Panel tab.

In settings it is possible to configure what extended location types should be shown in the dropdown list.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 46


Multi Commander Documentation
Hint

By pressing Alt+F1 the Device Dropdown in the left panel will be shown. Alt+F2 and the one on the right is shown

3. Free Space area


Shows the available free space on the drive, and the total capacity of the volume (where appropriate).
It also shows the percentage of the total volume capacity that is available.

If you double click on the Free Space message, it will show used space instead of available space. You can also set which of
the two space figures you want as default by going to Configuration->Explorer Panel settings->Layout->GUI
Components->Show free/used space.

4. Command Buttons
These buttons affect only the active Explorer Panel when they are pressed.
Folder Tree
Splits the panel to show the folder tree in the left portion. (shortcut key Alt + Num* (See Folder tree.)
Go To Root Button
Click on the backslash symbol ("\") to go to the root of the device (shortcut key Ctrl + Back).
Go Up
Click on this icon to go up to the parent level in the file structure (shortcut key Back).
Refresh / Reload
Click on this icon to force a refresh of the current path; hold down the CTRL key to force a flush of the cache as well as a
forced reload of the current path. All selections will be lost.
Disconnect
This icon will disconnect the current device. If the current device is an external USB drive it will be prepared for safe
removal. If the device is an FTP connection then the FTP connection will be dropped.
View Mode
This icon will display a menu of possible View Modes. Currently these consist of Details, List, Thumbnail List and
Thumbnail Details.

5. Path field

The path field shows the current path displayed in the Explorer Panel. Sub folders in the path that is shown are clickable.
Clicking on a subpath causes the Explorer Panel to try to change to that path.
The path field has many options and feature. Read more about the Path field.

6. Folder Tree

7. File list view

8. Selection Status bar

The Panel Status bar appears at the bottem of the panel. The various parts are described below:

1 - Select / Total Size


The size of all the selected files and folders (if folders are showing file size) and the total size of all visible files and folders.

2 - Selected / Total Files


Number of selected files and the total visible files.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 47


Multi Commander Documentation

3 - Selected / Total Folders


Number of selected folders and the total visible folders.

4 - Hidden files / Folders


Number of files and folders that are hidden by the view filter.

9. View Filter

Filter the view to only show certain files or folders. Prefixing a filter with "-" will exclude those files. To create a filter to
target folders only, prefix it with "/".

You can edit the View Filter from a keyboard shortcut by pressing CTRL+F (if using the default commander-style setup).

Examples

*.* -*.jpg Show all files, except .jpg files.

*.* -/backup Do not show the "backup" folder

*.jpg *.tiff Show only jpg and tiff files.

It is also possible to change the view filter from a CustomCommand.

10. Reset Filter and Quick Filters

Click to toggle quick filter. Right click to show a popup menu with pre defined set of View Filters. By selecting
"Customize..." it is possible to edit the list of quick filters and to add new filters to the list.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 48


Multi Commander Documentation

http://multicommander.com Generated : 10-Apr-2021 15:25:26 49


Multi Commander Documentation

Path Field

The Path Field shows the current path displayed in the active Explorer Panel . Sub folders in the path that is shown are
clickable. Clicking on a subpath causes the Explorer Panel to try to change to that path.

If you hold down the CTRL key while clicking on a sub folder a list of all the sub-folders under that path will be shown. You
can then select a sub-folder that you want to go to from that list.

Special Feature

A special feature is that if you hold down both SHIFT and CTRL keys while clicking on a sub-folder in the path field,
and then select a sub folder from the folder list, it will try to go to the same sub-path under that folder as the one in
which you are currently located. Eg. if you are currently located in the path
"D:\Projects\MyApp\Version_1.0.0\Source\Includes\" and you click on the "MyApp" sub path while holding down
Shift+Ctrl, then in the folder list that is shown you Select "Version_2.0.0", it will try to go to
"D:\Projects\MyApp\Version_2.0.0\Source\Includes\". If that path does not exist it will go to the closest path that does
exist.

Editing the Path Field

By double clicking on the empty space in the path field, it will become an editable path. If the path is changed the Explorer
Panel will try to change to the new path.

Shortcuts

Ctrl+E Will force the Path Field to be editable and input focus will be moved to it.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 50


Multi Commander Documentation

Explorer Panel - Navigation


The Explorer Panel is the primary panel in Multi Commander. It is from here that you browse the filesystem and select
files to copy, move, rename, delete or view.

All References to Keyboard and Mouse commands below assume that you are using the default Commander-
Style setup, unless otherwise specified.

Commander-Style-Setup vs WindowsExplorer-Style Setup


By default Multi Commander uses the Commander-Style setup, meaning that mouse and keyboard shortcuts are similar
to the file manager named NortonCommander that existed before Windows on MS-DOS. This setup has become very
popular and is used in many other file managers on many platforms. It is popular because it is optimized for keyboard use
and provides the ability to do everything from the keyboard in a efficient way.

If you are more comfortable with the way Windows Explorer operates, it is possible to configure Multi Commander to
work like Explorer. You will, however, lose some of the efficiency that you get from the Commander-Style setup.

Read more about how to change Multi Commander to the Windows Explorer-Style Setup

Navigate the FileSystem


You can use both the keyboard and mouse to navigate in the Explorer Panel.

The files/folders that are currently in focus are highlighted by way of a border drawn around them. These are the
files/folders that will be affected by your action if no other files/folders are selected. You can navigate up and down the list
with the up and down arrow keys. The HOME and END keys will change the focus to the first or last item in the list.

If there are more files and folders than will fit on the screen you can use the page up and page down keys to scroll up and
down in steps.

To choose a subfolder to browse either double-click it or, if the folder is already in focus, press the RETURN key. The
Explorer Panel will then try to show you the content of that path. You are also able to browse archives if there are
filesystem plugins installed that expose that archive format as a filesystem. For example .zip and .rar files can be browsed
as if they were unpacked into normal folders.

To go back to the parent folder you can either double-click on the ".." icon or press the BACKSPACE key. Holding down
CTRL while pressing BACKSPACE will send you to the root of the current volume or device.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 51


Multi Commander Documentation

Holding CTRL and pressing the LEFT or RIGHT arrow key can synchronize the current path or folder in focus to the
panel on the left or right. For example if you are in the left panel and focus is on a folder and you press the
CTRL+RIGHT ARROW key, the path for the folder in focus will be sent to the right panel, and if the right panel is an
Explorer Panel it will now show that path location. If the CTRL+LEFT ARROW key is pressed when the active panel also
is the left one, the Explorer Panel on the left will get the current path location of the right panel and show that location in
the left panel.

If you hold CTRL while pressing the PAGE DOWN or PAGE UP key you will go to the next or previous sibling folder of the
current location. For example If you have some A to Z folders in C:\MyFolders\ and you are currently located in
C:\MyFolders\D, then when you press the CTRL+PAGE DOWN keys the Explorer Panel will now go to the
C:\MyFolders\E folder. If instead CTRL+PAGE UP were pressed, it would have gone to the C:\MyFolders\C folder. This
however requires that sorting in the Explorer Panel is set to the name column. It will go to whichever previous (or next)
sibling folder that the current sorting determines.

If you have an Explorer Panel both in the source and target panel and want to show the same location in the target as the
source panel has, then press the keyboard shortcut key CTRL+. (dot) in the source panel. The target and source panel will
then show the same location.

Hint

Go To Sibling
A quick way to go to a sibling folder is by way of the shortcut keys

Ctrl+Page Up goes to the preceding sibling folder (in sort order)


Ctrl+Page Down goes to the next sibling folder.

Sorting

To sort the files and folders shown, click on the header of the column that you want to sort the contents by. Clicking on it
again will reverse the sort order. You will see an arrow in the header of the column that currently has sorting activated,
indicating if sorting is ascending or descending.

Sorting can also be changed using shortcut keys: CTRL+F1 to sort by first column, CTRL+F2 for second column and so
on, up to CTRL+F5. Selecting the column that is already the sort column will reverse the sort order of that column.

If the configuration option Sort Files Logical for the Explorer Panel is checked, files and folders will be sorted so that
numeric subfields are treated as numbers. E.g. instead of files being shown as

file_0011.txt
file_1.txt
file_10.txt
file_2.txt

They will be sorted as

file_1.txt
file_2.txt
file_10.txt
file_0011.txt

http://multicommander.com Generated : 10-Apr-2021 15:25:26 52


Multi Commander Documentation

Select files and folders

There are many ways to select files and folders in the Explorer Panel, and Multi Commander also remembers which files
and folders you had selected if you return to a location you had previously opened since Multi Commander was last started.
(If Multi Commander is closed this information is lost).

Mouse (Commander-Style Setup)


Right click on the file or folder that you want to select or deselect. You can also hold down the right mouse button and drag
the mouse up and down to change the selection on multiple files and folders. When changing selections on multiple files or
folders, the first selection performed determines whether it should select or deselect all the files/folders that are under the
mouse cursor until the mouse button is released.

Mouse (Windows Explorer-Style Setup)


Selection works as it does in Windows Explorer. You Select files/folders with the left mouse button, and to select multiple
files and folders you hold down the shift key to select/unselect a range of items. Holding down CTRL will let you toggle the
selection of items without deselecting already selected items.

Mouse Selection Rectangle


If the option Selection Rectangle is checked in Explorer Panel Settings, you can also drag out a rectangle on the display.
All files and folder that are touched by the rectangle will be selected. To use the selection rectangle you must start a drag
operation outside any file or folder name.

Expanding / Shrinking Selection by Filter


Using the shortcut key NUM+ or "Select" from the Edit Menu, an "Expand Selection" dialog will be shown where you can
insert a filter and all files and folders matching that filter will be selected.

Using the shortcut key NUM- or "Unselect" from the Edit Menu, a "Shrink Selection" dialog will be shown where you can
insert a filter and all files and folders matching that filter will be deselected.

Invert Selection
By pressing the shortcut key NUM* or selecting "Invert Selection" from the Edit Menu, the selection of all the files and
folders at the current location will be inverted. (Selected files and folders will be deselected, and unselected ones will be
selected.)

Select All / Unselect All


Use the shortcut key CTRL+A or choose "Select All" from the Edit Menu to select all files and folders at the current
location. Use CTRL+D or choose "Unselect All" from the Edit Menu to deselect all files and folders.

Quick Select Matching Extension or Filename


Using the shortcut key CTRL + NUM+ or "Select same extension" from the Edit Menu, all files with the same file
extension as the file currently in focus will be selected. Similarly, CTRL + NUM- deselects the files.

Using the shortcut key ALT + NUM+ or "Select same name" from the Edit Menu causes all Files with the same name,

http://multicommander.com Generated : 10-Apr-2021 15:25:26 53


Multi Commander Documentation

except those having the same file extension as the file currently in focus, to be selected. ALT + NUM- similarly deselects
matching files.

Toggle Selection from keyboard shortcuts


You can toggle the selection of files and folder with the INSERT key; this key will toggle the selection of the current items
in focus and then move down to the next item.

Toggling the selecting files and folders can also be performed with the SPACE bar. If a selection is performed on a folder
an action to calcuate the folder size is also issued.

Quick Search
Quick Search allows you to start typing a name and the focus will change to files or folders starting with that name. Using
the default commander-style setup you need to hold down ALT and CTRL key while typing. This can be configured in the
settings for the Explorer Panel.

When the Quick Search window is active you can press the UP and DOWN ARROW keys to move to the previous or next
file or folder that matches the current quick search.

With Windows Explorer-Style Setup you can just start typing without holding any other key down. However, this setup will
disable the feature that forwards all key-presses to the command line bar.

In the settings for the Explorer Panel you can configure the Quick Search window to be activated with ALT+CTRL+<any
letter> or ALT+<any letter> or simply <any letter>. If configured to be activated by any letter typed, then the Forward
Keys to the command line feature will be disabled.

Forward Keys
With the default Commander-Style Setup, key-presses are forwarded to the command line bar. This make it possible for
you to start typing a command without having to first manually change input focus to the command line bar.

It is possible to change the input focus to the command line bar with the shortcut key ?. (This key may have a different
character depending on keyboard layout or language. It is the key to the left of the '1' key on a normal keyboard. Laptop
keyboards can be different). This key can be reconfigured in the keyboard customization manager.

Context Menu
The context menu is the right click menu that you see in Windows Explorer. In MultiCommander this can be shown in
different ways and additional actions can be shown in the menu. If MultiCommander is set to Window Explorer style the
context menu is shown using the right mouse button. However, for the default commander-style setup the right mouse
button toggles the selections of files and folder with. But if you hold the right button down for 2 seconds it will show the
context menu. Double clicking with the right button will also bring up the context menu.

Drag and Drop


You can drag and drop selected files using the left mouse button. If files are dropped on the same drive the file operation
will default to a Move Operation instead of a Copy Operation. To avoid this hold down the SHIFT key while dropping the
files.

Copy / Paste
Copying and pasting of files and folders can be performed just as in Windows Explorer, but there is also a function to copy
the path of a file to the clipboard so that you can paste that path or filename into another program.

Copy to the Clipboard


CTRL+P will copy the complete path with the name of the selected file or folder to the clipboard.
CTRL+SHIFT+P will copy only the name of the selected files or folders to the clipboard.
SHIFT+ALT+P will copy only the path of the selected files or folders to the clipboard.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 54


Multi Commander Documentation

Paste from the Clipboard


If you have a path to a file or folder already in the clipboard you can paste that path into the Explorer Panel with CTRL+V.
It will then show you that path so you can continue browsing that location.

If the data in the clipboard is not a file path, MultiCommander will attempt to identify what type of data it is. If it is an
image (e.g. a screen capture) then you will be presented with a dialog to save the content from the clipboard as an image
and you can choose which image format you want to save it as (BMP/JPG/PNG).

If the data is identified as text you will be presented with a dialog to save the content from the clipboard as a text file and
you can choose to save the text content as ASCII or Unicode.

Keyboard shortcuts
Default Keyboard Shortcuts (Commander style setup)
Default Keyboard Shortcuts (Windows Explorer style setup)

Favorites/Bookmarks
There are several ways to have Favorites/Bookmarks in Multi Commander

User Defined Command in the Button Panel


Alias for the command line field
User Command in the Menu Bar
Quick Launch Bar
Favorites Window
Quick Paths

User Defined Command in the Button Panel

Using User Defined Commands you can easily create a Button Panel button to change the current path. First activate
Wizard mode by pressing the Wizard Mode (On/Off) button. (It is the last button to the right on the bottom row) or from
the configuration menu by selecting Toggle button panel wizard mode

When Wizard Mode is active the button panel will have a red background around the buttons. You can now drag and
drop a file or folder to any button and the Button Panel Wizard dialog will be shown. Click on Go to file / path in Multi
Commander in the dialog and then press OK. You now have a button that when pressed will take you to that file or
location.

Alias for the Command Line Field


An alias is a shortcut you type into the Multi Commander command line field that will expand into one or more longer
commands. If you enter a path location in the Multi Commander command line field and then press return, Multi
Commander will go to that location. So by creating an alias for a path you can go to that path by just typing the alias you
assigned it. For people who like to be able to go to different paths quickly using the keyboard this is very useful and
efficient.

You create an alias in the Alias Editor that you find under the Configuration menu. But there are also two quick

http://multicommander.com Generated : 10-Apr-2021 15:25:26 55


Multi Commander Documentation

commands, Alias and Alias2, that can create an alias directly from the command line field. For example, if you wish to
create a command line shortcut that takes you to your folder "D:\my music\mp3\" you can type alias mp3="d:\my
music\mp3\". (The quotes are only needed if there are spaces in the the path). Now when you type mp3 in the command
line field and press return, Multi Commander will expand the "mp3" alias to the full path and execute that. Since it is a
path it will go to that location.

But there is an even easier way to create this alias, and that is to use the alias2 command. This command only takes the
alias name as a parameter and assumes that the current path in the Explorer Panel will be the target path for that name.
So if the path D:\my music\mp3\ is open and in the command line field you type alias2 mp3, you will create an alias named
mp3 that will take you to the path D:\my music\mp3\.

Read more about aliases

User Defined Commands in the Menu Bar


The custom command for changing the path is MC.Explorer.GoTo. If you want a command that takes you to the MP3 folder
we used in the alias example above you write

MC.Explorer.GoTo PATH="D:\My Music\MP3"

You can also specify LEFT/RIGHT (instead of PATH) if you want to control in which panel side the path should be opened.

After you have written your command and saved it, you can press the Menu button. From here you can add the newly
created command to the menu bar.

Read more about User Defined Commands

Quick Launch Bar


You can Drag and Drop files and folders to the Quick Launch Bar. When a folder that is placed on the Quick Launch Bar is
clicked, It will change the current panel to that path. You can also place a User Defined Command in the Quick Launch Bar
by right-clicking on it and selecting Insert User Defined Command.

Read more about Quick Launch Bar.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 56


Multi Commander Documentation

Explorer Panel - Customize Columns


Which columns that should be shown can be customized. It is possible to remove existing columns or add new ones. There
are many columns that will show a lot of extra information to choose from.

It is also possible to create new column layouts, save them and have Explorer Panels switch to that layout automatically
when browsing to a certain locations. Or you can switch the entire layout when pressing a hotkey or selecting a layout
manually.

Customize Columns
Right click on the column header to show the context menu from which you can customize the columns.

All existing column are shown in the popup menu first. To remove any of the existing (ticked) columns just click on that
item in the context menu and it will be removed.

Add Columns
Add columns by selecting which column to add from the list of columns under "Add columns". This list shows the most
commonly used columns, but there are many more columns available. To access them select the "More..." item at the
bottom of the column list. Then the "Customize Columns.." dialog will be shown. From this dialog all columns are
available.

Use Layout
If you have created multiple column layouts they are listed here. Select one and it will replace the current layout.

By default there are three "standard" layouts available: "Default", "Picture" and "Music".
The "Default" layout is the standard layout that is used of no other is selected. If you want to modify the standard column
layout it is the "Default" layout that should be changed.
The "Picture" and "Music" layout are alternative layouts that will show extended file information for picture and music
files.

Save Current Layout as Default


This will save the current column layout and setting to the "Default" layout.
Select this option if columns are modified and the current layout (columns and size) should be used as the default layout
for all Explorer Panels.

Restore Columns
This restores all columns to the saved state of the current column layout.
If "Default" layout is selected and columns are then modified, selecting "Restore Columns" will revert to the saved state

http://multicommander.com Generated : 10-Apr-2021 15:25:26 57


Multi Commander Documentation

of the "Default" layout.


If "Picture" layout is used and columns are manually changed, selecting "Restore Columns" will revert to the saved state
of the "Picture" layout.

Autosize Columns
If the Explorer Panel setting "Autosize Columns" option is checked this option will not be available.

If the option in the picture above in not enabled (checked) then you can use the "Autosize Columns" option in the column
header menu to manually resize all columns to their optimum width.

Customize Columns
This option will open the Customize Column Layouts window.
There new layout can be created and existing ones can be modified. It is also here that all the columns that do not fit in the
Add Columns list are available.
See Customize Column Layouts for more information.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 58


Multi Commander Documentation

Explorer Panel - Customize Column Layouts


A Column Layout is a saved set of a column layouts that can be selected from the column header menu. A Column layout
can also be applied automatically if you go to a folder that was specified in the Column layout definition.

From the "Customize columns..." option a dialog will open where you can create or modify and remove Column Layouts.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 59


Multi Commander Documentation

1. Column Layouts
2. Column Layout Name
3. Available Columns
4. Column Filter
5. Add Column
6. Columns List
7. Modify Column Order
8. Copy Column Layout from...
9. Column Properties
10. Autoload on Path
11. Save Changes

1. Column Layouts
All available columns layouts are listed in a dropdown list. After the list there are two button: "Create New" and "Delete".
Use them to to create new layouts or to delete existing ones.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 60


Multi Commander Documentation

The first item in the column layout list named "[Current Column Layout]" is special.
It represents your current layout and modifying and saving it will only change the look for the current, active Explorer
Panel. No others will be affected and changes are not saved between restarts.

In order to change the Standard column layout (that all Explorer Panel tabs will use), the [Default] column layout needs to
be modified. Changing and saving this layout will cause all Explorer Panel tabs' column layouts to be updated when closing
the window.

2. Column Layout Name


When creating a new column layout enter the name by which you want to identify the column layout. This name will be
listed in the Use Column Layout submenu when right clicking on the column header.

3. Available Columns
This is the list of all the available columns which can appear in your layout. From the dropdown list above the list it is
possible to limit which columns to list (by type).

4. Column Filter
There are a lot of columns and it can be hard to find the correct column to add. In the filter field it is possible to filter the
list of available columns.
When you start typing, the available columns list will only show columns whose name includes what has been typed.

5. Add Column
Press the Arrow button add the selected column to the list of columns for the currently-selected layout.

6. Column List
This list shows all the columns that have been assign to the currently selected layout.
The order of the columns in the list is the order they will be shown in the Explorer Panel.

7. Modify Column Order


The Up and Down arrows here allow column to be moved up and down the list. Select the column to move and then press
the Up/Down button.

Press the X button to remove a column from the list.

8. Copy Column Layout From...


Often when creating a new column layout it is similar to another existing layout. This drodown list will list all available
layouts, and the selected one will be copied into the layout being modified.

9. Column Properties
All column have some standard properties. These properties can be modified here.
'Display name' is the name that will be shown in the Explorer Panel column header.
'Width' is the default width of the column. However if autoresize columns settings is enabled this width might be ignored if
needed.
'Margin left' and 'Right' allow you to add extra blank space to the column left/right sides (both to the header and the
content).
'Column alignment' specifies how the content of the column will be displayed: right / left / center.
After any properties are changed be sure to press the "Update" button so that the properties are updated

10. Autoload on Path


This allows a column layout to be automatically applied under path that you specify here

http://multicommander.com Generated : 10-Apr-2021 15:25:26 61


Multi Commander Documentation

Enter the path for which the column layout should be autoloaded, Check the "Valid for subpaths under this path" if you
want the Column layout to also apply for subpaths under this path. Press the "Add" button to keep your changes.
Paths in this list preceded with a * have the subpath option checked.

To modify any path in the list, simply double-click it.

Change the path, and/or subpath settings and then click "Change".

Select a path in the list and press the X button to remove it.

11. Save Changes


When all modification are complete for the selected column layout press the "Save Changes" button. If this button is not
pressed all changes made will be lost.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 62


Multi Commander Documentation

Folder Tree

The first of the buttons on the Explorer Panel Embedded Toolbar is the Toggle Folder Tree command, This button will
show/hide the Folder Tree.

Shortcuts

ALT+Num* - Show/Hide the Folder Tree panel


ALT+Num/ - Change the input focus between the Folder Tree panel and the file list view

The Folder Tree can be scrolled independently of the Explorer Panel, and clicking on any node of the Folder Tree will
change the Explorer Panel to display that subfolder. The nodes of the Tree are shown with "+" or "-" symbols to show
whether the subtree is expanded or collapsed.
You can also drop files on a folder in the Folder Tree and then a copy operation will begin. The copy operation will use the
folder on to which the file was dropped as the suggested target folder.

Pressing the refresh shortcut command (F2/F5 depending on setup) while a folder in the Folder Tree is in focus will refresh
that Tree node .

NOTE
If you have "Autosize columns" set, the Folder Tree will obscure part of the file listing in the Explorer Panel. To turn
this setting off, click on Configuration > Explorer Panel Settings, scroll down to "Sorting and Columns", and click
on "Autosize columns" to clear the checkbox.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 63


Multi Commander Documentation

Rule Based File Coloring


Rule Based File Coloring make it possible to create rules that will define what color a file or folder should be shown as in
an Explorer Panel.

It is also possible to have multiple color profiles each of which has its own setup of different rules and it is possible to
switch to a different profile from a toolbar button.
You can also create user defined commands that will switch to a specific profile; these commands can be assigned to a
hotkey or a menu.

Where to Create the Rules

The File Coloring Rules Editor is opened by clicking on the Color Wheel icon on the toolbar.

There are also options to enable/disable File Coloring and a list of available profiles. By default there is only the "[Default]"
profile. But if you create own profiles they will also be listed here.
Clicking on "Refresh file coloring for all files and folders" will remove all coloring information and reapply it for all
files and folder.

The File Coloring Rules Editor can also accessed from the Configuration menu.

Rules Editor
In the File Coloring Rules Editor, It is possible to add/remove or modify existing rules or entire Color Profiles.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 64


Multi Commander Documentation

The list with its rules also acts as a preview: the rule name will be listed in the colors set for it.

Files and Folders are colored by rules from top to bottom. And the first matching rule will be the one that decides the
color.
If you have multiple rule that can conflict with each other, you can use the Up and Down button above the list to move
rules up and down the list.

Every rule can have 3 criteria that must be true for the color rule to be applied. Only if all parts of the rule are true is the
color rule applied.

The checkboxes in the list of rules shows if a rule is enabled or not. If you uncheck a rule then it will not be applied when
coloring files and folders.

You can export rules to a file that you can later import. When exporting you are ask if you want to export all the rules or
only the active rules. If any rules that are disabled will not be exported when you choose to export 'Only Active rules'.

Example
Example how the default color profile can color files and folders.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 65


Multi Commander Documentation

Coloring of Background
In roder for File Coloring to be able to change the background color of files/folders the Explorer Panel setting options "Use
file specified background colors" and/or "Use folder specified background colors" must be enabled.
(See the two checked items in the image below)

User Defined Commands


The File Coloring profile to use can be controlled by using user defined commands.
Create a user defined command of "CustomCommand" and use the MC.Explorer.SetColoringRules command.

Example

http://multicommander.com Generated : 10-Apr-2021 15:25:26 66


Multi Commander Documentation

MC.Explorer.SetColoringRules Name="MyColorProfile"

After the command is created it can be assigned to a hotkey or to a menu.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 67


Multi Commander Documentation

Paste from Clipboard into Explorer Panel


If the data in the clipboard is text or picture data and you try to paste it into the Explorer Panel you will be asked to save
the clipboard data as a text or image file.

Saving Text Data


If the data in your clipboard is text and you press Ctrl+V (or Menu > Edit > Paste) while the focus in Multi Commander is
in an Explorer Panel, you will be shown a dialog where you can save the text content from the clipboard to a file.

The dialog lets you choose the format to save the text in

Ascii
Unicode
Ascii - convert to CRLF
Unicode - convert to CRLF
Binary (Raw data)

Some special handling is done for text data. If the text data in your clipboard looks like a path for an existing folder or file,
then instead of opening a dialog, Multi Commander will immediately change the current location to that path you have in
your clipboard data. If the path in the clipboard has a file specified then the focus will be set to that file.

Saving Image Data


If the clipboard data is an image (for example if you pressed print screen to take a screenshot), you will be given the option
to select the image format to save it in.

You can save the image the following format

jpg
png
bmp

http://multicommander.com Generated : 10-Apr-2021 15:25:26 68


Multi Commander Documentation

File Search
Multi Commander provides facilities to search for files and folders, along with a number of options to control the search.

To perform a search, go to the path where you want the search to start and then press hot key for starting search or or
select "File Search" in the Extensions menu or Find Files from the File menu.

Shortcuts

Start an instance of the Find Files (Search) Panel.


Alt+F7 - For Commander-Style Setup
F3 - For Explorer-Style Setup

The search dialog will open in a new tab in the opposite panel from that in which you are positioned.

Specify what to look for and how you want to look for it.
You can specify multiple search terms by separating them with spaces.
(If you need to include a space in the search target, put quotes around it. e.g. "Images 23.jpg" .)

You also need to specify how to look for matches. There are three methods provided:

Contains : files and folder names must contain any of the search terms you specify in order to match.
Wildcard : the search terms that are specified contain wildcard characters, e.g. "*.jpg" to find all files ending with ".jpg".
RegEx : the specified search terms are regular expressions.

Using wildcard search you can also specify an exclusion filter by including a - in front of the filter.
For example if you search for "*.cpp -base*"

This will find file named AlphaClass.cpp but it will not match BaseClass.cpp

http://multicommander.com Generated : 10-Apr-2021 15:25:26 69


Multi Commander Documentation

Next you need to specify where to Look In when starting to search for matches. Normally this path is already set to the
path that the file browser showed when you opened the search dialog. You can press the Reset button to reset the Look
In path to the path that is currently shown in the opposite view.

(You can specify multiple location to search in by separating them with ; for example "D:\Project;F:\Downloads\;C:\Temp\" )

You can also press the "<" button to add all local harddrive, or paths from open tabs.

You can also specify how many Sub Levels down in the file hierarchy to search for files. By default as many levels as exist
are searched.

It is possible to exclude folders from the search in the Exclude Filter. You can enter a space-separated list of folder names
that you want to ignore when searching.
(Foe example if you enter ".svn tmp data" then no folder named ".svn" or "tmp" or "data" will be searched).

If you have previously searched for something you can specify that a new search should search the Results of the first
search.
This way you are doing a search on the previous search result. This is a useful way to filter files from searches that
produce too many results.

More Options
By pressing the "More >>" button you can specify more advanced search options.

You can find files with a specific File Content and you can specify how the search should try to find that content. (See the
screenshot above for available options).

It is also possible to match files on Attribute, Size and Date. (See above).

http://multicommander.com Generated : 10-Apr-2021 15:25:26 70


Multi Commander Documentation

Date Match Help


Date matching includes some predefined date ranges that can selected. By pressing the < Button in the Match dates
section you will get a list of date ranges. When one of them is selected the From and To date fields are automatically
populated.

Load / Save Presets


The Find Files window can load and save presets of previously-configured searches using the function keys F1 to F10.
To save a search to a preset press Ctrl+Function key (eg. Ctrl+F1).
To load a preset press a function key that has a preset saved to it, (eg. F2).

Hot Keys in the Find Files Window


Ctrl+F - Show / Hide the Find Files window.
Alt+Z - Clear all search fields.
Ctrl+X - Expand / Shrink the Find Files Dialog
F1-F12 - Load Preset
Ctrl+F1-F12 - Save Preset

Search Result
When right-click on items in the result list you will see a list of options. Here you can filter out files from the result list
based on their paths. This can be useful if the result list is very large.

If you double-click on a file in the result list, the opposite panel will open at that files path the file will have focus. You can
also press View and Edit files directly from the search result panel and it is possible to copy files from the search results.

Scripting
File Search can be scripted by creating your own user defined command to start a search. By assigning a hotkey to your
command you can start searches you use often with a single keypress.

The search is controlled by Custom Command script. More information about the search script command is found here

Scripting example:

MC.FileSearch.Search SEARCHIN="${sourcepath}" SEARCHFOR="*.xml *.txt" AUTOSTART

http://multicommander.com Generated : 10-Apr-2021 15:25:26 71


Multi Commander Documentation

Virtual FileSystem
Multi Commander uses a virtual filesystem layer.
The virtual filesystem has different plug-ins that extend the elements of the filesystem that Multi Command can show. An
example of a plug-in is FS-Zip that will allow zip archives to be part of the virtual filesystem, so that they can be browsed
and handled just like a folder. Other plug-include the FS-REG plug-in that will add a new filesystem prefix, REG:, that
allows the Windows Registry to be browsed and handled as if it were a filesystem (even though it is not).

Not all filesystem plug-in support all filesystem functions. This depends on what each plug-in can support.

There are two types of filesystem plug-in: Devices and Containers.

The devices filesystem plug-ins will add new device prefixes to the virtual filesystem, eg. FTP: , REG: , NET:
This will present things that are not normally part of a filesystem as if they were, like the Windows Registry, for example.

Containers are files that contain filesystem objects that have structures that can be represented as if they were a
filesystem.
Typical examples are archives like Zip, RAR or 7-Zip. The plug-ins for them will handle the archive files as they were
folders opened in Multi Commander. Handling archives as if they were folders allow files to be inserted into the archive by
simply copying file into the virtual folder. When viewing a file inside a archive that file will automatically first be copied to
a temporary location before opening.

FS-Local
The built-in filesystem plug-in FS-Local is special. It is handled in a special way within Multi Commander.
FS-Local handles all the normal filesystem objects on the machine, like single-letter devices (A-Z), such as C:,D:,E:, and so
on, and network file paths likes \\Server\share.It is also the only filesystem plug-in that cannot be disabled.

Container/Archive Plug-ins
Included with Multi Commander is a couple of archive filesystem plug-in that will handle different archives.
FS-Zip for Zip archive. Zip archives can be read/modify/write/create.
FS-RAR for rar archives, Only Read mode is supported. RAR archives can't be modified or created.
FS-7Zip handles the 7Zip archives. Read/Write/Create is supported.
FS-TarGZ handled both Tar and GZ archives.Read/Write/Create is supported.
FS-BZip2 handles BZip2 archives. Read/Write/Create is supported.

See more about archive plug-ins

http://multicommander.com Generated : 10-Apr-2021 15:25:26 72


Multi Commander Documentation

Device Plug-ins
Included with Multi Commander is a couple of device plug-in
FS-Favorites (FAV:) Allows the favorites in Multi Commander to be browsed like a filesystem.
FS-Portable (WPD:) exposes the Windows Portable Device interface that gives access to portable devices connected to
the machine.
FS-Registry (REG:) make it possible to access the Windows Registry
FS-FTP (FTP:) adds FTP support

Configuration
The way that the plug-in is connected into the virtual filesystem is configured in "Manage Plug-ins and Extensions".
There you can enable/disable plug-ins and configure the file extension and/or byte markers and device prefix that a
filesystem plug-in should be associated with.

Changing how plug-in are connected into the virtual filesystem is for experts only. You are able to configure the plug-ins
in a such way that will Multi Commander my not act the way you want or expect.
Pressing the "Rebuild Config" button will reset all extension/plug-in setups to their defaults.

The "Manage Plug-ins and Extensions" window is found under Menu -> Configuration. Select "FileSystem Plug-ins" in the
'Extension Type' dropdown list.

Set or clear the checkboxes to the left to enable/disable a plug-in. To configure how it connects with the virtual filesystem
press the Options button.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 73


Multi Commander Documentation

In the image above FS-Zip was select and it is associated with file extensions zip and jar.
To remove an association with a file extension select the extension to remove and press the Remove button.
Adding a new file extension is done by adding the file extension (without the dot) to the input field above the Add button.
Press the Add button to add it.

In the "File Identification" dropdown list you can also identify a file type by specifiying its byte marker. The byte marker is
also used when trying to identify if a file should be opened by a container/archive plug-in.
The byte marker is special sequence of bytes that the file content always starts with. For example, PK are the two bytes
that .zip archives always begin with.

The byte marker can be entered as a hexadecimal value (see FS-RAR in the image above) or as ASCII text (see FS-Zip in
image above).
Enter the byte marker in the input field and press the Add button. Select a byte marker in the list and press the Remove
button to remove it.

Device prefixes for device plug-ins are configured under the "File Extensions". Add the prefix without the ":" (See "reg"
device for FS-Registry in the image above).

http://multicommander.com Generated : 10-Apr-2021 15:25:26 74


Multi Commander Documentation

FileSystem - Archives
There are virtual filesystem plug-ins to allow archive files like Zip, RAR, or 7Zip to be opened and handled by Multi
Commander.

Multi Commander sees the archive first as a normal file, but when opening it, will browse the content of the archive as if it
were a folder.

Since archives are handled as folders it is possible to browse an archive and select files and then press copy (or drag them)
and only the selected files will be unpacked and copied.
If the virtual filesystem supports writing, it is possible to copy files into the archive just as if the archive were a folder. The
archive will then be updated with the new files.
Delete and Rename are also supported (if the plug-in for that archive format supports it). Not all archive plug-ins support
write/modify operations.

Most operation that can be preformed on normal files can be performed on files inside an archive. The virtual filesystem
will unpack the files to a temporary location if needed.
When viewing or editing a file inside an archive the virtual filesystem layer will automatically extract and update the
archive as needed.

In many places inside Multi Commander it is possible to reference a file that is located inside an archive. The virtual file
system will then automatically open the file inside the archive.

Pack / Unpack
With Pack and Unpack it is possible to quickly pack or unpack files within an archive file.
Unpacking can also be done by browsing the archive, selecting what to copy and then copying the content to a target
location.

Create New Archive Automatically


Because the virtual filesystem will automatically open or create archives it is possible to create a new archive by copying
files to an archive that does not yet exist. If it does exist, however, the existing archive will be updated instead.

In the image above the right panel has the folder "Network" and the files "Network.hpp" and "mine.hpp" selected.
A copy operation of the selected files and folders to the target panel to the left is then issued. In the "Copyfile to..."
confirmation window an archive file name ( NewZipArchive.zip) is added to the target path.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 75


Multi Commander Documentation

The copy operation will now copy the selected file into the new zip archive named NewZipArchive.zip.

After the copy is completed there is now a new zip archive in the target location: "NewZipArchive.zip"

The virtual Filesystem knows that the .zip extension is a virtual file system object. Therefore, when the target location is a
path that ends in an archive, the virtual filesystem layer will create that archive file if it can. If the file already exists the
existing file will be updated instead.

Just as if the target archive file was actually a folder.

FS-Zip
This virtual filesystem plug-in adds support for opening and modifying and creating zip archives.
Zip is a very old format and because of that it does not handle well filenames that have characters that do not fit into the 7-
Bit Ascii Table. The Zip standard has been updated to support UTF-8 encoded filenames, and FS-Zip does support that, but
many other programs that create/read zip files to not support UTF-8 encoding. This can make the filenames look differently
if zip archives are moved between computers with different language settings or capabilities.

In the settings for the Zip FileSystem plug-in it is possible to configure which codepage should use when opening zip
archives (those that are not encoded using UTF-8).
The settings page is found under the Configuration menu.

Is is also possible to enable/disable whether a new zip archive should be created using UTF-8 encoding.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 76


Multi Commander Documentation

FS-Rar
This virtual filesystem plug-in provides read only support for RAR files. It will allow browsing and unpacking rar archives,
but files cannot be added.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 77


Multi Commander Documentation

FileSystem - Network (NET:)


The virtual filesystem device extension Network (NET:) allows the local network the be scanned for computers or
network-attached devices.
All found devices will then be listed.

To scan the network for computers and devices execute the "Scan Network" command (a progress window will be shown
during the scan). The scan can take a couple of minutes if the network is large. When finished all discovered devices within
a shared filesystem will be listed.

The list of devices is by default remembered between restarts of Multi Commander.

Opening a computer in the list will cause Multi Commander to browse that server path. The server path browsing is then
handled by the normal FS-Local virtual file system plug-in. Just as if the path was entered manually.

TS Client - Remote Desktop


Running on a computer that is logged in from Remote Desktop, the local drives can be accessed on the remote machine
under \\TSClient (If Remote Desktop is configured to show drives on the remote computer).
The Network virtual filesystem plug-in will detect if Multi Commander is running in a Remote Desktop session. If it is, and
there are remote connected drives, a TSClient entry will also listed. It works in the same way as any other computer entry
listed.

Network Commands
Right-clicking on a computer in the list will open a popup window is shown with some additinal commands.

Pin this Computer


This command will pin the selected computer. If a new scan of the network is done this computer will not be removed from
the list even if it was not found.

Remove from list


This command will remove the selected computer from the list.

Remove all from list (Except pinned)


This will remove all computers from the list (with the exception of pinned computers - these will not be removed).

http://multicommander.com Generated : 10-Apr-2021 15:25:26 78


Multi Commander Documentation

Settings
Execute the "Settings" command to open the settings page

Network browse method

There are three methods (Current Context, Global and Shell) available to use to scan the network. If computer is not found
in the list after a scan, try changing Network browse method and then scan the network again.

Keep cache of found networked computers

If this is checked, discovered computers will be remembered between restarts of Multi Commander.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 79


Multi Commander Documentation

FileSystem - Portable (WPD:)


The virtual filesystem device extension Portable (WPD:) allows portable devices like cameras and phones to be accessed.

When connecting a phone, tablet or camera to the computer that device may allow full filesystem access and Windows will
then provide a drive letter for the device and it is accessed as any other device. However, many modern devices do not
support this and require that the device is accessed via a special protocol called MTP. Windows provide access to MTP
devices via the Windows Portable Device interface. This file system extension will expose the WPD interface to Multi
Commander providing access to MTP device.

When full filesystem access to the device is not allowed some filesystem operations might not be accessible. This may differ
from device to device. Note that transferring files to and from an MTP connected device is a lot slower than using a
mapped drive letter.

Some phones and tablets have a settings that will allow the device to be detected as a 'mass storage device' instead.
Windows will then get full filesystem access to the device and will provide a drive letter for it. This way of accessing the
device is a lot faster then using MTP/WPD and is recommended if available.

Under WPD:\ all portable device are listed. If the device is not shown try to refresh the view by pressing the refresh button
or F5/F2 (depending on setup).

The content of a portable device will be shown as a filesystem.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 80


Multi Commander Documentation

FileSystem - FS-Reg (REG:)


The virtual filesystem device extension FS-Reg (REG:) allows the Windows Registry to be accessed as a filesystem under
the device path REG:

Since Multi Commander treats it as a file system most things you can do in a filesystem can be done in the Windows
Registry.

To browse the registry you select "Windows Registry" from the device list dropdown, or you can type in a registry path in
the command line field e.g. "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\" and it will go to the
path you specified. You can also type REG: if you want to browse to the registry location yourself.

When you create a new folder in the registry you are actually creating a new registry key. You can also Delete keys and
values or Rename them. You are able to copy keys and values from one place in the registry to another and you can also
copy keys and values to disk where they will be represented as folders and files. You can also copy them back from the
filesystem to the Registry.

Create New Value


Select what type of value you want to add from the context menu (normally triggered by the right mouse button or the
context menu key on your keyboard).

http://multicommander.com Generated : 10-Apr-2021 15:25:26 81


Multi Commander Documentation

Export Values
Selecting export from the context menu will allow you to export registry values to a standard .reg file. The difference
between this and the export function in Windows' Registry editor is that here it will only export the values that you have
selected. You do not need to export the entire key contents.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 82


Multi Commander Documentation

FileSystem - FTP (FTP:)


The virtual filesystem device extension FTP (FTP:) allows network connections to other machines using the FTP protocol.

An FTP connection will be integrated into Multi Commander's virtual filesystem and the connection can then be access as a
normal filesystem.

The filesystem location FTP: is special; special FTP commands and all FTP bookmarks exists there. When an FTP
connection is established the virtual filesystem will connect that location to a numbered device, between 0: and 9:. The
first FTP connection will be 0:, the next 1:, and so on.

Quick Connect
The Quick Connect command will open the Quick Connect window, allowing a connection to be created without adding an
FTB bookmark.

Enter the information needed to connect to an FTP site. Press the Connect button to complete the connection.

By checking the option "Add to bookmarks" a bookmark for this site will also be created.

The quick connection information (but not the password) is remembered for the next time you need to connect to the site.

Uncheck the option "Remember site" and the Quick Connect window will not remember anything entered into it.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 83


Multi Commander Documentation

Add/Edit Bookmark
This command will show the Site Manager window. In this window new bookmarks for sites can be added, removed or
changed.

Create a new bookmark by pressing the "New" button. Then enter all the information needed for that bookmark and the
press the "Save" button.

The "Duplicate" button will create a duplicate of the selected bookmark. Change the Name and edit the new bookmark
and then press the "Save" button.

Too delete a bookmark, first selected the bookmark to delete and then press the "Delete" button.

When closing the Site Manager window the FTP: view should refresh and show the new sites. If this does not happen do a
manual refresh by pressing the refresh button or the press F2/F5 (depending on setup).

Connect
Connecting to an FTP site can be done from the Site Manager by selecting the bookmark to connect to and pressing
"Connect".

Executing a bookmark in the list by double-clicking it or by selecting it and pressing the return/enter key will also initiate a
connection to the site.

Logging is very important in FTP. The FTP Logs are used to store error messages, but the FTP server also uses the logs to
show shows information about the site you are connecting to. Most FTP servers will save a lot of important connection
information here.
A log tab will be created for every site or bookmark for which a connection is made.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 84


Multi Commander Documentation

Disconnect
Press the disconnect button located in the Explorer Panel to disconnect from the FTP server.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 85


Multi Commander Documentation

FileSystem - Favorites (FAV:)


The virtual filesystem device extension Favorites (FAV:) allows favorites in Multi Commander to be browsed like a
filesystem.

Accessing the favorites from the filesystem you can you drag and drop to add new favorites or to copy files to another
target as a favorite.

Drag a file/folder and drop it on an empty space or on another section to place a favorite there.

Drag a file/folder and drop it on a existing favorite and a copy operation of the dragged files to that favorites target
location will be started

Right-clicking a favorites item will allow you to edit or remove favorites. Normal file operations like rename/delete will also
work on favorites.

Read more about Favorites here

http://multicommander.com Generated : 10-Apr-2021 15:25:26 86


Multi Commander Documentation

Copy/Move Operations
To copy or move files and folders you first have to select the desired items; then there are a number of ways to start the
copy/move operation:

1. You can drag and drop the selected files to where you want them copied or moved
2. You can select "Copy..." or "Move..." from the File menu
3. You can press the Copy or Move Button in the button panel, or in the File Commands toolbar
4. You can press the shortcut key for the Copy or Move command
(The default for Commander-style setup is F5/F6, for Explorer-style it is F4/F6)

When a Copy or Move operation has been requested a dialog asking where to copy/move the files to is shown.

The default target for the copy/move operation will be the path of the target panel.

To start the Copy or Move operation simply press the OK button.

Running multiple copy/move operations concurrently on the same disks can affect performance.
Therefore, if another Copy or Move operation is already in progress a dialog will be shown asking if the new Copy/Move
operation should be added to the queue of operations that are already running.

Read more about the Progress Window that will be shown during the copy/move operation.

Exceptions for a Single File

If you are copying/moving a single file then the file name will also be shown in the target path field. This allows you to
change the target name of the file if you wish.
If the target path is removed and only a filename is entered, then the file is written to the same path that it is read from but
it is written using its new name.

Options

http://multicommander.com Generated : 10-Apr-2021 15:25:26 87


Multi Commander Documentation

Pressing the Options button causes the dialog to expand and show the basic file operation options.

Filters
Filters can be used to exclude files and folders from being copied/moved. Prefix the filter with "-" to exclude files and "/" to
target only folders. Separate filters with spaces; if a space is needed in the filter then put quotes (") around the filter.

Examples..

*.jpg *.tiff Only copy jpg and tiff files. Subfolders will be copied but only files matching the filter will be copied.

-*.jpg Do not copy/move any jpg files.

Do not copy/move any folder named "Img" (all files inside that folder will also be ignored).
-/Img -*.txt
Also exclude all .txt files.

Auto Close
These 2 options specify when the copy/move progress bar should be closed: automatically after the operation is complete,
and if it should close only for short file operations. The default values for these options are configured in Core Settings.
( Menu -> Configuration -> Core Settings -> (tab) File System ).

When you only perform short copy operations such as copying a few images that will only take a few seconds, then you
might want the progress dialog to auto-close when finished. However if the copy operation takes a very long time such as
copying thousands of files, then you might want to keep it open after it is finished.

FileOperation Plug-in profiles


FileOperation Plug-ins can be used when copying/moving files.These plug-ins can interact with the copy/move operation
at difference stages of the process: when files are placed in the queue, before they are read, during data transfer, and after
a file is written. Multiple plug-ins can be run consecutively, therefore the plug-ins can be assigned to profiles and you
select which profile you want to use.

The FileOperation Plug-in Profiles are modified and configured in the "FileOperation plug-in Profile manager"
dialog that is opened by clicking on the "..." button next to the FileOperation Plug-in profiles drop-down list.

By default 3 plug-ins are included in Multi Commander:

1. Copy Content

This plug-in takes the content of selected folders and places them in the queue as if you selected all the files in
those folders rather than the folders themselves.

This plug-in is mainly used when merging multiple folders into a single target folder. For example, the folders

http://multicommander.com Generated : 10-Apr-2021 15:25:26 88


Multi Commander Documentation

D:\Images1, D:\Images2 and D:\Images3 are selected and copied using the Copy Content plug-in to D:\All-
Images. Thus all the content from those three folders will be merged together into D:\All-Images.

Without this plug-in you would get 3 folders in D:\All-Images named Images1, Images2 and Images3, each
containing all its respective files. To merge all the folders together you would have had to go into D:\Images1,
select all its files and copy them to D:\AllImages, then repeat that process for each of the other folders you wanted
to merge.

2. AutoSort (A-Z)

This plug-in will effectively modify the target location of the selected files and folders and distribute them into an A-
Z folder structure in the selected target location.

For example if the file "D:\Images1\Australia_001.jpg" is specified to be copied to D:\Images, it will be placed in
D:\Images\A instead.

3. Unpacker

This plug-in will unpack all .zip/.rar files (depending on configuration) into the target folder instead of
copying/moving them.

For example if it is told to copy the file "D:\Images_Collections\TripAustralia.zip" into D:\Trips, then it will take
all the files inside the .zip archive and copy them into D:\Trips instead.

Advanced Options

http://multicommander.com Generated : 10-Apr-2021 15:25:26 89


Multi Commander Documentation

Pressing the Advanced button will expand the dialog and show the Advanced Options. These are options that are rarely
changed; some options here should only be changed if you really know what you are doing.

Keep incomplete/broken files


If a file operation is interrupted when copying a file and the file is incomplete, or if an archive filesystem plug-in for
.zip or .rar files informs you that the unpacked file is broken (the CRC check may have failed, for example), you can
select if you always want to keep it, delete it or be asked what to do each time it happens.
The default value for this option can be configured under the "Filesystem" tab in Core Settings (found under Menu
->Configuration).

Keep date and time


Check this if you want the original date and time of the files you copy/move to be retained.

Junctions / Symbolic Links


If the copy/move operation comes to a Junction or Symbolic link in the filesystem, you can configure how it should
be handled. The default for this option can be configured under the "Filesystem" tab in Core Settings (found under
Menu ->Configuration).

(Symbolic links only exist on NTFS file systems, but not on Windows XP/2003 and older.)

http://multicommander.com Generated : 10-Apr-2021 15:25:26 90


Multi Commander Documentation

Follow Links

This specifies that Multi Commander should copy the file/folder of the link target to the target folder.

Copy/Move Link

This will create a new link on the target and this link will point to the same location that the source link is
pointing to. This requires you to have permissions in the filesystem to create Symbolic Links or Junctions.

Ignore Links

This will ignore all types of links, and will not follow or copy/move them.

Read/Write Strategy
This is a list of different read/write strategies that can be used when reading/writing data. The system tries to
determine what read/write strategy is best for the current operation and it will automatically select it. It is possible
to select another one and also configure the strategy using the "..." button. This is however not recommended
unless you are an expert.

Speed Limit
This allows you to limit the maximum speed of the copy/move operation.
This feature is not yet enabled, and cannot be used at present

Save As Default
Pressing this button will save the settings you have currently chosen as the default values for all future copy/move
operations. The next time you start a copy operation and this dialog is shown the configuration will be preset to what you
have now.

Set/Change Presets
Presets are a special feature whereby you can save some or all configurations including filters and target locations. These
configurations can then be loaded using the functions keys (F1 to F10). A preset can also be configured to be auto-loaded
when you start a copy/move operation from a specific folder.
Read more about FileOperation Presets

http://multicommander.com Generated : 10-Apr-2021 15:25:26 91


Multi Commander Documentation

Copy/Move using Presets


Creating a preset is heplful if you frequently copy or move files from/to the same locations and are using filters or other
settings that are not set by default. The preset will store those settings for you, and you can load that preset with a simple
press of a button (F1 to F10 ). If you always want to load the preset when you start a copy or move from a certain path,
you can make the preset auto-load and you do not even have to press a button to load it.

To create a preset begin your normal process of copying/moving the file. Set the filter and FileOperations plug-in and
other options you want to use. Then expand the dialog to its maximum size and click on Set/Change Preset.

Select a free Presets slot and enter the name you want to use for the preset. Then check the options you want the preset
to store.

You can also check the option to "Set Target Location to..." if you want the preset to store the target location and always
set that location as target no matter what path you had as target when you started the copy/move process.

If you want to Autoload the preset, you need to add the source path it should be connected to. (Wildcard for the path is
supported.)

http://multicommander.com Generated : 10-Apr-2021 15:25:26 92


Multi Commander Documentation

In this example you will see that we have a preset that we named "Pictures", and we wish it to store all the Copy/Move
Options, Filters and FileOperation plugins that we defined previously (before going into this dialog). We also want the
target path to always be set to "E:\Pictures\" and the preset to be auto-loaded when we start a copy/move operation from
"D:\Pictures\".

When you enter the Copy/Move dialog to start a copy/move operation and a preset is auto-loaded, you can unload the
preset with F12 or press the "Unload Preset" button that appears next to the OK button. (not shown in screenshots)

http://multicommander.com Generated : 10-Apr-2021 15:25:26 93


Multi Commander Documentation

Copy/Move files and folders using Filters


When copying or moving files and folders you can use a filter to limit the files and folders that should be processed.

If a filter should match a folder then prefix the filter with a slash "/" and if you want to exclude any files prefix it with a
hyphen "-". If a folder should be excluded type the hyphen first ( eg "-/MyFolder" )

Example #1
A number of folders were selected and we chose to copy them to E:\Pictures\. Using filters we also specify that we only
want to copy the *.jpg files. We also select the AutoSort plugin so the files will be stored in A-Z named folders.

Example #2
Some folders have been selected and we chose to copy them to E:\Pictures\. In filters we also specify that we want to
include all files (*.*) but we want to exclude the folder named Japan and all *.tiff files.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 94


Multi Commander Documentation

Copy/Move - Progress Window

When a copy/move operation is started a progress window is shown.

The progress window shows you the speed and progress of the current file/folder and the total progress of the entire
operation.
You can pause the operation by pressing the "Pause" button. The button's name will then change to "Continue" and you
can press it again to continue processing.

To stop the copy/move operation you can press the "Abort" Button or you can press the X button in the caption bar.

Pressing the "Skip" button will allow you to skip the current file. It will then continue on to the next file in the queue.

Show Queue
Pressing the "Show Queue >>" button will allow you to see the copy/move queue.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 95


Multi Commander Documentation

http://multicommander.com Generated : 10-Apr-2021 15:25:26 96


Multi Commander Documentation

Delete Operations
You can delete files or folders using any of the following methods:

1. The Delete Button in the File Operations toolbar.


2. The Delete Button in the Button Panel.
3. The Function Key F8 or Delete key
4. From the Menu -> File -> Delete

All these methods display a dialog that lets you modify options for the delete operation, as shown below:

The following options are available:

Delete to Recycle Bin


When checked, the selected files and folders are moved to the Recycle Bin and can be recovered if needed. When
deleting files inside an archive or on a network device, this option will be disabled and cannot be selected.
It is possible to configure if this should be enabled/disable by default under Menu -> Configuration -> Core
Settings..
Holding the shift key down before this window is shown. (Eg pressing Shift+Del), will toggle the Recyle Bin option.

Only Files
If checked, only files are deleted. Files in folders will be deleted but the empty folders will remain on the filesystem.

Junctions and Symbolic Links


This section controls how Multi Commander should react when it finds Junctions and Symbolic Links. The
recommendation is to ignore or remove the link (if permissions allow it).
It is not recommended to set Follow links, which should be used only if you really know what you are doing. A
warning is shown if that option is selected.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 97


Multi Commander Documentation

Pack Files
To pack files/folders into an archive you first need to select the files and folders you want to pack.

To start a pack operation, either press the shortcut (default Alt+F5 if running with Commander-style setup) or select
"Pack files..." from the File menu.

From the Pack Files dialog you can select which packer profile you want to use. Different profiles can use a different
packer with a different default configuration.

To reconfigure a profile, press the "Configure" button. You can then configure the selected Packer Profile, eg. change
compression levels and whatever other options that packer supports.

Press "Manage Profiles" to Create or Delete Packer profiles.

Source (Button)
This button changes the source path for the packed file to the path of the source Explorer Panel.

Target (Button)
This button changes the target path for the packed file to the path of the target Explorer Panel.

Pack folders into individual files


When this is checked, each of the selected folders will have its files packed into a separate archive file (using the source
folder name as its filename). Otherwise, the selected folders will be combined into a single archive file. They will not be
packed individually.

Filter
You can specify Filters to include and/or exclude files/folders when packing. These filters work the same as filters in the
Copy/Move options here.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 98


Multi Commander Documentation

Packer Profiles
The Pack Files dialog lets you manage Packer Profiles by pressing the Manage Profiles button. This displays a Packer
Profile Manager dialog that lets you create your own Packer Profiles or change the default values of any existing ones.

Select the Packer Profile you want to change or press the "Add Profile" button to create a new one. Then select which
packer you want to use (eg. Zip or 7-Zip) and press the "Configure..." button to configure the default values for this profile.
The Default values are those values the packer should use if the user does not change any in the Pack Files dialog.

External Packers
This is not activated yet.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 99


Multi Commander Documentation

Packers - External Packer Profiles


The Packer Profiles do not yet support external packers. But this feature is on the roadmap and will be included.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 100


Multi Commander Documentation

Unpack Files
Select the file or files that you want to unpack then select Unpack file from the File menu or press the keyboard shortcut
(default: Alt+F6).

Shortcuts

Alt+F6 - Unpack selected files

A dialog will be shown where you can choose where the file should be unpacked. By default the path in the target panel is
selected.
You can easily toggle between the source and target path by pressing the source/target buttons.

If the files are unpacked into the same folder they are located in (source folder) then they will be be unpacked into a folder
with the same name as the packed file, but with no file extensions.

For example if you unpack c:\temp\myfile.zip into c:\temp then it will be unpacked into c:\temp\myfile\

Filter
It is also possible to specify a filter. The filter will exclude and/or include files/folders from the unpacking. The filter works
the same as the filter for file copy.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 101


Multi Commander Documentation

MultiRename

Overview
With MultiRename you can rename multiple files or folders by creating a rename rule.

You can easily select part of the existing file name, add text, replace characters or words, insert file property data in the
file name, (eg. Date, Exif information for photos and much more )

Undo information is also saved so that if you rename files incorrectly or rename too many files by mistake, you can easily
load a previously-renamed session and undo it.

If you are perform the same MultiRename many times you can save the rules and then load them when you need them
again.

Rename Rules
By inserting different tags you will insert different text parts into the name.
Pressing the [<] button next to the filename and file extension field will show a list of the most common tags you can use. If
you press "Plugin and more..." you will see a list of all the extended tags you can add.

You also can specify parameters in the tag. The parameters determine which part of the tag text will be inserted.

[<tag>] Insert the complete text from the tag


Insert the first specified number of characters from the tag.
[<tag><num>]
Example [N4] will insert the first 4 letters of the filename
(same as above)
[<tag>,<num>] Insert the first specified number of characters from the tag.
Example [N4] will insert the first 4 letters of the filename.
Insert the text from position "FromPos" of the tag data. But with a max length of
<tag>,<FromPos> ,<Length>]
<Length> Example [N,3,4] - If filename is "MyFile" then it will insert "File"

Special tag - Counter [C]


There are some special tags that works a bit differently. The counter tag [C] is one of them. By default it is controlled by
the counter option specified in Multi-Rename window. But you can override that by using tag parameters.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 102


Multi Commander Documentation

[C] Insert a default counter tag


Insert a default counter tag that will start counting at <startnum> and increment the
value by <inc> for every file
[C,<startnum>,<inc>]
Example [C,10,2] - will start at 10 and increment the value with 2 so you will get
10,12,14,16
the two first parameters work as above, <digits> let you specify how many digits you
[C,<startnum>,<inc>,<digits>] want to have as a minimum
Example[C,10,2,3] - will start with 10, but since digits are 3 you will get 010 , 012, 014

Special tag - Current Date/Time [Y],[M],...


Another special tag is the date/time tags. They will give you the date/time elements of the current time.

[Y] Insert current year as 4 digits, eg. 2016


[Y,2] Insert current year as 2 digits, eg. 16
[M]
[D]
Inserts Day, Month, hour, minutes, second of the current time.
[h]
Month and days will be inserted as digits. If the month is April it will insert 4
[m]
[s]
[M,<digits>]
[D,<digits>]
Inserts Day, Month, hour, minutes, second of current time.
[h,<digits>]
It will insert a minimum of specified digits. If month is 4 it and <digits> is set to 2 it will be inserted as 04
[m,<digits>]
[s,<digits>]

Special tag - Date/Time property from Plugin.


If you want the file date/time then you need to select a tag from the plug-in list, for example the
[?ExtendedProp.datecreate] tag.
(Note that all plug-in tags starts with a ?)

All file properties from plugi-ns that return a date/time will return the date/time formatted using system settings.
This can be a problem since if time is returned as 12:22:22 the rename will fail since ":" is an invalid character for
filenames.
You then need to replace the : with some other character (or blank) in the Search and Replace section in the
MultiRename windows.

You can also specify a custom date and time formatting for the tag.

Insert current date/time from this date/time file


property. The date/time is formated using current
system settings, so it might return 2013-03-03 08:23:23
[?ExtendedProp.datecreate]
(see warning above)
Make sure you replace invalid characters in "Search and
Replace" or you might get rename problems.
Insert current date/time from this date/time file property
using a custom date/time formatting
[?ExtendedProp.datecreate-{dateformat|timeformat}]
Example: [?ExtendedProp.datecreate-{yyyy-MM-
dd|HHmmss}]
Insert only the date part using custom date formatting
[?ExtendedProp.datecreate-{dateformat}]
Example: [?ExtendedProp.datecreate-{yyyy-MM-dd}]
Insert only the time part using custom time formatting
[?ExtendedProp.datecreate-{|timeformat}] Example: [?ExtendedProp.datecreate-{|HHmmss}]
(Do not forget the | before the time format.)
You can still use the FromPos and Length parameters
[?Ex...datecreate-{dateformat|timeformat},<FromPos>,<Length>] Example: [?ExtendedProp.datecreate-{yyyy-MM-
dd|HHmmss},1,5]

http://multicommander.com Generated : 10-Apr-2021 15:25:26 103


Multi Commander Documentation

How the date and time format works Date Formatting - Time Formatting

Examples

Tags Original filenames New Filenames


Done.txt Pre-one-001-X.txt
File: Pre-[N,2,4]-[C,1,2,3]-X
MyFile.txt Pre-yFil-003-X.txt
Ext: [E]
Todo.txt Pre-odo-005-X.txt
Song A.mp3 01 - Song A - Trance.mp3
File: [C] - [N] - [?MCAudioProp.genre]
Song B.mp3 02 - Song B - Pop.mp3
Ext: [E]
Song C.mp3 03 - Song C - House.mp3

http://multicommander.com Generated : 10-Apr-2021 15:25:26 104


Multi Commander Documentation

File Checksum - Create or Verify file CheckSum


(CRC/SFV/MD5/SHA1)
Using the File Checksum extension you can create and verify checksum files.

Supported checksum files are: SFV(CRC32) , MD5 and SHA1.

You can both create and verify .sfv .md5 checksm files and also compare verification values directly.

You can verify multiple .sfv / md5 files at the same time. If you send a folder to the File Verifier it will scan that folder for
all .sfv /.md5 files found.

Read more about Creating Checksum files.

Read more about Verifying Checksum files.

Under the Tools menu you will find a couple of quick commands for File Checksum. Read more about them here

http://multicommander.com Generated : 10-Apr-2021 15:25:26 105


Multi Commander Documentation

File Verifier - Create


To create a new checksum file or to compare checksum values, first select File Verifier from the Extension menu, then click
the New button in the File Verifier toolbar that is shown.

In the Create New Checksum dialog, select which type of checksum file you want to create, SFV or MD5.

A new .sfv or .md5 item will be created and named "Untitled sfv file.sfv" for .sfv by default. To change the name you need
to click to edit it. If the name is not changed, a new name will automatically be generated from the name of the first file
that is added to this checksum file.

Add Files
Add files to the checksum file by using the "copy" command or drag and drop the files you want to add.
(The default keyboard shortcut for copy is F5 if using CommanderStyle setup, or F2 for WindowsExplorer style.)

When all the files have been added, press the start button in the File Verifier toolbar.
The checksum for all the files will now be calculated and saved into the checksum file you specified.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 106


Multi Commander Documentation

File Verifier - Verify


There are two ways to verify checksums: Verify Checksum Files or Verify a Checksum Value directly.

Verify Checksum Files (.SFV .MD5)


If you have a .sfv or .md5 file and want to verify the checksum for the files that this file references, simply launch the
checksum file from within MultiCommander and the File Verifier will automatically start a verify process.

You can also start the File Verifier Extension you select and then copy or drag and drop the .sfv or .md5 files to the panel
with the File Verifier open. If you copy or drag and drop folders the verifier will scan those folders for .sfv or .md5 and
automatically add them to the file verifyer layout.

Press the Start button in the file verifier toolbar to start the verify process

If Errors found
You will be presented with a dialog asking what to do with the offending files. You have the option to rename or delete
them, or to do nothing.

Context Menu
From the context menu (right mouse button click) you can choose to rescan files that previously failed or to remove from
the list all files that were successfully scanned.

Verify Values
Sometimes you want to verify a file you for which know the checksum values but have no .sfv/.md5 file for. In this case you
can create a new file verification with the New button and select "compare value".

You then copy or drag the file you want to verify, click in the "expected value" column and fill in the expected value.
Finally, press start to begin verifying.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 107


Multi Commander Documentation

MultiDataViewer - The File Viewer


To view the content of a file, select "View File" from the File menu, or press the keyboard shortcut key F3 (the default if
using the Commander-style setup).

The Default File Viewer in Multi Commander is MultiDataViewer. It is a file viewer that has some unique features.

MultiDataViewer Features
MultiDataViewer can:

View files of any size, even if the file is several gigabytes, using very little memory
View files as ASCII / Unicode / UTF8 / Binary and Hex
Be extensively customized. Font / Color / Background / Gridlines / Strip and more can be changed using
different profiles that are loaded for different files based on format or file type
Support syntax coloring
Support links. Links in the text are clickable, so you can click on the link and a browser will be opened for that
location
Highlight all the words in different colors
AutoSelect an entire word when double clicking on it (It is possible to customize what special characters are
allowed in a word)
Copy selections to the clipboard or save selections to a file
Support Drag & Drop. Drop a file on MultiDataViewer to view it
Provide MouseWheel Zoom: hold CTRL down when using the mouse wheel and it will increase / decrease font
size
Queue files to view and Go to next/previous file with CTRL+ PAGEUP / PAGEDOWN
Auto-reload files if changed (very useful when viewing a live log file)

http://multicommander.com Generated : 10-Apr-2021 15:25:26 108


Multi Commander Documentation

Multi Commander Internal Picture Viewer

The Multi Commander Picture Viewer supports most common picture formats, such as jpg, png, gif, bmp, tiff, psd and
many raw formats.

If the picture has an exif tag with rotation information it will auto-rotate the picture for you when it is viewed. You can also
manually rotate and flip the picture if you wish. You can also re-save the picture after it has been rotated.

JPG pictures will be saved using lossless operations, so that the quality of the picture is not degraded.

It is also possible to set a picture as your desktop background, and if multiple files are viewed you can select slideshow
mode and it will automatically load the next image every couple of seconds.

Fullscreen mode is supported by pressing F11, and you can also zoom the picture using the + / - keys or the mouse wheel.

Show Picture Information


EXIF and picture information can be shown above the picture.

Pressing I will toggle the display of Picture Information (Left)


Pressing E will toggle the display of EXIF information (Right)
Pressing T will toggle the display of timestamp information from the EXIF data (Bottom center)
Pressing P will toggle the display of Photo Information taken from EXIF data (such as Exposure, Bias, F/Num, ISO)

http://multicommander.com Generated : 10-Apr-2021 15:25:26 109


Multi Commander Documentation

Shortcut Keys
ESC - Close Picture Viewer
Ctrl-R - Rotate 90 degree
Ctrl-F - Flip image Up/Down
Ctrl-M - Mirror image Left/Right
Ctrl-S - Save changes to image
Ctrl-C - Copy image to the clipboard
Ctrl-0 - Auto zoom - Stretch to fit
Ctrl-1 - Zoom to 50%
Ctrl-2 - Zoom to 100%
Ctrl-3 - Zoom to 150%
Ctrl-4 - Zoom to 200%
+ - Zoom In
- - Zoom Out
Ctrl+Shift+R - Resize
Ctrl+Shift+S - Save As...
Ctrl+Shift+G - Make Greyscale
Ctrl+Shift+I - Invert colors
Arrow Keys - Move zoomed in image inside the window
I - Show Picture Information
E - Show Exif Information
T - Show Timestamp
P - Show Photo Information

http://multicommander.com Generated : 10-Apr-2021 15:25:26 110


Multi Commander Documentation

Language Editor

The built-in language editor allows the creation of new language packs or the correction of language texts in an existing
pack.

How Language Files Are Used


Language packs are stored in the Languages folder where MultiCommander.exe is located. Each language pack is a zip
archive; one per language. Each zip files contains all the language files for all the extension/plug-ins for that language.

Multi Commander always reads the English language pack first and store all of the language texts in memory. Then the
language that was configured is read and it will overwrite all of its translated texts. If any text item is not translated then
the English text is used.

Each language pack only contains language files for the built-in Core and any Extensions/Plug-ins that are delivered with
Multi Commander. So an Extension/Plug-in created by a user in their own language will not be found here. If Multi
Commander does not find a matching language file in the language pack, it will search for the language files in the folder
where the extensionor plug-in is located

Having the language files in a zip archive is not optimal when creating translations or modifying them. They are harder to
test and verify. Also the built-in language editor needs to have them unpacked.
When started Multi Commander will first look for the unpacked language packs in the "Languages" folder and if a version
match is found they will beused. If Multi Commander is newer than the unpacked language files, they will not be used.

Tip
Type ":gouserdata" in the command line bar to take you to the Multi Commander UserData folder (eg.
"C:\Users\Mathias\AppData\Roaming\MultiCommander\UserData\")

When starting the Language Editor it will ask if it should unpack the language pack to the UserData folder.

The next time that Multi Commander is started it will read the unpacked language files from the UserData folder, allowing
modifications and additions to be verified

When the unpacked language files in the "UserData\Languages" folder are no longer needed or wanted they can be
deleted. Multi Commander will then automatically revert to loading them from the zipped language packs again.

Language Editor Panel

http://multicommander.com Generated : 10-Apr-2021 15:25:26 111


Multi Commander Documentation

The language editor panel allow text items to be modified. It is also possible to add support for new language and to export
a language pack.

Save Button
The save button will save all the changes for the currenly selected language.

Language Properties Button


this opens a dialog showing properties for the selected language, for example the language name and language code it
should use.

Type Dropdown
This lists which extension/plug-in types existis in Multi Commander. Select one and the next dropdown will update with all
the extension/plug-ins for that type.
Each extension/plug-in has its own language file.

Extension/Plug-in Dropdown
List all extensions/plug-ins for the selected type. Select an extension/plug-in here and all text items for it will be shown
using the language that is set in the Language Dropdown

Language Dropdown
List all available languages and (at the bottom) there is an option to add a new language.
Change language here and the list will reload with the text item for the selected extension/plug-in for that language

Export/Send Button
The Export/Send button will allow a language pack to be exported (or to be sent to Multi Commander staff for inclusion
into next release).

Restore Button
The Restore button allows previous versions of language files to be restored. Each time you press Save it will backup the
previous version and you can retore to a previously-exported language pack.

Text Item List


There are three columns in the text items list: ID , Text and Description/Tooltip/Caption/...

The ID is the Text ID used to identify the text item. It consists of a letter + a number. The letter is a way to categorize
different text IDs. Often M is used for text items for Menu Items, D for Dialog, E for Rrror Messages, C for Commands. The
Text item in the picture above is under C, ie. 231 that is selected is actually C-231.

The Text column is the main text that shown for that Text ID.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 112


Multi Commander Documentation

The Last Column is the secondary text item . Every Text ID can have two text items, one main and one secondary. The
secondary is often used for the Tooltip ("hover" text), but can also be used for the descriptive text for script commands, or
as a caption for an error message.

Text items in Red and Italic are text items that are NOT translated; the core English text is shown instead. The red items
are NOT saved to the localized language files. The localized language files should not contain any English texts. The
English text for untranslated text is automatically picked up (since the English language file are always read first).

Items shown in BOLD are text items that are modified but not yet saved.

By clicking the right mouse button it is possible to opt to show only untranslated items: no translated items are shown and
only red, untranslated items remain.

Create New Language Pack


Start the language editor and from the language dropdown select the last option "-- Add New Language --".
The Language Properties window will open.

There are two language name fields. The first is the language name in English and the second is language name as spelt in
the language that is being added.

Under "Culture name code" enter the two or five letter code for that language. If several variations of the language exist,
you should add using the five letter code, so there will be no conflicts.

In "Matching Languages" enter all the language codes that match this language's codes. This field will be used to auto-
select the correct language. So a user running Windows set to any of the matching languages, that language will be auto-
selected the first time Multi Commander is run for that user.

As an example from the image above: if a user has Windows language set to "sv-FI" it will pick the language pack that is
about to be created.
"Matching Languages" can be changed later by pressing the Language Properties button next to the Save button

Press Save to create support for that language. The file UserData\Lanaguge\SupportedLanguages.xml is then updated and
Multi Commander will use this file next time it starts.

It is not possible to start translating using the language editor.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 113


Multi Commander Documentation

Special Characters
Some text items can contain control characters and these must be retained.

The most common such character is \n, meaning "new line" and is most often used for text shown in text blocks or message
boxes. Make sure there is no space after the control character.

"Line1 \n Line2" = Wrong - "Line2" text would then have an extra space before the text "Line2" text.
"Line1\nLine2" = Correct - There is no extra space character before the "Line2" text

There are also %s and %d , meaning that strings or numbers will be inserted at these positions and so these control
characters must also be kept

For example, in an Explorer Panel there is a Text ID "L-31" that looks like: %s/%s in %d/%d Files and %d/%d Folders
selected

All the %s and %d control characters will be replaced with strings and numbers when the text item is used.

Another common control character is the & (ampersand) character. This control character is a text item used in menubar
or popup menu items and is used to underline automatic Shortcut (hotkey or accelerator) characters.

Automatic Shortcuts
Menu items and popup menus can be activated using the keyboard. For example, if you press the Alt key, the "File" menu
on the menu bar is highlighted.
Note that the File menu now has an underscore under the F and the Edit menu has the E underscored.
The menu bar options now read: File, Edit, View, and so on.

The underscore below V in the View menu means that you can now press V to drop that menu. The menu that opens can
also have underscores for many of its menu items such that they, too, can be accessed them quickly using the keyboard.

The decision on which letter is used as a shortcut (accelerator) is decided by the menu item text. Any & characters in a
menu item text will underscore the followin character and it will be used as a shortcut (accelerator) automatically. For
Example, "&View" will be shown as "View", and "Vie&w" would be shown as "View.

This is not unique to Multi Commander, but is a long-standing Windows behaviour. For every menu that is shown there
should be no duplicated shortcuts. For items within a menu there should not be more than two (where possible) items that
have the same underscored letter. The shortcut will activate the first one.
To avoid this situation the & character may need to be moved to precede another character in the translated text.

Edit Language Files With External Editor


Some people find it easier to translating with their favourite text editor. To do that you first need to follow the same steps
as above when creating a new language.

Since language files do not contain untranslated text you need copy the English files to the new languages which you are
creating. This requires a bit of manual work.

Unpack the english language pack file manually MC_LangPack_en.zip


Rename all of the files to match your new language. If your new language culture code is "se" (as in the example
image above) you should rename then *_en.xml part of all the language files to *_se.xml
Then zip them all together again to a file called MC_LangPack_se.zip and place that archive in the standard
language pack folder
Go to UserData\Languages\ folder and delete everything EXCEPT "SupportedLanguages.xml". Do not delete that
file since this file will be updated with your new language
Start the Internal Language Editor again and it will unpack all language packs again to UserData\Languages\
Start editing the new language files located in UserData\Languages\ in your favourite editor
When done, start the Internal Language Editor and select Export/Send to export or send the language pack

Editing new language files in the UserData\Lanauges location is going to make the export function work without any
problems. So then you can create a language pack for sending to be included into the next version of Multi Commander.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 114


Multi Commander Documentation

Be aware...
When editing the language files with an external editor the files are in a format called xml and they are encoded using
UTF8. Be careful not to remove xml tags. If xml tags are destroyed the entire xml file will be unreadable. Also special
characters like & and " might need special encoding.

If a language files is not readable by Multi Commander try to open the xml file in a webbrowser. If some xml tags have
been lost the browser can often report that it found an xml error on line xx and you can locate and correct the error.

Submit Language Pack


After modifying an existing language or created a new one, a new language pack for that language may be required; so
that it can be moved to another machine easily or sent to the developer of Multi Commander to be included in the next
release. To create an updated language pack, first make sure that the Language dropdown is set to the language you want
to create a language pack for. Then press the "Export/Send" button.

A window will open that has a dropdown with three options. This is to select which type of language pack you want to
create.

Internal format (Submit to developer using e-mail)


This will create a Language pack in the internal format. This is used if you are sending the Language pack to the
developers of Multi Commander via email.
Internal format (Submit to developer using HTTP) (this is the recommended option)
This will create a Language pack in the internal format and this will then be sent to the MultiCommander web
service and there is no need for email.
However, using this method you need a Submit key that you can get by contacting Multi Commander staff.
A key is needed so that not just anybody can submit incorrect changes that could destroy a language pack.
This process is entirely automatic and language packs received this way will automatically be included in the next
version. If you have a Submit key you can submit language changes as often at you like.
Export to Public Language Pack Format
This will export the language pack in the public format. this is the same format as the language files found in the
install folder. This format is used if the language pack created should be shared with somebody else or if you want
to test it on another machine.

Incomplete Translation Work


Multi Commander contains many text items and translating them can be a very long, intensive process.
So if you start a translation but give up because it is too much work, then submit what you have. Somebody else might
continue with where you left off.
A partial translations is better than none at all!

http://multicommander.com Generated : 10-Apr-2021 15:25:26 115


Multi Commander Documentation

Select/Unselect Files and Folders


Under the Edit menu there are a number of special commands for selecting files and folders.

Select using filters


The Select and Unselect options show a select/unselect dialog where you select files using filters. You can enter a
wildcard filter to select/unselect files, eg. "*.jpg *.tiff" for all jpg and tiff files. Separate multiple filers with a space.

Save/Load Selection to/from File or Memory


Save selection to file will save all the selected files to a filename you specify. You can then load that file and recover all
of your selections at any time.

Load selection from file will load a file and treat every line in that file as a selection filter. Each line can be an exact
match for a file/folder that you want to select or it can be a selection filter containing wildcards.

Save/Load to/from memory options work the same way but will not survive a restart of Multi Commander.

Compare Folders
Compare Folders will compare the paths in the source and target panel and select differences depending on which
compare command is called

http://multicommander.com Generated : 10-Apr-2021 15:25:26 116


Multi Commander Documentation

It is possible to enable or disable whether the compare command should work on only files or only folders.

Compare Folders, Select Newest/Missing


Will select the files that are missing in the other panel or, if folders/files are found in both panels, the newest file/folder is
selected

Compare Folders, Select Missing


Will select only the files that are missing from the other panel.

Compare Folders, Select Newest


Will find files/folder that exist in both panels and select only the newest of them.

Compare Folders, Select Duplicates


Will select only files/folders that exist in both panels.

Compare Folders, Select Selected


The files that are currently selected in the source panel will also be selected in the target panel if they exist.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 117


Multi Commander Documentation

Calculate Folder Size


To determine the size of folders, you can do any of the following:

1. Select "Calculate folder size" under the Tool menu


2. Press the "Calculate folder size" button in the File Commands toolbar
3. Press Shift + Alt + Return

Size calculation will be performed on all the selected folders. If no folders are selected then the size of all folders will be
calculated.

Selecting folders with the space-key will automatically calculate the size of those folders.

The size calculation is done in the background and can be aborted by pressing the ESC key.

If a folder's size has been calculated, and files are deleted from that folder from within Multi Commander, the folder size
will be automatically recalculated and updated.

The default shortcut key for calculating folder sizes is Shift+Alt+Return.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 118


Multi Commander Documentation

Change File Properties


Attributes and Date/Times of files and folders can be changed from the Change attributes dialog.

Select the files or folders whose properties you want to change, then select "Change Properties (Attributes/Time)..." under
the Tools menu.

Multiple files and folders can be changed at once. It is also possible to change all the files in folders and sub-folders.

Each attribute checkbox can have one of 3 states:

If Unchecked, the attribute will be turned off.

If Checked, the attribute will be turned on.

If Blocked (as 'Archive' and 'System', seen in the image above), the attribute will not be changed: the current attribute will
be kept.

If you hold down CTRL and Double Click in the date or attribute column for a file/folder, the Change attributes window
will be shown, but only for that file/folder, even if multiple files are selected.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 119


Multi Commander Documentation

Create Folders
Using the Create Folder command found under the Tools menu, you can create new folders at the current path in an
Explorer Panel.

The folder specified can be a complete folder path. Intermediate sub-folders will be created as needed.

You can also create multiple folders at once as long as you separate the folder names with ";".

Shortcuts

The default shortcut key for Create Folder is F7.


Shift+F7 will insert the text from the clipboard into the folder name field when the dialog is shown.

When the Create Folder Dialog is shown there are some optional actions that can be performed:
F5 - Insert the text from the clipboard into the folder name field
F8 - Remove all dots in the text name field
F9 - Insert todays date as YYYY-MM-DD in the folder name field
Shift+F9 - Append today's date as YYYY-MM-DD in the folder name field

http://multicommander.com Generated : 10-Apr-2021 15:25:26 120


Multi Commander Documentation

Correct Folder Date/Time


The date/time of a folder is changed whenever you copy a file into it, delete a file from it, or change a file in it. In some
situations this may not be what you want.

For example, you might list and sort those folder by date, and you want the date/time of the folder to show the date/time of
the most recent file in that folder rather than when something was last changed in the folder.

This tool will scan the selected folder and subfolders and set the date/time of the folders to that of the most recent file it
finds.

Select the folder you want to change then select "Correct folder date/time" from the Tools menu.

You can specify two kind of filters for the scanning: Ignore and Include filters.

Ignore Filter
The first filter is the ignore filter. It specifies the files and folders that you want to ignore when finding the most recent
date/time.
If you enter *.txt here. It will ignore all *.txt files, even if they have a date/time that is more recent than other files.

Include Filter
If you specify an include filter then only files matching this filter will be checked. Eg. if you enter *.jpg here it will only
check the date/time on *.jpg files.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 121


Multi Commander Documentation

Find Opened/Locked Files


If you are unable to rename or delete a file or folder it is possible it is already in use by another program. A program that
uses something in a sub-folder can also lock the parent folder, so that it cannot be renamed or deleted. Which program has
a particular file open is often not obvious, and it can be hard to figure out which program you need to close to be able to
rename or delete the file or folder.

Under the Tools menu you can select "Find Opened/Locked Files" to find what program has a file/folder locked so that
you can close or kill it. If you are running with standard user permission you will only be able to scan the system for
processes that are running under your account: System & Service processes will not be found.

Running Multi Commander as an Administrator will allow you to also find Services and System processes that have files
open or locked.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 122


Multi Commander Documentation

Send to Clipboard
Selecting To Clipboard under the Tools menu opens a submenu that allows you to select and copy various file properties
directly to the clipboard. You then can paste that information wherever you wish.

Properties for all selected files/folders will be sent to the clipboard. If no files/folders are selected the file/folder in focus
will be used.

Which properties to send depends on which command you select. The most commonly-used are the full path including
filename or just the filename of the selected files or folders.

Shortcuts

The default keyboard shortcut for copying the complete path is Ctrl+P
For copying only the file/folder name it is Shift+Ctrl+P

Send to Clipboard is also available on the toolbar and when clicked, the complete paths of selected files/folders are copied
to the clipboard.
If the right mouse button is pressed on the toolbar button a popup menu with the other options is shown.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 123


Multi Commander Documentation

http://multicommander.com Generated : 10-Apr-2021 15:25:26 124


Multi Commander Documentation

Rename Tools
Under "Rename" in the Tools menu there are a number of extended rename operations that can be performed.

These Rename commands are performed on all selected files and folders.

Uppercase / Lowercase renames the selected files/folders to the same name but with all uppercase or all lowercase
letters.

Capitalize renames all selected files and folders to lowercase, with only the first letter in each word uppercase. A word is
defined as a string of characters preceded by space, dot or underscore.

Replace text in name will replace a substring in all the selected file/folder names with other text.

Similar name, different extension is a special rename operation that will only rename selected files (not folders).

http://multicommander.com Generated : 10-Apr-2021 15:25:26 125


Multi Commander Documentation

All the selected files should have the same name but with different file extensions.

The selected files will be renamed with the new name, but the file extensions are left unchanged.

Some of these tools are also availible when right clicking on the Rename button on the toolbar

http://multicommander.com Generated : 10-Apr-2021 15:25:26 126


Multi Commander Documentation

Text Tools
Under the Tools menu you can find some special Text Tools.

There are tools for converting the line endings of text files to those different platforms and a tool for converting tab
characters to spaces.

And you can also reformat XML files to structured layout or compact layout.

You can find more information about them under Text Conversion Tools.

Sort Lines will sort the lines in text files using many advanced options.

Find and Replace will allow you find find and replace text in files. It support MultiLine find/replace matches and many
other options.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 127


Multi Commander Documentation

Convert Tools

Convert Text Files


The contents of all selected files will be converted. The following options are available in the submenu:

Convert To Unix Format (LF)


Convert text files to Unix format, making sure that newline is a single Linefeed (LF) character.

Convert To Windows Format (CRLF)


Convert text files to Windows format, making sure that newline is a Carriage Return(CR) followed by a Linefeed (LF)
character.

Convert To MAC OS Format (CR)


Convert text files to MAC OS format, making sure that newline is a single Carriage Return (CR) character.

Convert Tab to Space


Replace all tab characters with a specified number of space characters.

Reformat XML to Structured


Reformat xml files so they are more readable, by including indentation after the xml items.

Reformat XML to Compact


Reformat xml files so they are compact, by removing all unnecessary newlines and indentations.

Sort Lines..
Sort lines in a file. Read more about this at Sort Lines.

Find and Replace...


Find and Replace text in files. Read more about this at Find and Replace.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 128


Multi Commander Documentation

Sort Lines in Files

Sort Lines has many options to control how the sorting should be done. It will sort lines in all selected text files. The
number of files it will try to sort is shown in the dialog.

Sort Lines will automatically identify file formats: files encoded in ASCII/Unicode/UTF8 are supported. Note that files
identified as binary will be ignored.
The newline character(s) that the file currently has will be kept, So if a file has only CR (carriage return) as a newline
character the new file will also have only CR.

In the Filename field you set what the name of the sorted file will be. Sorted files will always be saved in the same folder as
the original and only the Filename can be set: the original extension will be kept.

If multiple files are select you will see a "*" in the Filename field. The * represents the original Filename and file extension.
If you have two files select named "MyFile1.txt" and "MyFile2.txt" and the Filename field has the value "*_sorted.*" the
new Filenames will be "MyFile1_sorted.txt" and "MyFile2_sorted.txt".

In the Save as... dropdown list you can select to save the new file with a different name. You can also choose to keep the
original name (but rename the original files by adding .bak to its name), or it can delete the original file.

Lines and Position limits

Keep lines at the top


This defines how many line at the top of each file that should not be sorted. For example, if you have a header in the text
file that is 2 lines high you can set this to "2". The new, sorted file will then still have a 2-line header.

Keep lines at the bottom


This defines how many lines at the bottom of each file that should not be sorted. For example, if you have a 3-line footer

http://multicommander.com Generated : 10-Apr-2021 15:25:26 129


Multi Commander Documentation

text this option will ensure that those 3 lines are not moved by sorting.

Start at line position


Where on each line the sorting should begin. If lines should not be sorted beginning at character 1, you can control at
which position it should begin. Changing this settings will change the position of the "*" character in the preview ruler at
the bottom of the dialog. This shows clearly at what position sorting will begin.

Skip Leading spaces


By checking this option all leading white spaces will be ignored when comparing lines during search.

Sort lines by

There are 3 different ways to sort lines: Entire line, Substring or by Line item (record)

Entire line
This will compare the entire line from the defined start position to the end.

Substring, Substring ends at

This can be used if sorting should be based on a specific substring in a text.


Use the option above "Start at line position" to set the beginning of the substring.
Then use any of the following settings to set where the end of the string is.

Fixed length
If the substring that the sorting is based on has a fixed length you can define it here.

End character
If the substring that the sorting is based on should end when it comes to a specific character.

Any white space character


If the substring that the sorting is based on ends when any white space character is found.

Line Item

If every line has items (records) that are separate by a special character you can defined which item/record it should be
sorted by.

Item separator
Which character will separate the items (records) from each other. (Eg. for a comma-separated list, that would be comma
"," ).

Item
Which item on the line the sorting should be based one First item is 1, second is 2, and so on.

Options

http://multicommander.com Generated : 10-Apr-2021 15:25:26 130


Multi Commander Documentation

Sort Method
There are three methods to sort by: Text,Date and Number.

Text
The text to be compared for sorting is plain text.

Date

The text that will be compared for sorting is actually a date or time written as text.
To be able to compare date/time correctly the correct date/time formatting of the date/time must be provided. If the
date/time matching format is not correct the sorting will not be correct.
Press the "<" button under the dropdown list for examples of date/time matching formats to use.

Date Format - Time Format

Number
The text that will be compare is actually numbers: the number will be compared as a digital value and not as text. Leading
zeros (0) will be ignored: only digits will be used.

Language-based sort order


Use the sorting rule that the current language uses. Different languages sort characters in different orders. Checking this
option will cause the sort to be done using the current language settings. This sorting is slower and can affect performance
for very large files.
This options will also disable the "Ignore case" option. Language-based sort order always ignores case.

Ignore case
Ignore case when sorting. "A" and "a" will be treated as the same character (but see 'Language-based sort order' above).

Natural number order


Sort numbers in a natural order. This option also requires the option "Language-based sort order".
Instead of being sorted in the order "Text1","Text10","Text2" it will be "Text1", "Text2", "Text10".
(This option is is not used if sort method is Numbers).

Reverse order
Reverse the sort order. By default sorting will be A to Z and 0 to 9.
Enabling this will cause sort order to be Z to A, and 9 to 0

Remove duplicate lines


This option is not yet enabled

Remove blank lines


After sorting the lines, remove all blank lines.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 131


Multi Commander Documentation

Find and Replace in Files

Find and Replace will find one or many substrings in files and replace them with one or many new substrings.

Find and Replace will search and replace in all selected files. The number of files selected is shown in the dialog.

It will automatically identify file formats. Files encoded in ASCII/Unicode/UTF8 are supported.

Files identified as binary will be ignored, however, the identification of binary files can never be 100% accurate so be
careful and do not select any binary files.

The newline character that each processed file uses will be kept. When doing Multiline find/replace the newline inserted
will be the same as the file already has.

In the Filename field you will see what the name of the processed file will be. Files will always be saved in the same folder:
only Filename can be changed

If multiple files are select you will see a "*" in the Filename field. The "*" represents the original file name plus file
extension.
If two files are selected named "MyFile1.txt" and "MyFile2.txt" and the Filename field contains "*_replaced.*" the new
Filenames will be "MyFile1_replaced.txt" and "MyFile2_replaced.txt".

In the Save as... dropdown list you can select if the new file should be saved with a different name; or it should keep the
original name but as a backup by renaming (adding .bak to it); or if the original file should be deleted.

Text to find
In the field the text part(s) to be replaced is entered.
Exactly how the find will work depends on which find and replace mode is selected (see below).

Text to replace with


This fields contains the text(s) that the identified text part(s) will be replaced with.
Exactly how the replace will work depends on what find and replace mode is selected (see below).

http://multicommander.com Generated : 10-Apr-2021 15:25:26 132


Multi Commander Documentation

Find and Replace Modes

There are a 4 possible Find and Replace modes:

Find one, Replace with one


Only first line from the Find and Replace fields is used.
It will replace all instances found that match the first line in the 'Text to find' field with the first line in the 'Text to replace
with' field.

Find many , Replace with many


Every line in the 'Text to find' field will replace the matching line in the 'Text to replace with' field when doing Find and
Replace.
Example: Line 3 in the 'Text to find' field will be replaced with line 3 in the 'Text to replace with' field.

Find Many, Replace with same


If many lines exist in the 'Text to find' field, all of them will be replaced with the first line in the 'Text to replace with' field.

Find and Replace Multiline text


Only 1 find and replace match can be entered, but texts entered in the find and replace fields support Multiline text (ie.,
can contain newline characters).
You can enter text in the 'Text to find' field that spans multiple lines and if a match is found the entire multiline text
entered in the 'Text to replace with' field is inserted.
The newline character the file has when entering a find match is unimportant: the replace text will be inserted using the
same newline character that the file already uses.

Options

Find match using RegExp


Finding text using regular expressions is not yet enabled.

Find match using Wildcard


Enable wildcard matching in the find field. * and ? can be used to match text.
Using * at the beginning and end of the find expression can give match that you did not expect so make sure you test so it is correct before
overwriting original file.

Ignore case
Ignore case when finding matches

Force UTF8 for ASCII text files


Enable this if you want to use UTF8 encoding for all files identified as ASCII.
File encoding is auto-detected but sometimes it is not possible to accurately detect whether a file is ASCII or UTF8. This
options will force the usage of UTF8.

Silent - Show no dialogs


When enabled there will be no confirmation dialogs shown for any match found. "Replace All" is assumed and no error
dialog will be shown.
Errors will still be logged to the application log.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 133


Multi Commander Documentation

Base 64 - Encoding and Decoding


The Encoding and Decoding commands are found under the Tools menu.
There are commands to encode or decode all the selected files into/from BASE64 format.

Encoding a file into base64 format is done if you want to convert a binary file into a format that is text-friendly. Base64
encoded files grow about 25-50% in size compared to their binary format.
Decoding a base64 file will turn the file back into its original form.

Read more about base64 at wikipedia here.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 134


Multi Commander Documentation

File Security

Under the Tools menu is a File Security entry with which you can change permissions for files and folders.
This function requires Administarator permission to operate, so you may need to run Multi Commander as an
Administrator.

The File Security submenu provides the following options:

Take Ownership
Allows you become the owner of the selected files and folders.

Remove all permissions


This removes permissions for all users and groups from the selected files and folders. Note: no-one will have access to the
files after this change. Use the Add Permissions command to add permission for yourself and/or others if needed.

Add Permissions
This adds permissions for users to the selected files and folders. You can easily add read-only access or read/write or full-
control.

If you want to give everyone access to a file/folder you can add read/write or full-control access to the group Everyone for
the selected files/folders.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 135


Multi Commander Documentation

http://multicommander.com Generated : 10-Apr-2021 15:25:26 136


Multi Commander Documentation

File Checksum Tools


The File Checksum tools under the Tools menu are quick commands for the File CheckSum Extension

Verify .sfv/.md5 Checksum files (Scans Selected Folders)


This will scan all selected folder recursively for .sfv/.md5 checksum files. It will then start the File Checksum Extension in
the opposite panel and add to it all the .sfv/.md5 files that are found. It will then automatically start a verify process of the
added checksum files.

Create .sfv checksums file


This will start the File Checksum Extension in the opposite panel and automatically add all the selected files to a new file
checksum of .SFV (CRC32) type.

Create .md5 checksums file


This will start the FileChecksum extension in the opposite panel and automatically add all the selected files to a new file
checksum of MD5 type.

Compare content of two files


This will compare the content of two files by by calculating checksum values. It will take the first selected from the source
panel and the first selected file from the target panel and compare them.

Calculate checksum value from file


This will calculate all supported checksum values for the selected file.
It will calculate CRC32, MD5 and SHA1 values. If you enter a checksum value in the input field it will compare that value
aginst the calcuated values and if a match is found the appropriate field will turn green.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 137


Multi Commander Documentation

http://multicommander.com Generated : 10-Apr-2021 15:25:26 138


Multi Commander Documentation

Picture Tools

Under the Tools menu is a Picture Tools option that opens a submenu containing the following options:

Convert Picture Format...


This converts all selected picture files into a specified format.

Supported target picture formats are: JPEG, PNG and Bitmap (BMP).

Options that may be selected allow you to delete the original file if successful, and/or overwrite if the target file already
exists.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 139


Multi Commander Documentation

Rotate Pictures
This rotates the selected picture(s) according to the selected rotation or flip settings.

Auto Rotate
Auto Rotate reads the EXIF information from the picture file; if orientation information is present the image is rotated
according to that information.

Lossless JPEG Rotation


If a picture's height and width are divisible by 16 then it is possible to rotate the image without re-encoding it and without
loss of quality. If the option Only do lossless rotation on JPG is enabled it will rotate pictures only if it is possible to do
so without quality loss; otherwise it will skip rotating that picture.

Strip EXIF Information


Removes all EXIF information from the selected picture files.

Export EXIF Information


Exports all EXIF information from the selected pictures into text files. The text files will have the same name as the picture
files but with 'EXIF-data' appended to them.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 140


Multi Commander Documentation

http://multicommander.com Generated : 10-Apr-2021 15:25:26 141


Multi Commander Documentation

Audio Tools
Multi Commander Audio Tools is a default extension included with Multi Commander.
This extension will add audio properties like ID3 tags as columns for file browsing.

It also provides several audio-related tools, for example removing all ID3/APE tags from an MP3 file, and exporting all meta
data like ID3 or APE tags and audio properties from an audio file into a text file.

MP3 file information will be shown in a Window where the ID3 tags can be viewed and edited.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 142


Multi Commander Documentation

http://multicommander.com Generated : 10-Apr-2021 15:25:26 143


Multi Commander Documentation

Video Tools
Movie information in columns
Several users have asked for a way to show columns with movie information on movie files they have on their drives. With
the help of some of you there is now a version of this feature working.

(If you Ctrl+double-click on "Web" in the IMDB Link column, the browser will open to the page for that movie on
imdb.com.)

Before you can show the movie information in columns, it must be retrieved and cached locally.
This is done by selecting Menu->Tools->Video Tools->Scan for Media Information.

You then need to configure how the tool should identify movies, how to store the media information and more...

http://multicommander.com Generated : 10-Apr-2021 15:25:26 144


Multi Commander Documentation

To be able to identify your movies you must configure how to identify the movie title: from the file or folder name, for
example. (To make it easier for the system to figure out the Movie Title it is recommended to store the movie file in a folder
that is named the same as the movie title.)
Two sources are available for getting movie information, IMDB and Rotten Tomatoes.
(Retrieving information for TV Episodes is not supported yet.)

If you only want to scan for new movies that you have not already indexed, select Scan for new content only. If a movie
already has a *.mediainfo file or is listed in the local MediaDB, then the movie is skipped.

If you want to re-scan movies you have previously scanned, select Scan for new content, refresh existing.

Where and How to store the Media Information


You can store the Media information either: as a *.mediaInfo file (located in the same folder as the movie file with the same
name as the movie filesbut with the file extension ".mediainfo") or in a MediaDB or both.

Storing information in a MediaDB allows faster access when showing the columns, especially if you want to show movie
information on the folder that contains the movie. But if you have your movie files on a NAS or access them over the
network from another computer and you access these movies from multiple computers, then you need to rescan your movie
archive on every computer you access it from, then store them as *.mediaInfo files that are stored with the movie files.

To get the best of both worlds, ie. the speed of access and without the need to re-index the movies on multiple computers,
you can elect to store them in both locations. If you scan for new content and both *.mediaInfo storage and MediaDB
storage are selected and an existing *.mediainfo fileis found, it will be copied to the MediaDB on the current computer. Just

http://multicommander.com Generated : 10-Apr-2021 15:25:26 145


Multi Commander Documentation

make sure that the option "Scan for new content only" is selected, or the tool will try to update it.

Tips and Tricks


If you always want to view particular columns for movie information when you open your movie folder, you can create a
column set. This column set can then be automatically applied when going to that location.

Read about Column Sets

http://multicommander.com Generated : 10-Apr-2021 15:25:26 146


Multi Commander Documentation

Managing Aliases
Aliases are abbreviations for commands that can be used on the Multi Commander Command Line

Instead of writing a long command or path you can use the Alias Manager to create an alias for that command. An alias is a
one-word abbreviation that can be automatically expanded into the complete command. Everything that is written after the
alias is appended as a parameter to the expanded command.

For example, if you create an alias for notepad.exe and call it "n", then you can write "n mytext.txt" in the Multi
Commander Command Line and it will be expanded into "notepad.exe mytext.txt" before it is executed.

The Alias Manager is found under Configuration in the Menu Bar.

Run a User Defined Command


If the 'expand into' text is prefixed with "@" followed with the unique id for a User Defined Command, it will run that
command. (Eg. @8c83a15a69394bd3a0ad4ba3a58515a0).

Force File To Be Executed


'Expand into' text that is prefixed with "!" will be launched by the Windows Shell. In the example image above, the alias
"pe" would expand into a full path to a file, and if that text were not prefixed with "!", then instead of launching
procexp.exe it would go to that path and set the focus to the procexp.exe file.

Quick command
From the command line field it is possible to use the built-in quick command "alias" or "alias2" to create an alias command.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 147


Multi Commander Documentation

Usage Syntax
alias <alias>=<expand into>
alias2 <alias>

The command alias2 takes the current path and assigns it to the specified alias.

Example

alias pic=E:\MyPictures

If the current folder is E:\MyPictures then it is enough to write

alias2 pic

http://multicommander.com Generated : 10-Apr-2021 15:25:26 148


Multi Commander Documentation

File Type Setup


File Type Setup is used to configure how Multi Commander should handle different file types. The configuration here will
override the file associations settings set in Windows.

The setup is divided into separateconfigurable actions: View, Edit, Run/Open and Icon.

Info

The configuration of which FileSystem Extensions should be associated with different file extension is NOT configured
here.
(Eg. what file extensions the Zip FileSystem extensions should use)
It is configured under each File Extension in the Extensions and Plug-ins Manager.

Normally, when a file is run/opened, Windows will decide which program should be started for that file type.
What you The configure here is used before Windows gets involved and if running Multi Commander as a portable
installation you can configure what other portable programs Windows should use.

When you decide to View/Edit or Run/Open a file from Multi Commander it will go through the list of configurations and
try to find a matching one. It will match configurations based on the "Extensions" field. You can also specify that a specific
program should be valid only for certain paths.
For example, two different viewers are used for viewing jpg files, but for files located in "D:\Photos" perhaps you want to
use a particular one. For all other locations the other viewer is used.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 149


Multi Commander Documentation

If no matching configuration entry is found the [Default Editor] / [Default Viewer] program is used.

To change the default viewers/editors that are used change the [Default Editor] / [Default Viewer] entries under
Viewers/Editors.

Icon setup is used if the default program icon should be overridden. Viewers/Editors can also override the icon. I so it will
be listed in the icon page. Running Multi Commander in portable mode you can make sure that the icons always look the
same.

Press the Add button under the list of setup entries to add a new one. Select existing entry and press the Remove the
button to remove an entry. [Default ... ] Entries cannot be deleted.

Pressing the Reset button will reset all configurations.

Viewer / Editor / Run/Open


The following fields can be modified when configuring a Viewer/Editors/Run entry

1. Name
Name of this setup item.

1. Program Path / Internal Extension / Windows Action


This field is changed depending on what type is selected. Press "..." then select the program.

External Program

Any external program can be run.

Internal Extension

Internal Extensions can register themselves as viewers/editors/launchers. They will then be list as extensions that
you can select from.
For Viewer there exist two default extensions: "MC Picture Viewer" and "MultiDataViewer"

Windows Action

Choose this if Windows should decide what to do with the file.


Windows has 3 actions to choose from: default, open, edit.

If an external program has been set, you can press the [R] button to convert the path to a relative (to Multi
Commander.exe) path.
This is necessary if you are running in portable mode. The selected program must be located on the same drive as Multi
Commander.exe.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 150


Multi Commander Documentation

3. Program Parameters / Options


If an internal extension was set, this field will be "Options". Then extension-specific options may be entered here.

If an external program was set, this field will be "Program Parameters". Here you can add any program-specific
parameters that should be passed to the program. Pressing the "[<]" button will open a list of special tags that can be
added. These tags will be expanded when the external program is run.

4. Icon
By checking the option "Override default icon" a new icon can be configured. This icon will be used for all matching file
extensions and override the default icons that would be used

However, if you have Multiple FileType Setup entries that match the same file extensions, and all of them have the
override default icon enabled, then only the first will be used.

5. File Extensions
A space-separated list of all file extensions that this setup should affect.

Pressing the "..." button will open a window that allows for easier editing of the file extension list.

6. Path Matching
A file type setup entry can be set to be valid only for a special path(s).
Press the [Add] button under the "Path Matching" box and add that path there. If you see an "*" in front of the path it
means that the Path Matching rules are valid for that path and all its sub-paths.

To remove a Path Matching select it and press [Remove]

Icon
By default Multi Commander will use the icon that Windows has defined for a file type. On this page it is possible to
override that.
The list will show all the icons that Multi Commander is overriding

If an icon is overridden by a viewer/editor file type entry then it will be listed here. It is not possible to remove the icon
here - that must be done on the Viewer/Editor file type page.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 151


Multi Commander Documentation

To add an entry press the "[Add]" button then enter the file extension that the icon should be shown for.
Enter the path to a .exe/dll/.ico and select the icon idx from that file that should be used.

Pressing the "[...]" button opens an Icon Picker window that allows .exe/.dll/.ico files to be browsed and viewed. This
makes it easier to find the correct icon.

Press the [R] button to convert the path to a relative (to Multi Commander.exe) path. This is useful if you are running in
portable mode and want to have relative paths.

All internal icons used by Multi Commander are stored in MCIcons.dll, This files also contains some extra icons that can be
useful. This file is found at the same location as Multi Commander.exe.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 152


Multi Commander Documentation

Button Editor
The Button Editor is used to change and customize the buttons on the Button Panel.

To change how the buttons in the button panel work you must open the Button Editor by clicking on Button Editor in
the Configuration menu.

When the Button Editor is shown the button panel changes to edit mode. Click on the button you want to edit. To edit a
button in one of its alternative modes hold down a mouse or key modifier to toggle the button panel state to see the button
you want to change. (Ctrl / Shift/ Ctrl+Shift or Right/Middle mouse button).

There are six kinds of command you can create for a button. These are the same types of command that you can create in
the "user defined command" window.

User Defined Commands


Internal Commands

http://multicommander.com Generated : 10-Apr-2021 15:25:26 153


Multi Commander Documentation

External Commands
Custom Commands
Batch Script (.BAT)
MultiScript

User Defined Commands


The commands listed are User Defined Commands that you have already created with the User Defined Commands dialog.

Select which command you want to have run when the button is clicked.

Internal Commands
These are Commands that are either internal to Multi Commander or are extensions (mostly commands that you find in the
menu bar).

Two dropdowns will be shown in order. In the first select which module contains the command; in the second select the
required command within the module.

External Commands
These are external programs to be executed.

Custom Commands
Custom commands are simple commands that are exposed by Multi Commander or by an Extension or Plug-in.

You can also use the helper function list boxes to create the command.

To use them, you first select what group of functions you want to add a command from. All Extensions and Plug-ins are
located in separate groups. When a group is selected the function list is updated with all functions that are available from
that group. Select the function that you want to use and press the 'Add' button; this will add the function to the
"Command" field. Then select the option or parameter you want to add. If the parameter ends with an "=" sign, then you
are required to add additional parameter information.

Examples of some of the most command quick command:

How to change the view filter


How to select files and folder
Launch external program
Launch External program with file in focus as parameter to it

Batch Script (.bat)


This is a .bat script that will be generated and run when the button is clicked.

You can insert dynamic tags into the script that will be expanded when the script is generated.

MultiScript
This is the most advanced type of command you can create. It uses scripts that run under the Multi Commander Script
Engine.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 154


Multi Commander Documentation

Button Panel - Wizard Mode


To more easily create commands for the Button Panel, you can can turn on the Button panel wizard mode.
When the wizard mode is on, a file or folder can be dropped on to a button and a Wizard window will open in which you
can specify how the dropped file should be connected to the button.

When the Wizard Mode is active you will see that the Button Panel will change its background color.
From

To

When a file or folder now is dropped on to a button the Wizard Window will be shown:

The name and tooltip are generated automatically but you can change them if you wish. Then you need to specify whether
it should generate an Open File command or a Go to File/Path command for the button, so that when the button is pressed
the file you dropped on the button either should be launched or the Explorer Panel should go to that file or path.

Pressing the Wizard Mode button again will turn off the Wizard Mode for the Button Panel.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 155


Multi Commander Documentation

User Menu Editor


To add your own User Defined Commands to the menu you need to start the Menu Customization editor from the
Configuration menu.

This will list all of your User Defined Commands on the left and on the right will show your user-defined menus.

The menu is shown as a tree list with the top level being menus on the menu bar.

You can drag and drop menu items in the tree list to rearrange how you want to display items.
The Add Menu button adds a new top-level menu or sub-Menu.

Select the User Defined Command you want to add on the left, and select under which menu you want that command
added on the right. Then press the "-->" to add that command to the menu tree.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 156


Multi Commander Documentation

Customize Keyboard Shortcuts


To customize the keyboard shortcuts in Multi Commader, open Keyboard Customization under the Configuration
menu.

Most of the shortcut keys in Multi Commander can be changed. The shortcuts are split up into different sections: each
module/extension has its own list of commands, split between global and module-specific commands.

Global commands can be called from any module. These are generally menu commands, and are available in all modules
and extensions that support them. Since the commands are global within Multi Commander, shortcut keys must be unique
across extensions.

Module-specific commands are only available when that extension is currently in focus. Multiple extensions can have the
same shortcut assigned.

Change Shortcut key

http://multicommander.com Generated : 10-Apr-2021 15:25:26 157


Multi Commander Documentation

To find the command you want to change, first select the Module it belongs to, and then choose the Category (global or
module-specific).

When you have found the command you wish to change, click to select it and then click on the Shortcut key field below the
list. Press the key combination that you want to assign to the command, then press "Assign" to set the shortcut.
If the command you have chosen is already assigned the Conflicts field informs you about the conflict and which command
already uses that shortcut. You need to resolve the conflict before you can assign your key combination.

To remove a shortcut, select the command and then press the "Remove" button. Alternatively, choose a new key
combination.

"Command code" is the internal name of the command. It is used if a command should be executed from the custom
command MC.RunCmd

Tips

To get a list of all the shortcuts, you can export them to a text file by pressing the "Export to file" button.
If you hold SHIFT while clicking on the "Export to file" button, the exported list will also contain the internal command
codes.

References
Default keyboard shortcut (Commander styled setup)
Default keyboard shortcut,(Windows Explorer styled setup)

http://multicommander.com Generated : 10-Apr-2021 15:25:26 158


Multi Commander Documentation

Default Keyboard Shortcuts (Commander-Style)

Multi Commander Core shortcuts


These are global shortcuts that work the same way no matter which extension you are in.

Command Shortcut
Go Back Alt + Left

Go Forward Alt + Right

Show History Alt + Down

Tab - Close Tab Ctrl + W

Tab - Duplicate Tab Ctrl + T

File - View File F3

File - Edit File F4

File - Edit New File Shift+F4

File - Copy F5

File - Copy (Quick) (Copy to same location) Shift + F5

File - Move F6

File - Delete F8, Delete

File - Pack Files Alt + F5

File - Unpack Files Alt + F6

Edit - Cut Ctrl + X

Edit - Copy Ctrl + C

Edit - Paste Ctrl + V

View - Full width Ctrl + F11

View - Log Panel Ctrl + L

View - Menu Bar Ctrl + M

View - Button Panel Ctrl + B

View - Refresh F2

File Manager
Global file manager hotkeys are also valid when focus is in another extension, if the extension supports it.

Command Shortcut
File Tools - Calculate folder sizes Shift + Alt + Return

File Tools - Create Folder F7

File Tools - Rename Shift + F6

Send to clipboard - File/Folder path and name Ctrl + P

Send to clipboard - File/Folder name Ctrl + Shift + P

Send to clipboard - File/Folder path Shift + Alt + P

Select using filter Num +

Unselect using filter Num -

Select All Ctrl + A

http://multicommander.com Generated : 10-Apr-2021 15:25:26 159


Multi Commander Documentation

Unselect All Ctrl + D

Invert Selection Num *

Select all with same file extension Ctrl + Num+

Unselect all with same file extension Ctrl + Num-

Select all with same name Alt + Num+

Unselect all with same name Alt + Num-

Compare Source and Target, Select Missing/Newest Ctrl + F10

File Manager-specific hotkeys are only available when focus is in the file manager view.

Command Shortcut
Show drive selection box (Left side) Alt + F1

Show drive selection box (Right side) Alt + F2

Set View filter Ctrl + F

Start a Search from current path Alt + F7

Edit path Ctrl + E

Go to Quick Path #1 Ctrl + 1

Go to Quick Path #2 Ctrl + 2

Go to Quick Path #3 Ctrl + 3

Go to Quick Path #4 Ctrl + 4

Go to Quick Path #5 Ctrl + 5

Go to Quick Path #6 Ctrl + 6

Go to Quick Path #7 Ctrl + 7

Go to Quick Path #8 Ctrl + 8

Go to Quick Path #9 Ctrl + 9

Go to Quick Path #10 Ctrl + 10

Sync path to the Left Ctrl + Left

Sync path to the Right Ctrl + Right

Force Refresh (and flush cache) Shift + F2

Go to parent folder (Go up) Back

Go to the root of the device Ctrl + Back

Go to same path as target view Ctrl + .

Show file properties Alt + Return

File Search
Command Shortcut
Show / Hide Search window Ctrl + F

Save a Search Ctrl + S

Load a Search Ctrl + O

Start a Search Ctrl + Return

Pause a Search Ctrl + P

http://multicommander.com Generated : 10-Apr-2021 15:25:26 160


Multi Commander Documentation

Customize your own keys


You can easily customize your own hotkeys by using the Keyboard Customization entry in the Configuration menu.
There you can also export all your hotkeys to a text file.

How Do I ... Customize keyboard shortcuts

http://multicommander.com Generated : 10-Apr-2021 15:25:26 161


Multi Commander Documentation

Default Keyboard Shortcuts (Windows Explorer-Style)

Multi Commander Core shortcuts


These are global shortcuts that work the same way no matter what extension you are in.

Command Shortcut
Go Back Alt + Left

Go Forward Alt + Right

Show History Alt + Down

Tab - Close Tab Ctrl + W

Tab - Duplicate Tab Ctrl + T

File - View File F1

File - Edit File F9

File - Copy F4

File - Copy Quick Shift + F5

File - Move F6

File - Delete F8, Delete

File - Pack Files Alt + F5

File - Unpack Files Alt + F6

Edit - Cut Ctrl + X

Edit - Copy Ctrl + C

Edit - Paste Ctrl + V

View - Full width Ctrl + F11

View - Log Panel Ctrl + L

View - Button Panel Ctrl + B

View - Refresh F5

File Manager
Global file manager hotkeys are also valid when focus is in another extension, if the extension supports them.

Command Shortcut
File Tools - Calculate folder size Shift + Alt + Return

File Tools - Create Folder F7

File Tools - Rename F2

Send to clipboard - File/Folder path and name Ctrl + P

Send to clipboard - File/Folder name Ctrl + Shift + P

Send to clipboard - File/Folder path Shift + Alt + P

Select using filter Num +

Unselect using filter Num -

Select All Ctrl + A

Unselect All Ctrl + D

Invert Selection Num *

http://multicommander.com Generated : 10-Apr-2021 15:25:26 162


Multi Commander Documentation

Select all with same file extension Ctrl + Num+

Unselect all with same file extension Ctrl + Num-

Select all with same name Alt + Num+

Unselect all with same name Alt + Num-

Compare Source and Target, Select Missing/Newest Ctrl + F10

File Manager-specific hotkeys are only available when focus is in the file manager view.

Command Shortcut
Show drive selection box (Left side) Alt + F1

Show drive selection box (Right side) Alt + F2

Set View filter Ctrl + F

Start a Search from current path Alt + F7

Edit path Ctrl + E

Go to Quick Path #1 Ctrl + 1

Go to Quick Path #2 Ctrl + 2

Go to Quick Path #3 Ctrl + 3

Go to Quick Path #4 Ctrl + 4

Go to Quick Path #5 Ctrl + 5

Go to Quick Path #6 Ctrl + 6

Go to Quick Path #7 Ctrl + 7

Go to Quick Path #8 Ctrl + 8

Go to Quick Path #9 Ctrl + 9

Go to Quick Path #10 Ctrl + 10

Sync path to the Left Ctrl + Left

Sync path to the Right Ctrl + Right

Force Refresh (and flush cache) Shift + F5

Go to parent folder (Go up) Back

Go to the root of the device Ctrl + Back

Go to same path as target view Ctrl + .

Show file properties Alt + Return

File Search
Command Shortcut
Show / Hide Search window Ctrl + F

Save a search Ctrl + S

Load a Search Ctrl + O

Start a Search Ctrl + Return

Pause a Search Ctrl + P

Customize your own keys


You can easily customize your own hotkeys by using the Keyboard Customization selection in the Configuration menu.
There you can also export all your hotkeys to a text file.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 163


Multi Commander Documentation

How Do I ... Customize keyboard shortcuts

http://multicommander.com Generated : 10-Apr-2021 15:25:26 164


Multi Commander Documentation

Custom ContextMenu Editor


Sorry.

The documentation for this has not been written yet.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 165


Multi Commander Documentation

Filters

http://multicommander.com Generated : 10-Apr-2021 15:25:26 166


Multi Commander Documentation

Core Settings
The Core Settings are settings in Multi Commander that affect how the core behaviour works. To configure these, select
"Core Settings" under the Configuration menu.

Settings like Language, Tab Location, File System Operations and Logging can be found here. These are settings that are
not affected by extensions or plug-ins.

Tooltips are available to explain the effect of most settings.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 167


Multi Commander Documentation

Explorer Panel Settings


The settings for the Explorer Panel let you configure the look and feel of the Explorer Panel.

You can change the Layout, the colors , how the mouse should work, etc.

Tooltips are available to explain the effect of most settings.

For examples of different layouts and color setups, see screenshots here.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 168


Multi Commander Documentation

Change To Windows Explorer Look and Feel


Multi Commander by default uses the popular Commander-Style mouse and keyboard layout.

Users who have never used this style before might feel more comfortable with the way Windows Explorer works. Since
Multi Commander is very configurable it can be changed to look and feel like Windows Explorer. That can be tedious work
because there is a lot of configuration that needs to be changed. However, the Quick Look'n'Feel Setup makes it possible
to change this quickly and easily.

To access this, select "Quick Look'n'Feel Setup" from the Configuration menu.

To Change everything to Windows Explorer look and feel, select Windows Explorer Compatibility Look'n'Feel.

If you only want to Change some part of the configuration Like the mouse or colors settings. Choose the Customize option.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 169


Multi Commander Documentation

There you can select between different configurations for keyboard, mouse and color setup.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 170


Multi Commander Documentation

Create User Defined Commands


Multi Commander allows you to create your own commands, which can then be run from the menubar, button panel, a
hotkey or the command line.

Open the User Defined Commands dialog by selecting "User Defined Commands" from the Configuration menu.

Create Command
Follow these instructions to create a command:

1. Click on the new button and enter the name you want to give your command. (The name can be changed later by
editing the name property and re-saving the command.)
2. Fill in the tooltip / description for the command. This text will be shown as a tooltip when you hover over a
command (if the command is assigned to a button on the button panel) or as a menu entry or description when
needed.
3. Next select which type of command you want to create. There are five types of command available:
1. Internal Commands
2. External Commands
3. Custom Commands
4. Batch Script (.BAT)
5. MultiScript
4. When you are done, press the Save button to save the command.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 171


Multi Commander Documentation

5. You now need to assign the command to a button, hotkey, menu item or alias so you will have a way to access the
command.

From the Button Editor you can configure a button to use a "User Defined Command" and then choose which of
your commands to assign to it.

From the Menu button you can add your command to a menu item that will be shown on the menu bar. The HotKey
button will open the Keyboard customization window with your command pre-selected so that you can assign a
hotkey to it.

The unique ID that is shown in the Unique ID field at the top right of the screen (generated when the command was
saved) allows you to access this command from the command line bar. The easiest way to do that is to create an
alias for that id with a name you can more easily remember, using the Alias Editor (found under the Configuration
menu).

http://multicommander.com Generated : 10-Apr-2021 15:25:26 172


Multi Commander Documentation

User Defined Commands - Internal Commands


Internal commands are commands that Multi Commander or an Extension or Plug-in has provided. For example, the
menu and tool bars use these commands. They are simple commands that just tell Multi Commander or the Extension that
the command has been called, and no parameters or customization for that command can be added.

One reason to create a User Defined Command that uses internal commands is to create an alias for that command so you
can call that command from the command line bar. Another use would be to assign that command to a button on the button
panel.

The command might also be something that is not normally visible in the menu bar, but you would like to put it there. In
this case, you can create a User Defined Command that calls the internal command, then add the User Defined Command
to the menu bar using the User Menu Configuration.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 173


Multi Commander Documentation

User Defined Commands - External Commands


External commands let you choose an external program to be launched when the command is called.

MultiTags
MultiTags are specially formatted texts that will be replaced with dynamic information. For example, the MultiTag
${focusfilepath} will be replaced by the full file path to the file currently in focus. The command is run through a process
that will translate MultiTags before it is executed.

Paths are not quoted by default, so if you need quotes around the path you have to put them around the MultiTag, e.g.
"${focuspath}"

Read more about MultiTags

Options

When you press the Options button you will get a list of options you can assign to the command, as shown above.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 174


Multi Commander Documentation

Run as Administrator
When this option is checked the program will be run with Administrator privileges. If you are running as a normal user you
will be presented with a UAC dialog asking for permission to run the program as Administrator. You might also need to
enter an Administrator login and password, depending on your user account permissions.

If you run with UAC disabled then the system will launch the program as Administrator without showing you a UAC dialog.

(This option is not valid on Windows XP and Windows 2003.)

Display Confirmation
This option will display a dialog asking the user to confirm that the command really should be run. This is recommended to
be used if the program to be started could change anything on the computer, such as removing or modifying files. If the
command is shown in the menu bar for example, it is very easy to accidentally call the command, and you might make
changes to your system when you do not want to.

Use Dropped Files as Parameters


This is a special option in case the command is assigned to a button on the Button Panel that accepts files dropped on to it.
The dropped files will be transformed into parameters for the command, and are accessed with the multi-tag
${param:<num>}.

Command Arguments
The dialog allows arguments (parameters) to be sent to the command. These are sent to it if the command is called from
the Command line bar or if files are dropped on a button and the command has enabled the option "Use Dropped files as
parameter", or if this command is called from a Custom Command or MultiScript command.

The parameters are accessed by using the MultiTags ${param:<num>} where <num> identifies which argument to use.
${param:0} will be the first parameter, ${param:1} the second, ${param:2} the third and so on.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 175


Multi Commander Documentation

User Defined Commands - Custom Commands


Custom commands are commands that Multi Commander or its Extensions or Plug-ins provide. These commands often
expose features you already have, but you can call them with special settings and options available to them.

Custom Commands can also be called from MultiScript and that combination allows you to create very advanced and
powerful commands.

(The example in the image above will start a filesearch for *.jpg file in the path of the current source panel. Furthermore, the search will autostart.)

Create a command
Custom commands are created by choosing Custom Commands in the Command Type dropdown of the User Commands
dialog. To help you create the Custom Command there are three dropdown boxes from which you choose Group, Function
and Options/Parameters. Using these dropdowns you can find all the functions and options that are provided for each
group.

The Group dropdown shows all the modules that have registered Custom Commands. The commands are separated into
groups showing which module, extension or plug-in they belong to.

When a module is selected the Function drop down list is updated to show the functions that module supports. When a
function is selected the Options/Parameters drop down list is updated with the options and parameters you can send to
that function.

If you know the command you want you can write it directly into the editor. You do not have to use the drop down lists;
they are just there to help you.

Custom Commands Examples

List And Description of Custom Commands

http://multicommander.com Generated : 10-Apr-2021 15:25:26 176


Multi Commander Documentation

MultiTags
MultiTags are specially formatted texts that will be replaced with dynamic information. For example, the MultiTag
${sourcepath} will be replaced with the full path of the source panel (the currently active panel). The Custom Command
is run through a process that will translate MultiTags before it is executed.

Read more about MultiTags

Options

When you press the Options button you get a list of options that can be assigned to the command, as shown above.

1. Display Confirmation
This option displays a dialog asking the user to confirm that the command really should be run. This is
recommended if the program to be started could change anything on the computer, such as removing or modifying
files. If the command is for example shown in the menu bar, it is very easy to accidentally call the command, and
you might make changes to your system when you do not want to.

2. Run Separately
When this option is enabled the command is run separately for each file that is selected, with the MultiTag
${currentfilepath} changed to match that file path.

Command Parameters
The script supports parameters to be sent to the command if it is called from the Commandline bar.

The parameters are accessed by using the MultiTags ${param:<num>} where <num> is the index of the parameter to
use. ${param:0} will be the first parameter, ${param:1} the second, ${param:2} the third and so forth.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 177


Multi Commander Documentation

List of Custom Commands


MC.Run Run an external program

MC.RunUserCmd Run a User Defined Command

MC.RunCmd Run an Internal or User Defined Command

MC.CmdLineSet Set a text in the Command Line field

MC.CmdLineRun Run a command via the Command Line field

View file. Viewer is selected by finding a match in the file


MC.View
type setup

Edit file. Editor is selected by finding a match in the file


MC.Edit
type setup

MC.SetActivePanel Set what panel side should be active

MC.SetActiveTab Set what tab should be active

MC.CloseAllTabs Close all tabs

MC.SaveTabs Save current tabs panel layout

MC.LoadTabs Load a tabs panel layout

MC.ChangeTabSession Change to a preconfigured tab session

Change a Multi Commander UI setting. (See online doc


MC.XChangeSettings
for supported settings to change)

Bind a keyboard key combination to a command (eg.


MC.BindKey
BindKey CMD=Core.1360 KEY=Ctrl+N)

Unbind a keyboard key combination from a command (eg.


MC.UnBindKey
UnbindKey CMD=Core.1360)

MC.ShowFavWindow Show Favorites Window

MC.ShowFavPopup Show Favorites Popup menu

MC.ShellPaste Paste clipboard data using Windows Shell

MC.LoadButtonPanelLayout Load a button panel layout from file

Rename a file or folder. Current file will be used if FILE


MC.Filesystem.Rename
parameter is not used

Delete a file(s) or folder(s). If no PATH parameter is


MC.Filesystem.Delete
given the current selected file(s)/folder(s) will be used

MC.Filesystem.Makedir Create a new folder

Pack files into an archive (eg. .zip file). If no FILES


MC.Filesystem.PackFiles parameter is giving the current selected files/folders are
used

MC.Filesystem.Unpack Unpack archives into a folder

MC.Explorer.NewBrowser Open a new Explorer Panel tab

MC.Explorer.CloseAll Close all Explorer Panel tabs

MC.Explorer.Goto Show path in the Explorer Panel

MC.Explorer.Select Select files and folders in the Explorer Panel

MC.Explorer.Deselect Deselect files and folders in the Explorer Panel

MC.Explorer.Refresh Refresh the Explorer Panel

MC.Explorer.RefreshTree Refresh the Explorer Panel

MC.Explorer.Copy Start a Copy operation

http://multicommander.com Generated : 10-Apr-2021 15:25:26 178


Multi Commander Documentation

MC.Explorer.Delete Start a Delete operation

MC.Explorer.Move Start a Move operation

MC.Explorer.Makedir Create folder

MC.Explorer.SetViewFilter View filter for the Explorer Panel

MC.Explorer.GetViewFilter View filter for the Explorer Panel

Change what columns to show, change to a defined


MC.Explorer.SetColumns
column set

MC.Explorer.SetViewMode Change view mode of Explorer Panel that is in focus

MC.Explorer.SetTabProp Change tab properties of active Explorer Panel tab

MC.Explorer.Sort Change which column data is sorted by

MC.Explorer.SizeFolder Size current selected folder(s)

MC.Explorer.SetItemFocus Change focus to specified a file/folder in the current path

Set Color Rules profile to use. Do not specify a name if


MC.Explorer.SetColoringRules
you want to use the default color profile

MC.Explorer.RefreshColoringRules Refresh file coloring for all files and folders

Change an Explorer Panel settings for the current active


MC.Explorer.ChangeSetting tab temporarily. Settings will NOT be saved See
documentation for more information

MC.Explorer.Selection.Select Select items by filter (Support all views)

MC.Explorer.Selection.Unselect Unselect items by filter (Support all views)

MC.Explorer.Selection.SelectAll Select all items

MC.Explorer.Selection.UnselectAll Unselect all items

MC.Explorer.Selection.InvertSelection Invert selections of items

MC.Explorer.Selection.SelectByColor Select by color (Color set by File Coloring Rules)

MC.Explorer.Selection.UnselectByColor Unselect by color (Color set by File Coloring Rules)

MC.Explorer.Selection.SaveSelectionToMemory Save selection to memory

MC.Explorer.Selection.LoadSelectionFromMemory Load selection from memory

MC.Explorer.Selection.SaveSelectionToFile Save selection to file

MC.Explorer.Selection.LoadSelectionFromFile Load selection from file

MC.Explorer.Selection.LoadSelectionFromClipboard Load selection from clipboard

MC.Explorer.Selection.CompareFoldersForDuplicates Compare target and source views and select duplicates

Compare target and source views and select selected on


MC.Explorer.Selection.CompareFoldersForSelected
target

Compare target and source views and select missing and


MC.Explorer.Selection.CompareFoldersForMissingAndNewer
newest

MC.Explorer.Selection.CompareFoldersForMissing Compare target and source views and select missing

MC.Explorer.Selection.CompareFoldersForNewest Compare target and source views and select newest item

MC.FileSearch.Search Search for files and folders

MC.Special.SelectOldestByName Select oldest based on file/folder name

Create a File System Link, Symbolic, Hardlink, Junction


MC.Utils.CreateLink
or Shortcut

MC.Utils.SortLines Sort Lines in text file

MC.Utils.FindAndReplace Find and Replace in file

http://multicommander.com Generated : 10-Apr-2021 15:25:26 179


Multi Commander Documentation

MC.CheckSum.Verify Start CheckSum Tab and verify file(s)

MC.CheckSum.Create Start CheckSum Tab and create checksum file

MC.DataViewer.View Open a file for viewing

MC.PictureTools.Convert Convert one or many pictures to another picture format

MC.PictureTools.Resize Resize one or many pictures

MC.Run
Run an external program
If command is run from a MultiScript. the execution return code is available in $__CMDRESULT. (Only if the WAIT
option was used)

Options

ADMIN Run program as Administrator

ARG Arguments to sent to program

CMD Path to program to run

SHELL Determine how the file should be started

STARTIN Path to folder in which the program should be started

WAIT Wait for program to close before continuing

MC.RunUserCmd
Run a User Defined Command

Options

ID GUID of the command to run (eg. "ID=fg3432f1ab4aBD422DAB3")

MC.RunCmd
Run an Internal or User Defined Command

Options

ASYNC Run the command asynchronously

ID ID name of the command to run (eg. "ID=Core.1234")

http://multicommander.com Generated : 10-Apr-2021 15:25:26 180


Multi Commander Documentation

MC.CmdLineSet
Set a text in the Command Line field

Options

SETFOCUS Change focus to the Command Line field

TEXT Text to set in the Command Line field

MC.CmdLineRun
Run a command via the Command Line field

Options

CMD Command to be run as if it was written in the Command Line field

MC.View
View file. Viewer is selected by finding a match in the file type setup

Options

FILE Path to file to view. If not specified, the file in focus will be used

VIEWAS When looking for viewer to use, select as if file is this file type (eg. VIEWAS=".txt")

MC.Edit
Edit file. Editor is selected by finding a match in the file type setup

Options

EDITAS When looking for editor to use, select as if file is this file type (eg. EDITAS=".jpg")

FILE Path to file to view. If not specified, the file in focus will be used

MC.SetActivePanel
Set what panel side should be active

Options

PANEL What panel should be active. LEFT, RIGHT, TOP, BOTTOM, TOGGLE

http://multicommander.com Generated : 10-Apr-2021 15:25:26 181


Multi Commander Documentation

MC.SetActiveTab
Set what tab should be active

Options

PANEL Which panel side the tabs are located in: LEFT, RIGHT, TOP, BOTTOM, ACTIVE, INACTIVE

TAB Tab to activate, starting with 1 and increasing. (Eg. TAB=2 or NEXT, PREV)

MC.CloseAllTabs
Close all tabs

Options

DONOTASK Do not ask if locked tab should be closed

KEEPLOCKED Do not close locked tabs

LEFTONLY Close all tabs on the left/top side only

RIGHTONLY Close all tabs on the right/bottom side only

MC.SaveTabs
Save current tabs panel layout

Options

CURRENT Only current tab

FILENAME File path to a tab definition file

MC.LoadTabs
Load a tabs panel layout

Options

ADD Add tab panels to current layout

FILENAME File path to a tab definition file

REPLACE Replace all current tabs panels

MC.ChangeTabSession
Change to a preconfigured tab session

Options
ID ID of the tab session to activate

http://multicommander.com Generated : 10-Apr-2021 15:25:26 182


Multi Commander Documentation

MC.XChangeSettings
Change a Multi Commander UI setting. (See online doc for supported settings to change)

Options

NAME Name of setting

VALUE Value of the new setting

MC.BindKey
Bind a keyboard key combination to a command (eg. BindKey CMD=Core.1360 KEY=Ctrl+N)

Options

CMD Command to bind to key (eg. Core.1360)

KEY Key to bind to (eg. Ctrl+N )

SAVE (Optional) should the keybinding be saved between restarts

MC.UnBindKey
Unbind a keyboard key combination from a command (eg. UnbindKey CMD=Core.1360)

Options

CMD Command to unbind from key (eg. Core.1360)

SAVE (Optional) should the keybinding be saved between restarts

MC.ShowFavWindow
Show Favorites Window

Options

SECTION Favorite section to show (Name or Number)

SHOWPATH Show target path instead of favorite name

MC.ShowFavPopup
Show Favorites Popup menu

Options

POS Where to show the popup (Mouse, CenterScreen, CenterMC, "X,Y" pos )

SHOWPATH Show target path instead of favorite name

http://multicommander.com Generated : 10-Apr-2021 15:25:26 183


Multi Commander Documentation

MC.ShellPaste
Paste clipboard data using Windows Shell

Options

PATH Path where to paste the data. If not set current active path is used

MC.LoadButtonPanelLayout
Load a button panel layout from file

Options

FILE Path to a button panel layout file

MC.Filesystem.Rename
Rename a file or folder. Current file will be used if FILE parameter is not used

Options

Show a dialog asking for the new name. If 'NEWNAME' is also specified, it will be used as a suggested
ASKNAME
name

FILE Specify file you want to rename

NEWNAME The name you want the file/folder renamed to

MC.Filesystem.Delete
Delete a file(s) or folder(s). If no PATH parameter is given the current selected file(s)/folder(s) will be used

Options

FILTER Filter what to delete. Separate with ';' eg. "*.jpg;*.bmp;*.tif"

PATH The file or folder to delete

MC.Filesystem.Makedir
Create a new folder

Options

PATH Full path to the folder you want to create

http://multicommander.com Generated : 10-Apr-2021 15:25:26 184


Multi Commander Documentation

MC.Filesystem.PackFiles
Pack files into an archive (eg. .zip file). If no FILES parameter is giving the current selected files/folders are used

Options

FILES Which files or folders to pack. Separate multiple files and folders with ';'

FILTER Filter to use. Separate filters with space eg. '*.txt -readme.txt *.info'

METHOD Pack method to use Zip, 7Zip, Tar

Pack the selected files/folders into separate archives. (TARGET must have wildcard in name. eg
SEPARATE
"e:\file_*.zip")

TARGET Target name of the archive. (Set to auto to auto-generate a name)

MC.Filesystem.Unpack
Unpack archives into a folder

Options

FILE Which archives to unpack. Separate multiple archives with ';'

FILTER Filter to use. Separate filters with space eg. '*.txt -readme.txt *.info'

Password to use if the archive is password protected. (If not set, a dialog will be shown if password is
PASSWORD
needed during unpacking)

TARGET Folder where the archives should be unpacked

MC.Explorer.NewBrowser
Open a new Explorer Panel tab

Options

FLAT Show path flat. Path and subfolders will be flattened and shown together

PATH The path you want to show

SIDE Open the new Explorer Panel tab on the LEFT, RIGHT, SOURCE, TARGET or AUTO

Tab Colors to use. Comma-separated list


TABCOLORS TABCOLORS=<background>,<textcolor>,<Gradient (0/1)>,<HotWhenActive
(0/1)>

TABLOCK Lock Tab

TABLOCKALLOWSUBCHANGE Lock Tab - Allow subpath change

TABNAME Force the tab to be named using the provided text

MC.Explorer.CloseAll
Close all Explorer Panel tabs

http://multicommander.com Generated : 10-Apr-2021 15:25:26 185


Multi Commander Documentation

MC.Explorer.Goto
Show path in the Explorer Panel

Options

FLAT Show path flat. Path and subfolders will be flattened and shown together

LEFT Left Path

PATH The path you want to show

RIGHT Right Path

SOURCE Source Path

TARGET Target Path

ITEMFOCUS Name of file/folder to set focus on

MC.Explorer.Select
Select files and folders in the Explorer Panel

Options

FILTER Filter of the files and folder to select

ONLYFILES Only filter files

ONLYFOLDERS Only filter folders

MC.Explorer.Deselect
Deselect files and folders in the Explorer Panel

Options

FILTER Filter of the files and folder to select

ONLYFILES Only filter files

ONLYFOLDERS Only filter folders

http://multicommander.com Generated : 10-Apr-2021 15:25:26 186


Multi Commander Documentation

MC.Explorer.Refresh
Refresh the Explorer Panel

Options

AUTO Automatic detection of refresh method

FORCEREBUILD Rescan and Rebuild (Remove all caches and rebuild them)

FORCEUPDATE Rescan and Update (Update current caches)

REDRAWUI Redraw UI only

UPDATEUICACHE Update View Cache only

MC.Explorer.RefreshTree
Refresh the Explorer Panel

MC.Explorer.Copy
Start a Copy operation

Options

NEWQUEUE Always start a new file operations queue

NODIALOG Do not show the 'Copy To' dialog. Use default settings

OVERWRITE_ALL Auto overwrite, Overwrite All

OVERWRITE_AUTORENAME_EXISTING Auto overwrite, Keep both - Rename existing file

OVERWRITE_AUTORENAME_NEW Auto overwrite, Keep both - Rename new file

OVERWRITE_IFNEWER Auto overwrite, Overwrite If date is newer

OVERWRITE_IFSIZEDIFF Auto overwrite, Overwrite If size is different

OVERWRITE_IFSIZELARGER Auto overwrite, Overwrite If size is larger

OVERWRITE_IFSIZESMALLER Auto overwrite, Overwrite If size is smaller

SKIPEMPTYFOLDERS Skip Empty folders

USEEXISTINGQUEUE Use existing file operations queue if one exists

MC.Explorer.Delete
Start a Delete operation

Options

NEWQUEUE Always start a new file operations queue

NODIALOG Do not show the 'Delete' dialog. Use default settings

USEEXISTINGQUEUE Use existing file operations queue if one exists

http://multicommander.com Generated : 10-Apr-2021 15:25:26 187


Multi Commander Documentation

MC.Explorer.Move
Start a Move operation

Options

NEWQUEUE Always start a new file operations queue

NODIALOG Do not show the 'Move To' dialog. Use default settings

OVERWRITE_ALL Auto overwrite, Overwrite All

OVERWRITE_AUTORENAME_EXISTING Auto overwrite, Keep both - Rename existing file

OVERWRITE_AUTORENAME_NEW Auto overwrite, Keep both - Rename new file

OVERWRITE_IFNEWER Auto overwrite, Overwrite If date is newer

OVERWRITE_IFSIZEDIFF Auto overwrite, Overwrite If size is different

OVERWRITE_IFSIZELARGER Auto overwrite, Overwrite If size is larger

OVERWRITE_IFSIZESMALLER Auto overwrite, Overwrite If size is smaller

SKIPEMPTYFOLDERS Skip Empty folders

USEEXISTINGQUEUE Use existing file operations queue if one exists

MC.Explorer.Makedir
Create folder

Options

FOLDERNAME Folder name

GOTO Go to folder path when created

MC.Explorer.SetViewFilter
View filter for the Explorer Panel

Options

FILTER The View Filter you want to set

FILTERID The Filter ID of an Advanced Filter that is already defined

MC.Explorer.GetViewFilter
View filter for the Explorer Panel

http://multicommander.com Generated : 10-Apr-2021 15:25:26 188


Multi Commander Documentation

MC.Explorer.SetColumns
Change what columns to show, change to a defined column set

Options

NAME ColumnSet name

MC.Explorer.SetViewMode
Change view mode of Explorer Panel that is in focus

Options

MODE (1 = Detail, 2 = List, 3 = Thumbnail List, 4 = Thumbnail Detail)

MC.Explorer.SetTabProp
Change tab properties of active Explorer Panel tab

Options

RESET Reset all tab properties. No other parameter used if this is set

Tab Colors to use. Comma-separated list


TABCOLORS TABCOLORS=<background>,<textcolor>,<Gradient (0/1)>,<HotWhenActive
(0/1)>

TABLOCK Lock Tab

TABLOCKALLOWSUBCHANGE Lock Tab - Allow subpath change

TABNAME Force the tab to be named using the provided text

MC.Explorer.Sort
Change which column data is sorted by

Options

COL Number of the column to sort by (starting from 1)

COLNAME Name of the column to sort by (eg. COLNAME=name)

ORDER Sort order. ASC for ascending, DES for descending

http://multicommander.com Generated : 10-Apr-2021 15:25:26 189


Multi Commander Documentation

MC.Explorer.SizeFolder
Size current selected folder(s)

Options

ALL Force sizing of all folders in current location

ONLYFOCUS Only size folder that is in focus

MC.Explorer.SetItemFocus
Change focus to specified a file/folder in the current path

Options

ITEM Name of the file/folder

MC.Explorer.SetColoringRules
Set Color Rules profile to use. Do not specify a name if you want to use the default color profile

Options

NAME Name of the color profile

MC.Explorer.RefreshColoringRules
Refresh file coloring for all files and folders

MC.Explorer.ChangeSetting
Change an Explorer Panel settings for the current active tab temporarily. Settings will NOT be saved See
documentation for more information

Options

NAME Setting name

TOGGLE Will toggle the named setting (if possible)

VALUE New Settings Value

http://multicommander.com Generated : 10-Apr-2021 15:25:26 190


Multi Commander Documentation

MC.Explorer.Selection.Select
Select items by filter (Support all views)

Options

FILTER Filter of what to match against

FILTERID The Filter ID of an Advanced Filter that is already defined

ONLYFILES Only filter files

ONLYFOLDERS Only filter folders

MC.Explorer.Selection.Unselect
Unselect items by filter (Support all views)

Options

FILTER Filter of what to match against

ONLYFILES Only filter files

ONLYFOLDERS Only filter folders

MC.Explorer.Selection.SelectAll
Select all items

MC.Explorer.Selection.UnselectAll
Unselect all items

MC.Explorer.Selection.InvertSelection
Invert selections of items

MC.Explorer.Selection.SelectByColor
Select by color (Color set by File Coloring Rules)

Options

RULE Name of the color rule to select files/folder by. (File coloring profile having the specified rule must be active)

http://multicommander.com Generated : 10-Apr-2021 15:25:26 191


Multi Commander Documentation

MC.Explorer.Selection.UnselectByColor
Unselect by color (Color set by File Coloring Rules)

Options

Name of the color rule to unselect files/folder by. (File coloring profile having the specified rule must be
RULE
active)

MC.Explorer.Selection.SaveSelectionToMemory
Save selection to memory

Options

NAME Name that you want to save the selection as (Optional)

MC.Explorer.Selection.LoadSelectionFromMemory
Load selection from memory

Options

NAME Name that you want to load the selection from (Optional)

MC.Explorer.Selection.SaveSelectionToFile
Save selection to file

Options

FILE File to save selection to

MC.Explorer.Selection.LoadSelectionFromFile
Load selection from file

Options

FILE File to load selection from

http://multicommander.com Generated : 10-Apr-2021 15:25:26 192


Multi Commander Documentation

MC.Explorer.Selection.LoadSelectionFromClipboard
Load selection from clipboard

Options

WILDCARD Do wildcard selection, (Will insert * before and after every part before doing the selection)

MC.Explorer.Selection.CompareFoldersForDuplicates
Compare target and source views and select duplicates

Options

FILES Compare files

FOLDERS Compare folders

MC.Explorer.Selection.CompareFoldersForSelected
Compare target and source views and select selected on target

Options

FILES Compare files

FOLDERS Compare folders

MC.Explorer.Selection.CompareFoldersForMissingAndNewer
Compare target and source views and select missing and newest

Options

FILES Compare files

FOLDERS Compare folders

MC.Explorer.Selection.CompareFoldersForMissing
Compare target and source views and select missing

Options

FILES Compare files

FOLDERS Compare folders

http://multicommander.com Generated : 10-Apr-2021 15:25:26 193


Multi Commander Documentation

MC.Explorer.Selection.CompareFoldersForNewest
Compare target and source views and select newest item

Options

FILES Compare files

FOLDERS Compare folders

MC.FileSearch.Search
Search for files and folders

Options

ATTRIBUTE Match file attributes. Any of the following characters are valid: ARHSDCE

AUTOSTART Auto-start the search when the command is run

CONTENT Search for this content in matching files

EXCLUDE Path(s) to exclude. if folder with matching name is found, it is not searched

HIDE Hide the 'Find Files' Dialog

IGNORECASE Ignore case difference when matching content

NOTTHERE File is a match if content is missing from the file

PANEL What panel to open the search in. (LEFT, RIGHT, ACTIVE, INACTIVE)

SEARCHFOR Match files or folder that has this substring in the name, (or use wildcard)

SEARCHFOR_REGEXP Match files or folder against this regular expression

SEARCHIN Path(s) to where to search. Separate by space or ;

SIZE Match files with a file size. Use > or < for more or less then. Eg: ">2000000"

SUBLEVELS Search only # subfolders down

TIME Set a time range from now. (Valid values: TODAY, YESTERDAY, THISWEEK, THISMONTH)

TIMEFROM Match files with a date from this time. (Format date/time as YYY-MM-DD HH:MM:SS)

TIMETO Match files with a date to this time. (Format date/time as YYY-MM-DD HH:MM:SS)

WORDS Match content against whole words

MC.Special.SelectOldestByName
Select oldest based on file/folder name

Options

SOURCE Select in source view

TARGET Select in target view

http://multicommander.com Generated : 10-Apr-2021 15:25:26 194


Multi Commander Documentation

MC.Utils.CreateLink
Create a File System Link, Symbolic, Hardlink, Junction or Shortcut

Options

ASADMIN Run as Administrator

LNKSRC Link Source

LNKTRG Link Target

LNKTYPE Link type. 1 = Hardlink, 2 = Junction, 3 = Symlink, 4 = Shortcut

MC.Utils.SortLines
Sort Lines in text file

Options

DATEFORMAT Date format

DELETE Overwrite original file

ENDATWHITESPACE End at any whitespace character

ENDCHAR End character

FILE File to sort lines in

IGNORECASE Ignore case

ITEM Item to sort by

ITEMSEP Item separator

KEEPBACKUP Keep a backup of original file (*.bak)

KEEPBOTTOM Lines at the bottom to keep

KEEPTOP Lines at the top to keep

LANGUAGEORDER Use language-established sort order

LINEOFFSET Where on the line to start sorting from (1-based; first position is 1, not 0)

NATRUALNUMORDER Natural number order

OVERWRITE Overwrite if target file already exists

REVERSE Reverse sort order

SILENT Silent. No error/done dialogs are shown

SKIPLEADINGSPACE Skip leading spaces

SORTAS Sort as Text, Number or Date (Default is: Text)

SORTBY Sort lines by Line, SubString or Item. (Default is Line)

SUBSTRLEN Substring length

TARGET Name of the new file. (Name filter like "*_New.*". Don't include path)

http://multicommander.com Generated : 10-Apr-2021 15:25:26 195


Multi Commander Documentation

MC.Utils.FindAndReplace
Find and Replace in file

Options

DELETE Overwrite original file

FILE File to replace text in

FIND Text to find

FORCEUTF8 Force file format to UTF-8 if detected as ASCII

IGNORECASE Ignore case

KEEPBACKUP Keep a backup of original file (*.bak)

MODE Find and Replace Mode. One, Many, ManySame, Multiline (Default: One)

OVERWRITE Overwrite if target file already exists

REPLACEALL Replace All

REPLACEWITH Text to replace with

SILENT Silent. No error/done dialogs are shown

TARGET Name of the new file. (Name filter like "*_New.*". Don't include path)

WILDCARD Use wildcard matching

MC.CheckSum.Verify
Start CheckSum Tab and verify file(s)

Options

ALLSELECTED Verify all selected files (and files inside selected folders)

FILE Path to file to verify. If folder then all checksum files in that folder will be used

MC.CheckSum.Create
Start CheckSum Tab and create checksum file

Options

ALLSELECTED Add all selected files

AUTOSTART Auto-start the creation of the checksum file

CHECKSUM Checksum Mode to use: CRC32 or MD5 (default: CRC32)

ENCODING Text Encoding of the SFV/MD5 file: ASCII/UTF-8/UNICODE (default: ASCII)

FILENAME Filename of the SFV/MD5 file to create. If name is not set it name is auto-generated

http://multicommander.com Generated : 10-Apr-2021 15:25:26 196


Multi Commander Documentation

MC.DataViewer.View
Open a file for viewing

Options

ASCII View file as ASCII

AUTORELOAD Enable AutoReload

BGCOLOR Background Color

BINARY View file as BINARY

COLOR Text Color

FILE Path to file to view

FONT Font you want to use

FONTSIZE Font size you want to use

FORMAT_1 Add formatting. Add FORMAT_2 and so on for more formats

HEX View file as HEX

HIGHLIGHT Highlight words

UNICODE View file as UNICODE

MC.PictureTools.Convert
Convert one or many pictures to another picture format

Options

DELETE Delete the original file if it was converted

FILE File to convert

FILES List of files to convert, Separate with Semicolon (";")

FOCUS Convert file in focus only

FORMAT Target format for conversion. Can be one of the following: PNG, JPG, GIF, BMP, TIF

JPGQUALITY JPG Quality to use (0-100). (Only valid if FORMAT is JPG)

OVERWRITE Overwrite target file if it already exists

Save new file as. (Only valid if you also used FILE ) By default the file name is kept but with the new
SAVEAS
file extension

SELECTED Convert all selected files

http://multicommander.com Generated : 10-Apr-2021 15:25:26 197


Multi Commander Documentation

MC.PictureTools.Resize
Resize one or many pictures

Options

FILE File to resize

FILES List of files to resize. Separate with Semicolon (";")

FOCUS Resize file in focus only

HEIGHT Height of target image in pixels or percent Use * to auto-calculate when keeping aspect ratio

OVERWRITE Overwrite target file if it already exists

REPLACE Replace original image file

Save new file as. (Only valid if you also used FILE ) By default the file name is kept but with the new
SAVEAS
file extension

SELECTED Resize all selected files

WIDTH Width of target image in pixels or percent Use * to auto-calculate when keeping aspect ratio

http://multicommander.com Generated : 10-Apr-2021 15:25:26 198


Multi Commander Documentation

Custom Commands - Examples


Examples of Custom commands

Set View filter for the Explorer Panel


Select files and folder in the Explorer Panel
Run an external program
Pack Files
Search For Files

Set View Filter


Set a filter to determine which files and/or folders are visible in the Explorer Panel:

MC.Explorer.SetViewFilter FILTER="*.jpg"

MC.Explorer.SetViewFilter FILTER="*.jpg *.gif *.png *.tiff"

Exclude folders named ".svn":

MC.Explorer.SetViewFilter FILTER="-/.svn"

Select Files and Folders


Select files and/or folders in the Explorer Panel:

MC.Explorer.Selection.Select FILTER="*.jpg *.png"

Run Application
Run an External Application:

MC.Run CMD="Notepad.exe"

Run an Application with Parameters:

MC.Run CMD="Notepad.exe" ARG="C:\myFile.txt"

Run an External Application as Administrator:

MC.Run CMD="Notepad.exe" ADMIN

Let Windows decide how the file should be opened. In the example below, Windows will open it in your default browser:

http://multicommander.com Generated : 10-Apr-2021 15:25:26 199


Multi Commander Documentation

MC.Run CMD="http://www.google.com" SHELL

Run external application with the file in focus as argument:

MC.Run CMD="MyApp.exe" ARG="${focusfilepath}"

MC.Run CMD="MyApp.exe" ARG="-a -f -i:${focusfilepath}"

Pack Files
Pack all files in "D:\MyFiles" using zip into a file named Backup.zip in the target location:

MC.Filesystem.PackFiles FILES="D:\MyFiles\*.*" METHOD="Zip"


TARGET="${targetpath}Backup.zip"

Pack all files in "D:\MyFiles" using zip into a file named "Backup-2010-03-10-12:22:22.zip" and store the file in the current
target location. The date and time will be the date/time at the moment the command is run:

MC.Filesystem.PackFiles FILES="D:\MyFiles\*.*" METHOD="Zip"


TARGET="${targetpath}${date:yyyy-MM-dd}-${time:hh:mm:ss}.zip"

Search for Files


Find all *.jpg and *.tiff files in the current source path; do not search in the ".backup" folder; auto-start the search when
the command is run;

MC.FileSearch.Search SEARCHIN="${sourcepath}" SEARCHFOR="*.jpg *.tiff"


EXCLUDE=".backup" AUTOSTART

http://multicommander.com Generated : 10-Apr-2021 15:25:26 200


Multi Commander Documentation

User Defined Commands - Batch Script (.BAT)


This command will generate a batch script (.bat) and run it.

Batch Scripts are based on the executable script system in Windows that goes back to the old DOS days. It is still used and
is quite useful, especially if you want to run a lot of external programs one after the other. In addition, you can send the
output of one program to be used as input to another.

When a Batch Script command is run a .bat file is generated from this command; the script is then run with its working
folder set to the current source path.

MultiTags
MultiTags are specially formatted texts that will be replaced with dynamic information. For example, the MultiTag
${focusfilepath} will be replaced by the full file path to the file currently in focus. The command is run through a process
that will translate MultiTags before it is executed.

Paths are not quoted by default, so if you need quotes around the path you have to put them around the MultiTag, e.g.
"${focuspath}".

Read more about MultiTags

Options
When you press the Option button you will get a list of options you can assign to the command.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 201


Multi Commander Documentation

(This list of options for Batch Script is not finalized yet)

Command Arguments
The dialog supports arguments to be sent to the command. These are sent to it if the command is called from the
Command line bar or if files are dropped on a button and the command has enabled the option "Use Dropped files as
parameter", or if this command is called from a Custom Command or MultiScript command.

The parameters are accessed by using the MultiTags ${param:<num>} where <num> identifies which argument to use.
${param:0} will be the first parameter, ${param:1} the second, ${param:2} the third and so on.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 202


Multi Commander Documentation

User Defined Commands - MultiScript


MultiScript commands are the most advanced type of User Defined Commands that can be created in Multi Commander.
MultiScript uses the built-in MultiScript Engine, which provides a wide variety of functions. Furthermore, it can be
extended with more functions through Extensions and Plug-ins.

With MultiScript, advanced scripts that use variables, functions and conditions can be created. While Custom Commands
access core Multi Commander functionality in the same way that the user would access it via the UI, MultiScript accesses
the functions at a lower level, giving more control. It will also not always show the standard UI for the operation since the
core functions are accessed directly.

MultiScript can call Custom Commands, so it is possible to create scripts that combine the flexibility of MultiScript with
the simplicity of Custom Commands.

(The example in the image above will find the first *.avi or *.mkv in the folder in focus, and then send that file to the Windows Shell to be opened by
the default video player).

Script Engine
The MultiScript Engine is a relatively simple but powerful script engine. It has support for everything you would expect
in a script engine such as variables, script-defined functions, arrays and more. Furthermore, Extensions and Plug-ins can
easily extend the script language with more functions.

There are, however, some restrictions when writing MultiScripts. The MultiScript Engine is a line-by-line engine, meaning
it executes the script one line at the time, so commands cannot be split across multiple lines.
Also it does not prioritize operators, therefore "2 + 4 * 8" will result in 48 and not 34. However it does support parentheses
so operations can be prioritized. To achieve the expected result of 34 in the previous example, you would re-write it as "2 +
( 4 * 8 )".

Read more on how to write MultiScripts

http://multicommander.com Generated : 10-Apr-2021 15:25:26 203


Multi Commander Documentation

List of Built-In MultiScript Functions

List of Extensions And Plug-in Defined Functions

MultiScript Examples

Using Custom Commands in a MultiScript


MultiScripts can call Custom Commands directly as long as the entire line is a Custom Command. Lines that are Custom
Commands are executed by the Custom Command Engine which does not understand MultiScript variables. So if a variable
should be passed to a Custom Command it must be enclosed with { }. Everything inside the { } is evaluated and resolved
before the Custom Command Engine executes the command:

@var $path = GetSourcePath();


@var $file = "MyFile.exe";
$file = path ^ $file;
if( FileExists($file ) == 1 )
{
MC.Run CMD={$file}
}

The MC.Run line is a Custom Command and does not know what variables are. So the $file variable is enclosed in { } and
translated before the line is executed by the Custom Command Engine.

Since Custom Commands are simple commands, they do not return results and from MultiScript there is no way to know if
a Custom Command was successful or not.
If the success or failure status is required then use the low-level functions provided by MultiScript.

Store MultiScript in External File

By enabling this option you can store the script in an external file.

Import / Export
Import will let you open a file and load the content of that file into the editor.

Export will let you save your script into an external file.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 204


Multi Commander Documentation

MultiScript Language Syntax


Supported Language Features
Language Syntax
Reserved Keywords
Data Types
Variables
Constants
Escape Sequences
Arrays
Operators ( +, /, *, -, ...)
Index Operator
Assignment Operators ( =, +=, -= )
Comparison Operators ( ==, >, <, >=, <= )
Negation Operator ( ! )
Special Path Operators ( ^ )
IF - Condition
FOR - Loop
WHILE - Loop
Functions
Classes

Language Syntax
The MultiScript script engine is a line-by-line engine, meaning that every script command must be on a single line. A
command cannot be split across multiple lines.

Every script command should end with ";". (This is not strictly required yet, but will be in the future. at that time it will
then be possible to split commands over multiple lines.)

New scope is declared with { } and is used for conditions, loops, functions and classes.

Example:

$len = StrLen($str);
if( $len > 10 )
{
$str = "Too long";
}

Lines starting with // or # are handled as comment lines and are ignored.
Comments are not allowed to be on the same line as valid code.

$len = StrLen($str); // Get string length (Comments and code on the same line are
not allowed)

The script engine evaluates expressions from left to right, but parentheses are evaluated first. Because of this, parentheses
must be used if multiple expressions are used within a line, to guarantee that they are evaluated in the correct order.

@var $result;

// INCORRECT
$result = 10 + 5 * MyFunc_GetMultiplyFactor();

http://multicommander.com Generated : 10-Apr-2021 15:25:26 205


Multi Commander Documentation

// CORRECT
$result = 10 + (5 * MyFunc_GetMultiplyFactor());

Function parameters can be variables, constants or expressions. Function parameters are evaluated before they are sent to
the function. Variables are always passed by value, meaning a copy of the variable is actually passed.

@var $result;

$result = CalculateResult( 4 + 5, "Parameter2" );

$result = CalculateResult( MyFunc_GetValue("hight") + 2 );

Reserved Keywords
The following words are reserved and cannot be used for variables or function names.

if for while break

continue return function class

new @var

Data Types
Variables and constants can be of different data types. Valid data types are String, Number, Array, Object and Handle.

Conversions from string to number and number to string are often done automatically, making it possible to concatenate a
number variable or constant to a string.

Variables
Variables are declared with the special keyword @var. The variable name must start with a $, and can only have the
characters a-z, A-Z and 0-9 in the name. Special characters are not allowed.

@var $v1;

Multiple variables can be declared on the same line.

@var $v1, $v2, $v3;

Variables can also be assigned a value when declaring them, either from a constant value or from a function call.

@var $v1 = 0;
@var $v2 = MyFunc();

http://multicommander.com Generated : 10-Apr-2021 15:25:26 206


Multi Commander Documentation

Declaring a variable with a name that already exists is allowed as long as the variable exists in a different scope.

@var $v1 = 0;
if( $v1 == 0 )
{
@var $v1;

// $v1 outside the if statement is not changed


$v1 = 20;
}

Arrays must be declared with a size, although you can manipulate the size later.

@var $arr[2];

Arrays can also be declared with values. In this case the size is implicit.

@var $arrStr[] = {"String1", "String2", "String3"};


@var $arrNum[] = {1, 2, 3};

Constants
Variables can be declared using number and string constants. Functions can also return constant arrays.

@var $v1 = 2;
@var $v2 = "string";
if($v2 == "string")
{
...

Escape Sequences
To be able to type constant strings containing special characters such as the newline character, double quotation mark,
tab, etc., they need to be written in a special way, using an escape sequence.

An escape sequence consists of a backslash (\) followed by a letter. Each escape sequence is regarded as a single
character.

Escape Sequence Represents

\n Newline

\r Carriage return

\t Tab

\" Double quote mark (")

\\ Backslash (\)

http://multicommander.com Generated : 10-Apr-2021 15:25:26 207


Multi Commander Documentation

If you want an actual backslash in your constant string you need to write "\\". This will translate into "\".

$var = "C:\\Temp\\MyFolder\\File.txt";

Escape sequences are only translated inside string constants enclosed in double quotes. Using single quoted strings will
not translate escape sequences. Using single quoted strings may make the code more readable, but some characters like
newline and single (or double) quotes cannot be used inside these strings.

$var = 'C:\Temp\MyFolder\File.txt';

Arrays
Arrays can hold multiple values. The values can be Strings, Numbers, Handles or other arrays.

The index operator ( [ ] ) is used to access array items. It can be used to get or to set values.
If using it to set a value you must be sure that you are not trying to set an item outside the bounds of the array.

When accessing array items the index value is 0-based. Thus the first item is index 0, the second is index 1. and so forth.

@var $arr[3];
$arr[0] = 2;
$arr[1] = 6;
$arr[2] = 8;

//This will fail (out-of-bounds).


$arr[4] = 10;

When assigning one array to another, a copy of each item in the original array is created.

@var $arr[3];
$arr[0] = 2;
$arr[1] = 6;
$arr[2] = 8;

@var $arr2;
$arr2 = $arr;

http://multicommander.com Generated : 10-Apr-2021 15:25:26 208


Multi Commander Documentation

Array Functions
There are several built-in array functions.
Read more about array functions

@var $arr = $arr[2] = {"item0", "item1"};


@var $count = arrayCount($arr);
// $count is 2

// Replace item 0 and 1


$arr[0] = "item1";
$arr[1] = "item2";

@var $str = $arr[1];


// $str is now "item2";

// Add and increase size of array


arrayAdd($arr, "item3");
$count = arrayCount($arr);
// $count is now 3

@var $idx = arrayFind($arr, "item3");


// $idx is 2

arrayRemove($arr, 0);
$count = arrayCount($arr);
// $count is now 2 and item "item1" has been removed

Operators
The usual arithmetic operators (+, -, *, /) are supported.

@var $v1, $v2;


$v1 = 5 + 2;
$v1 = $v1 - 1;
$v2 = $v1 * 2;
$v1 = $v2 / $v1;

http://multicommander.com Generated : 10-Apr-2021 15:25:26 209


Multi Commander Documentation

Since the script engine does not do any operator prioritization, parentheses must be used if multiple operators are used on
one line to guarantee that they are evaluated correctly. On number values, mathematical operations are used. The +
operator for two strings will concatenate the right string with the left.

@var $result;

$result = 5 + 4 * 2;
// $result is now 18

$result = 5 + (4 * 2);
// $result is now 13

$result = "StringA" + " " + "String B";


// $result "StringA StringB";

Index Operators
The index operator ( [ ] ) is supported for both Arrays and strings. On Arrays it is used to get/set an array item. On strings
it is used to get/set a character in the string.

@var $str = "MyString";


$str[0] = "Z";
// $str is now "ZyString";

$str = "abcdef";
@var $str2 = "12345";
$str[1] = $str2[3];
// $str is now "a4cdef";

Assignment Operators
The assignment operators (=, +=, -=) are used to assign the left side from the result of the expression to the right side.

@var $val = 1;
$val = 5;

// += is increment
$val += 2;
// $val is now 7

// -= is decrement
$val -= 2;
// $val is now 5

http://multicommander.com Generated : 10-Apr-2021 15:25:26 210


Multi Commander Documentation

Comparison Operators
Comparison operators are used to compare two values. The result of a comparison operator is 0 for false or 1 for true. The
following comparison operators are supported: == (equal), > (greater than), < (less than), >= (greater than or equal), <=
(less than or equal)

@var $val = 3;
$val = $val > 2;
// $val is now 1
$val = 4;
if( $val >= 4 )
{
...
}

Negation Operators
The negation operator (!) is used to negate a true/false value. The result of a negation is either 0 or 1.

@var $val = 1;
if( !$val )
{
// if $val is false
...
}

Special Path Operator


"^" is used as a special path operator. It will assume that both the left and right side are path items, and will insert a path
separator (\) if needed.

@var $path;
$path = "C:\\Path";
$path = $path + "MyFile.txt";
// $Path is now "C:\PathMyFile.txt"

$path = "C:\\Path";
$path = $path ^ "MyFile.txt";
// $Path is now "C:\Path\MyFile.txt"

$path = "C:\\Path\\";
$path = $path ^ "\\MyFile.txt";
// $Path is now "C:\Path\MyFile.txt"

http://multicommander.com Generated : 10-Apr-2021 15:25:26 211


Multi Commander Documentation

IF - Condition
The IF condition will evaluate its test expression. If the expression is greater than or equal to 1 (true) then it will execute
the scope after the if statement. If it is less then 1 (false) it it will jump over the scope or go to the else statement if
present.

New variables created inside the IF scope will only exist within that scope. New scope variables can be named the same as
variables in the outer scope (but this is not best practice).

@var $v = 2;
@var $s = 1;
if($v == 2)
{
// Local scope variable
@var $s = 10;
$v = 1;
}
else if( $v >= 3)
{
$v = 3;
}
else
{
$v = 4;
}

if( MyFync($v) )
{
$v = 6;
}

http://multicommander.com Generated : 10-Apr-2021 15:25:26 212


Multi Commander Documentation

FOR - Loops
A FOR loop statement has 3 expressions that are evaluated.

for( <init expression>; <condition expression>; <loop expression>)


{
<statement>
}

The Init Expression is evaluated once, before any other element of the for loop.

The condition expression is evaluated and tested each time it is about to enter the for scope.

The loop expression is evaluated each time it has ended a scope execution of the for loop.

The Initialization variable in the init-expression must be declared outside the for loop.

// Valid for expression


@var $n;
for( $n = 0; $n < 5; $n++ )
{
...
}

// Invalid for expression


for( @var $n = 0; $n < 5; $n++ )
{
...
}

A for loop terminates when the condition expression evaluates to 0 (false), or a break or return statement is executed
within the loop. A continue statement in a for loop terminates only the current iteration.

@var $n;
for( $n = 0; $n < 5; $n++ )
{
if($n == 2)
{
continue;
}
if($n == 4)
{
// break out of the loop
break;
}
}

http://multicommander.com Generated : 10-Apr-2021 15:25:26 213


Multi Commander Documentation

WHILE - Loops
A While loop has 1 expression that is evaluated every time through the loop until it is 0 (false).

while( <expression> )
{
<statement>
}

A while loop can terminate when a break, or return within the statement body is executed. Use continue to terminate
the current iteration without exiting the while loop. Continue passes control to the next iteration of the while loop.

@var $n = 10;
while( $n > 0 )
{
$n--;
}

@var $success = 1;
while( $success )
{
$success = MyFunc_DoWork();
}

Functions
With the function keyword it is possible to define a function that is called by the script.
The function must be defined before it is called. Therefore it is recommended to define all the script functions first in the
script.

Functions support arguments. Parameters sent to a function will be passed by value, meaning they are passed as copies. If
a variable passed as a parameter to a function is changed within the function, the original variable is not changed.

The function will return when it reaches the end of the function definition. It will by default always return 1 in this case. If
some other return value from the function is wanted then a return statement must be used.

function MyFunc( $a1, $a2 )


{
@var $result = $a1 + $a2;
$result = $result * 2;
return $result;
}

@var $n = 0;
$n = MyFunc( 2, 6 );

http://multicommander.com Generated : 10-Apr-2021 15:25:26 214


Multi Commander Documentation

The return statement can also be used to exit from the function before it reaches the end.

function MyFunc( $a1, $a2 )


{
@var $result = $a1 + $a2;
if( $result > 10 )
{
return $result;
}
$result = $result * 2

return $result;
}

@var $n = 0;
$n = MyFunc( 4, 8 );

http://multicommander.com Generated : 10-Apr-2021 15:25:26 215


Multi Commander Documentation

Classes
With the class keyword it is possible to define a class. A class is a group of variables and functions that are collected
together within an object. Objects in MultiScript are very simple variations of the "object" you find in languages like C++,
but without the support for public/private. Everything is public here.

A class is created from a definition using the new keyword. This will create a new instance of a class.

It is not possible to delete objects while running the script.

To access a function or variable in an object a dot (".") is used to as separator between the object variable and the class
variable name or function name.

When referring to a variable in an object variable the $ of the class variable is not written.

// INCORRECT
@var $n = $obj.$a;

// CORRECT
@var $n = $obj.a;

class MyClass
{
@var $a = 0;
@var $b = 1;

function( $v1, $v2 )


{
$b = $v1 + $v2;
return $b;
}
}

@var $obj = new MyClass;


@var $result = $obj.MyFunc( 2, 5 );
@var $n = $obj.a;

http://multicommander.com Generated : 10-Apr-2021 15:25:26 216


Multi Commander Documentation

MultiScript - Core built-in functions

Data Type Description


Type Description
<num> A variable or constant of type number

<str> A variable or constant of type string

<array> A variable or constant of type array

<handle> A variable of type handle

<var> A variable of any type

Script Language Functions


Return Value Function Definition Description
<num> IsTypeString( <var> ) Returns 1 if <var> is of type string

<num> IsTypeNum( <var> ) Returns 1 if <var> is of type number

<num> IsTypeArray( <var> ) Returns 1 if <var> is of type array

<num> IsTypeHandle( <var> ) Returns 1 if <var> is of type handle

<num> strtonum( <str> ) Converts a number of type string to number

<str> numtostr( <num> ) Converts a number of type number to string

See Also
Array Functions
String Functions

http://multicommander.com Generated : 10-Apr-2021 15:25:26 217


Multi Commander Documentation

MultiScript - Array functions

Array is an internal data type in MultiScript.


An array can contain multiple values of type string, number or array.

The following is a list of supported array functions:

array initialization Initialize an array with values when declared.

arrayCount Count the items in an array.

arrayAdd Add an item to an array.

arrayRemove Remove an item from an array.

arrayFind Find a string item in an array.

arrayIFind Find a string item in an array, Ignoring case differences.

ArraySort Sort the items in an array.

ArrayToString Concatenate all string in an array to a string.

StrLines2Array Transform a string with multiple lines into an array of lines.

StrLinesArray2String Transform an array of strings into a multi-line string.

StrTokenize2Array Tokenize a string into an array.

operator [] Get or Set an array item at a specified index position.

See also
SaveArray
LoadArray

Initialize Array
You can initialize an array when it is declared.

@var $arr[] = {<str>|<num>, <str>|<num>, ..., ... };

Parameters
<str>|<num>
String or Number values to insert into the array

Return value
An array with values inserted into it

Example

@var $arr[] = {"String1", "String2", "String3"};


@var $len = arrayCount($arr);
// $len is 3.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 218


Multi Commander Documentation

arrayCount
Count the items in an array.

<num> arrayCount( <array> input );

Parameters
input
Array to count items in

Return value
The number of items that are currently in the array

Example
See 'Initialize Array', above

arrayAdd
Add an item to an array.

<none> arrayAdd( <array> input, <str>/<num> value );

Parameters
input
Array to add value into
value
String or Number value that should be added to the array

Return value
Nothing

http://multicommander.com Generated : 10-Apr-2021 15:25:26 219


Multi Commander Documentation

arrayRemove
Remove an item from an array.

<none> arrayRemove( <array> input, <num> index );

Parameters
input
Array to remove item from
index
The position in the array from which to remove the item, beginning at index 0

Return value
Nothing

arrayFind
Search an array for a string value (case-sensitive).

<num> arrayFind( <array> input, <str> string );

Parameters
input
Array to be searched for the string
string
The string item to look for

Return value
Index position of the found string, or -1 if the string is not found

arrayIFind
Find a string value in an array, ignoring case differences.

<num> arrayIFind( <array> input, <str> string );

Parameters
input
Array to be searched for the string
string
The string item to look for

Return value
Index position of the found string, or -1 if string is not found

http://multicommander.com Generated : 10-Apr-2021 15:25:26 220


Multi Commander Documentation

ArraySort
Sort the items in an array.

<arr> ArraySort( <arr> arr );

Parameters
arr
Array that should be sorted

Return value
A new array that is sorted

Example

@var $arr[] = {3, 5, 2};


@var $arrNew = ArraySort( $arr );
// arrNew = 2,3,5

@var $arr[] = {"DD", "CC", "AA"};


@var $arrNew = ArraySort( $arr );
// arrNew = "AA", "CC", "DD"

http://multicommander.com Generated : 10-Apr-2021 15:25:26 221


Multi Commander Documentation

ArrayToString
Join all string in an array to a string.

<str> ArraySort( <arr> arr, <str> delimiter, <num> escape);

Parameters
arr
Array with strings
delimiter
What delimiter to use between the string, Eg " , " if you want space then comma then a space
aescaper
Set to 1 if you want all the string to have " around them. like if they are paths.

Return value
A string

Example

@var $arr[] = { 'c:\MyFile1.txt', 'c:\MyFile2.txt', 'c:\MyFile3.txt'};


@var $arrNew = ArrayToString( $arr, " , ", 0 );
// arrNew = c:\MyFile1.txt , c:\MyFile2.txt , c:\MyFile3.txt

@var $arr[] = { 'c:\MyFile1.txt', 'c:\MyFile2.txt', 'c:\MyFile3.txt'};


@var $arrNew = ArrayToString( $arr, " , ", 1 );
// arrNew = "c:\MyFile1.txt" , "c:\MyFile2.txt" , "c:\MyFile3.txt""

StrLines2Array
Transform a string with multiple lines into an array.

<array> StrLines2Array( <str> input );

Parameters
input
Multi-line string (all forms of newline are supported)

Return value
An array where the strings in input have been split at the line breaks

http://multicommander.com Generated : 10-Apr-2021 15:25:26 222


Multi Commander Documentation

StrLinesArray2String
Transform an array of strings into a multi-line string.

<str> StrLinesArray2String( <array> input, [<num> eol] );

Parameters
input
Array of strings
eol (Optional)
what kind of line break to use:
0 = CRLF (Windows) (this is the default if none is specified)
1 = LF (Linux)
2 = CR (Mac)

Return value
A multi-line string where the strings in the array input have been appended together with line breaks inserted between
the strings; the line break type is determined by the eol value

Example

@var $arr[] = {"String1", "String2", "String3"};


@var $strLines = StrLinesArray2String( $arr );
@var $strLinesLF = StrLinesArray2String( $arr, 1 );

StrTokenize2Array
Tokenize a string into an array, splitting it at specified delimiters.

<array> StrTokenize2Array( <str> input, <str> delimiter );

Parameters
input
String to tokenize
delimiter
Characters at which to split the string

Return value
An array of strings based on the string input after it is split. It is split wherever there are characters that match those in
delimiter. The delimiter character(s) will not appear in the new array (ie., they will be lost)

http://multicommander.com Generated : 10-Apr-2021 15:25:26 223


Multi Commander Documentation

operator [ ]
Index operator for setting or getting a value from an array.

<any> operator [<num>] <any>;

Parameters
[<num>]
The index position to set or get a value, beginning at index 0

Return value
The item at the selected index position

Example

@var $arr[] = {"Str1", "Str2", "Str3"};


$arr[1] = "Frog";
// string now contain the strings "Str1","Frog","Str3";
@var $str = $var[2];
// $str now contain the value "Str3"

http://multicommander.com Generated : 10-Apr-2021 15:25:26 224


Multi Commander Documentation

MultiScript - String Functions

The following string functions are supported in MultiScript:

StrLen Return the length of a string.

StrSub Return a substring from a string.

StrFind Return the position of a substring in a string.

StrRFind Return the position of a substring using reverse find (back-to-front search).

StrReplace Replace a substring in a string.

StrReplaceChars Replace all characters found with one new character.

StrReplaceCharsPairs Replace all characters found with a new characters.

StrToUpper Return a string in uppercase.

StrToLower Return a string in lowercase.

Return a string that has been trimmed of unwanted characters both at the beginning and
StrTrim
end.

StrTrimLeft Return a string that has been trimmed of unwanted characters from the left.

StrTrimRight Return a string that has been trimmed of unwanted characters from the right.

StrSplit Split a string and return the separated substrings as an array.

StrCompareNoCase Return the difference of two strings ignoring case differences.

operator == Return the difference of two strings (case-sensitive comparison).

StrIsEqual Return 1 if two strings are equal, otherwise 0 (case-sensitive).

StrIsEqualNoCase Return 1 if two strings are equal, ignoring case differences.

StrIsWildMatch Return 1 if two strings match using a case-sensitive wildcard algorithm.

StrIsWildMatchNoCase Return 1 if two strings match using a case-insensitive wildcard algorithm.

StrIsRegExpMatch Return 1 if two strings match using regular expressions (case-sensitive).

StrIsRegExpMatchNoCase Return 1 if two strings match using regular expressions, ignoring case difference.

StrRegExpFind Find a substring using a regular expression.

StrRegExpReplace Find a substring using a regular expression and replace it using regexp.

See also
SaveStringToFile
LoadStringFromFile

http://multicommander.com Generated : 10-Apr-2021 15:25:26 225


Multi Commander Documentation

StrLen
Return the length of a string.

<num> StrLen( <str> string );

Parameters
string
A string to get the length of

Return Value
The number of characters in string

Example

@var $str = "MyString";


@var $len = StrLen( $str );
// $len is 8

StrSub
Return a substring beginning at a specified location and having a specified length

<str> StrSub(<str> input, <num> offset, <num> length);

Parameters
input
A string from which the substring is extracted
offset
Initial position to begin the search (starting with 0)
length
The number of characters to include in the returned substring, or -1 to include all characters through to the end of
the string input

Return Value
A string that is the substring of input beginning at the specified location

http://multicommander.com Generated : 10-Apr-2021 15:25:26 226


Multi Commander Documentation

StrFind
Find the position of a substring in a string (case-sensitive).

<num> StrFind(<str> input, <str> find, <num> offset);

Parameters
input
The string to be searched
find
The string to be found
offset
Initial position to begin the search (starting with 0)

Return Value
The position in the input string in which the search string find is found (the first character position is 0), or -1 if find is
not found

StrRFind
Find the position of a substring in a string, searching the string in reverse (case-sensitive).

<num> StrRFind(<str> input, <str> find);

Parameters
input
The string to be searched
find
The string to be found

Return Value
The position in the input string in which the search string find is found (the first character position is 0), or -1 if find is
not found

http://multicommander.com Generated : 10-Apr-2021 15:25:26 227


Multi Commander Documentation

StrReplace
Replace a substring within a string (case-sensitive).

<str> StrReplace(<str> input, <str> find, <str> with );

Parameters
input
A string within which to replace the substring
find
The substring to be replaced
with
The string that the substring find should to be replaced with

Return Value
The string input with the substring find replaced by the string with

Example

@var $str = "MyString";


@var $str2 = StrReplace( $str, "My" , "New" );
// $str2 is "NewString"

StrReplaceChars
Replace a any specified character with one new character (case-sensitive).

<str> StrReplaceChars(<str> input, <str> find, <str> with );

Parameters
input
A string within which to replace the substring
find
A string of character to find
with
The character that any of the found characters should be replaced with

Return Value
The string input with the characters replaced, If any. If no characters was replace the string is returned unmodified

Example

@var $str = "MyString";


@var $str2 = StrReplaceChars( $str, "ryg" , "_" );
// $str2 is "M_St_in_"

http://multicommander.com Generated : 10-Apr-2021 15:25:26 228


Multi Commander Documentation

StrReplaceCharsPairs
Replace a any specified character with a matching characters (case-sensitive).
the find and with parameter must be same in length. Ex character 2 in "find" will when found be replaced with
character 2 from "with"

<str> StrReplaceCharsPairs(<str> input, <str> find, <str> with );

Parameters
input
A string within which to replace the substring
find
A string of character to find
with
The string of characters to replace a found character with

Return Value
The string input with the characters replaced, If any. If no characters was replace the string is returned unmodified

Example

@var $str = "MyString";


@var $str2 = StrReplaceChars( $str, "ryg" , "_23" );
// $str2 is "M2St_in3"

StrToUpper
Transform a string into all uppercase characters.

<str> StrToUpper(<str> input);

Parameters
input
A string that should be transformed

Return Value
An uppercase version of the string input

http://multicommander.com Generated : 10-Apr-2021 15:25:26 229


Multi Commander Documentation

StrToLower
Transform a string into all lowercase characters.

<str> StrToLower(<str> input);

Parameters
input
A string that should be transformed

Return Value
A lowercase version of the string input

StrTrim
Remove unwanted characters from both the left and right side of a string (case-sensitive).

<str> StrTrim(<str> input, <str> trimchars);

Parameters
input
A string that should be trimmed
trimchars
A string specifying all characters to be removed

Return Value
A string where all characters in trimchars have been removed from both the left side (beginning) and the right side
(end) of the string input

StrTrimLeft
Remove unwanted characters from the left side of a string (case-sensitive).

<str> StrTrimLeft(<str> input, <str> trimchars);

Parameters
input
A string that should be trimmed
trimchars
A string specifying all characters to be removed

Return Value
A string in which all characters in trimchars have been removed from the left side (beginning)

http://multicommander.com Generated : 10-Apr-2021 15:25:26 230


Multi Commander Documentation

StrTrimRight
Remove unwanted characters from the right side of a string (case-sensitive).

<str> StrTrimRight(<str> input, <str> trimchars);

Parameters
input
A string that should be trimmed
trimchars
A string specifying all characters to be removed

Return Value
A string in which all characters in trimchars have been removed from the right side (end)

StrSplit
Split a string into an array of strings (case-sensitive).

<array> StrSplit(<str> input, <str> delimiter);

Parameters
input
A string that should be split
delimiter
A string containing the character(s) that will be used as a delimiter

Return Value
The string input split into multiple strings in an array of type string. The string is split wherever the character(s) in the
string delimiter are located

If the characters in delimiter are not found, the original string input is returned

http://multicommander.com Generated : 10-Apr-2021 15:25:26 231


Multi Commander Documentation

StrCompareNoCase
Compare two strings, ignoring case differences.

<num> StrCompareNoCase(<str> string1, <str> string2);

Parameters
string1
First string to compare
string2
Second string to compare

Return Value
A number showing the differences between the strings string1 and string2. The return value indicates the lexicographic
relation of string1 to string2

< 0 if string1 is less than string2.


0 if string1 is equal to string2.
> 0 if string1 is greater than string2.

Operator ==
Compare two strings (case-sensitive).

<num> <str> == <str>;

Parameters
string1
First string to compare
string2
Second string to compare

Return Value
1 if the string are the same, and 0 if the are different.

Example

@var $str1 = "ABCDEF";


@var $str2 = "ABCDEF";
@var $val = $Str1 == $Str2;
// $val == 1
@var $str3 = "AbcDeF";
@var $val = $Str2 == $Str3;
// $val == 0

http://multicommander.com Generated : 10-Apr-2021 15:25:26 232


Multi Commander Documentation

StrIsEqual
Check whether two strings are equal (case-sensitive).

<num> StrIsEqual(<str> string1, <str> string2);

Parameters
string1
First string to compare
string2
Second string to compare

Return Value
A value of 1 if string1 is equal to string2, 0 if the strings are not identical

StrIsEqualNoCase
Check whether two strings are Equal, ignoring case differences.

<num> StrIsEqualNoCase(<str> string1, <str> string2);

Parameters
string1
First string to compare
string2
Second string to compare

Return Value
A value of 1 if string1 is equal to string2, 0 if the strings are not identical (ignoring case)

http://multicommander.com Generated : 10-Apr-2021 15:25:26 233


Multi Commander Documentation

StrIsWildMatch
Check if a string matches a wildcard criterion (case-sensitive).
Wildcard is a string containing "*" (for anything) and "?" (for any single character).

<num> StrIsWildMatch(<str> input, <str> wildcard);

Parameters
input
A string to check
wildcard
A wildcard string to check against

Return Value
1 if wildcard matches the string input, 0 if no match is found

Examples

@var $str = "123def567";


// If the character sequence "def" is in the string $str, $val1 will be 1
@var $val1 = StrIsWildMatch( $str , "*def*");

// The two first characters can be anything,


// But the third character must be a 3.
// And anything can be after it. then $val1 will be 1
@var $val1 = StrIsWildMatch( $str , "??3*");

StrIsWildMatchNoCase
Check if a string matches wildcard criteria, ignoring case differences.
Wildcard is a string containing "*" (for anything) and "?" (for any single character).

<num> StrIsWildMatchNoCase(<str> input, <str> wildcard);

Parameters
input
A string to check
wildcard
A wildcard string to check against

Return Value
1 if wildcard matches the string input, 0 if no match is found

http://multicommander.com Generated : 10-Apr-2021 15:25:26 234


Multi Commander Documentation

StrIsRegExpMatch
Check if a string matches a regular expression (case-sensitive).

<num> StrIsRegExpMatch(<str> input, <str> regexp);

Parameters
input
A string to check
regexp
A regular expression to check against

Return Value
1 if the regular expression regexp matches the string input, 0 if no match is found

StrIsRegExpMatchNoCase
Check if a string matches a regular expression, ignoring case differences.

<num> StrIsRegExpMatchNoCase(<str> input, <str> regexp);

Parameters
input
A string to check
regexp
A regular expression to check against

Return Value
1 if the regular expression regexp matches the string input, 0 if no match is found

http://multicommander.com Generated : 10-Apr-2021 15:25:26 235


Multi Commander Documentation

StrRegExpFind
Find a substring using a regular expression.

<num> StrRegExpFind(<str> input, <str> regexp);

Parameters
input
String to find a substring in
regexp
Regular expression to find the substring

Return Value
Position in the string input where a match was found, or -1 if no match is found

Example

@var $str = "Program v3.10";


@var $len = StrRegExpFind( $str , ".v[0-9].[0-9][0-9]" );
// $len is 7

http://multicommander.com Generated : 10-Apr-2021 15:25:26 236


Multi Commander Documentation

MultiScript - Core Functions - RowList functions

The RowList functions are special functions to make it easier to work with text lists.

Example
Suppose the content of the file "d:\temp\list.txt" looks like the following:

Person Z 0202-1111111 Fake Street 1


Person A 0202-2222222 Fake Street 2
Person B 0303-3333333 Fake Street 3
Person C 0202-4444444 Fake Street 4
Person D 0202-5555555 Fake Street 5

The columns are separated with a tab character "\t".

This script will load that file into a rowlist and then get each column item one-by-one.

@var $list = RowListLoad("d:\\temp\\list.txt", "\t");


@var $rowcnt = RowListCount($list);
@var $idx = 0;
for( $idx = 0; $idx < $rowcnt; $idx++)
{
@var $Name = RowListItem($list, $idx, 0));
@var $Phone = RowListItem($list, $idx, 1));
@var $Street = RowListItem($list, $idx, 2));
}

RowList Functions
RowListLoad Load a rowlist

RowListClose Close a rowlist

RowListCount Get the number of rows in the rowlist

RowListColumnCount Get the number of columns

RowListArray Return a specifed row as an array

RowListItem Get a row item.

ReplaceTagsInString Replace the tags in a string with values from a rowlist.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 237


Multi Commander Documentation

RowListLoad
Load a file as a rowlist.

<handle> RowListLoad(<str> filename, <str> delimiter);

Parameters
filename
File to load as a rowlist
delimiter
Columns are split using this character.

Return value
A handle to a rowlist, or 0 if the load failed.

RowListClose
Close a rowlist

<num> RowListClose(<handle>);

Parameters
handle
Handle to a rowlist

Return value
1 for success, 0 for failure.

RowListCount
Count the number of rows in a list

<num> RowListCount(<handle>);

Parameters
handle
Handle to a rowlist

Return value
The number of rows in the list.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 238


Multi Commander Documentation

RowListColumnCount
Count the number of columns in a list.

<num> RowListColumnCount(<handle>);

Parameters
handle
Handle to a rowlist

Return value
The number of columns in the list.

RowListArray
Get a row from a list as an array

<array> RowListArray(<handle> <num> row);

Parameters
handle
Handle to a rowlist
row
Index of the row to return as an array.

Return value
An array with all the columns of the specified row.

RowListItem
Get a single item from a list.

<string> RowListItem(<handle> <num> row, <num> col);

Parameters
handle
Handle to a rowlist
row
Row index
col
Column index

Return value
The value of the specified column in the specified row.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 239


Multi Commander Documentation

ReplaceTagsInString
Replace tags in a string with values from a rowlist

<string> RowListItem(<str> tagString, <str> tag, <handle> rowlist, <handle>


rowIdx);

Parameters
tagString
A string with tag that should be replace with values from the rowlist
tag
The tags used in tagString
rowlist
Handle to a rowlist
rowIdx
Index of what row to use when replacing values in string

Return value
A string with tags replaced with values from the rowlist

Example

@var $list = RowListLoad("d:\\temp\\list.txt", "\t");

@var $strTemplate = "Name : %%TAG0%% - Address : %%TAG2%% - Phone : %%TAG1%%";


@var $rowIdx = 0;

@var $strOutput = ReplaceTagsInString($str, "%%TAG(#)%%", $list, $rowIdx);

// $strOutput == "Name : Person Z - Address : Fake Street 1 - Phone :


0202-1111111"

http://multicommander.com Generated : 10-Apr-2021 15:25:26 240


Multi Commander Documentation

MultiScript - Date/Time Functions


GetTime Get the current date and time

FormatDate Format a date

FormatTime Format a time

TimeLocal2UTC Convert a time value from local to UTC

TimeUTC2Local Convert a UTC time value to local time

ParseDateTime Convert a Date/Time string to a time value

Related
GetFileTime / SetFileTime

GetTime
Get the current date and time.

<num> GetTime([<num> getUTCTime]);

Parameters
getUTCTime
(Optional, default: 0)
If 1, the time will be UTC else it will be local time. If not set, local time is used

Return Value
The number of seconds since 1-Jan-1970 00:00:00

Example

@var $nowLocal = GetTime();


@var $nowUTC = GetTime(1);

http://multicommander.com Generated : 10-Apr-2021 15:25:26 241


Multi Commander Documentation

FormatDate
Format a number to its date value.

<str> FormatDate(<str> format, <num> datevalue);

Parameters
format
Date formatting string

datevalue
The number of seconds since 1-Jan-1970 00:00:00

Notes
See Date Formatting to see how to format dates

Return Value
A formatted date string

Example

@var $now = GetTime();


@var $date = FormatDate( "yyyy-MM-dd" , $now );

http://multicommander.com Generated : 10-Apr-2021 15:25:26 242


Multi Commander Documentation

FormatTime
Format a number to its time value.

<str> FormatTime(<str> format, <num> timevalue);

Parameters
format
Time formatting string

timevalue
The number of seconds since 1-Jan-1970 00:00:00

Notes
See Time Formatting to see how to format times

Return Value
A formatted time string

Example

@var $now = GetTime();


@var $date = FormatTime( "HH:MM:SS" , $now );

TimeLocal2UTC
Convert a time value from local to UTC.

<num> FormatTime(<num> timevalue);

Parameters
timevalue
The number of seconds since 1-Jan-1970 00:00:00

Return Value
A time value converted to UTC

Example

@var $now = GetTime();


@var $utc = TimeLocal2UTC($now);
@var $date = FormatTime( "HH:MM:SS" , $utc );

http://multicommander.com Generated : 10-Apr-2021 15:25:26 243


Multi Commander Documentation

TimeUTC2Local
Convert a UTC time value to local time

<num> TimeUTC2Local(<num> timevalue);

Parameters
timevalue
The number of seconds since 1-Jan-1970 00:00:00

Return Value
A time value converted from UTC to local

Example

@var $now = GetTime();


@var $utc = TimeLocal2UTC($now);
@var $local = TimeUTC2Local($utc);
// $local and $now should now be the same
@var $date = FormatTime( "HH:MM:SS" , $local );

ParseDateTime
Convert a Date/Time string to a time value

<num> ParseDateTime(<str> strDateTime, <str> format);

Parameters
strDateTime
A Date/Time as a string
format
A Date/Time formatting string

Return Value
A Date/Time string converted to a numeric value
Formatting information is available here: http://pubs.opengroup.org/onlinepubs/009695399/functions/strptime.html

Example

@var $str = "2012-01-01 12:32:11";


@var $val = ParseDateTime($str, "%Y-%m-%d %H:%M:%S");

http://multicommander.com Generated : 10-Apr-2021 15:25:26 244


Multi Commander Documentation

MultiScript - File system functions

File and Folder Properties

GetFileTime Get the date/time of a file or folder.

SetFileTime Set the date/time of a file or folder.

IsFolder Check if a file item is a folder.

FileExists Check if a file (or folder) exists.

GetFileSize Get the size of a file.

GetFileProp Get a file property.

GetFSLinkType Get what link type a link is (Symbolic link, Shortcut, hardlink, Junction).

GetFSLinkTarget Get the target path of a file system link.

GetWinShortcutTarget Get the target path of a shortcut link (.lnk).

Filesystem Matching

FindFirstFile Return the first matching file.

FindFiles Return an array of all matching files.

File Attributes

GetFileAttributes Return the attributes of a file or folder.

AddFileAttributes Add an attribute(s) to a file or folder.

RemoveFileAttributes Remove attribute(s) from a file or folder.

SetFileAttributes Set attribute(s) of a file or folder (replace existing).

HasFileAttributes Check if a file or folder has specified attribute(s).

Filesystem Operations

CopyFile Copy a file.

MoveFile Move a file.

RenameFile Rename a file.

UnpackFile Unpack an archive (zip, 7z, rar, tar, tgz).

PackFile Pack file(s) into an archive (zip, 7z, tar, gz).

DeleteFile Delete a single file or folder.

DeleteFiles Delete multiple files or folders.

MakeDir Create a new folder.

Filesystem Filtering

FilterCreate Create a filter handle.

FilterAddRule Add a filter rule.

FilterLoad Load a filter from file.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 245


Multi Commander Documentation

FilterLoadById Load an existing advanced filer by id.

FilterSave Save a filter to file.

FilterIsMatch Test if a file is a match against a filter.

File Path Operations

PathGetPathPart Get the path part of a full filename path.

PathGetNamePart Get the name path of a full filename path.

PathGetFileExtPart Get the file extension of a full filename path.

PathGetParts Get an array of all file path parts.

File Path Conversion Operations

PathMakeRelativeMC Convert a path to be relative to where Multi Commander is started from.

PathMakeAbsoluteMC Convert a relative path to an absolute path.

PathTranslatePath Convert a relative path to absolute; also expand environment string.

Network File Operations

NetWGet Download web content to file.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 246


Multi Commander Documentation

GetFileTime
Get the date/time of a file or folder.

<num> GetFileTime( <str> path, [<num> utctime], [<num> filetimepart] );

Parameters
path
Path to the file/folder of interest
utctime
(Optional, default: 0)
0 = Return time in local time 1 = Return time in UTC
filetimepart
(Optional, default: 0)
0 = Last Write time
1 = Create time
2 = Last Access time

Return value
0 for failure, else the number of seconds since 1970-01-01 00:00:00

Example

// Change the time of the file item in focus to 1h previous ( 3600 sec )
@var $time = 0;
@var $file = GetSourceFocusPath();
if( StrLen( $file ) > 0 )
{
$time = GetFileTime( $file );
$time = $time - 3600;
SetFileTime( $file, $time );
}

http://multicommander.com Generated : 10-Apr-2021 15:25:26 247


Multi Commander Documentation

SetFileTime
Set the date/time of a file or folder.

<num> SetFileTime( <str> path, <num> time, [<num> utctime], [<num> filetimepart]
);

Parameters
path
Path to the file/folder of interest
time
Time in seconds since 1970-01-01 00:00:00
utctime
(Optional, default: 0)
0 = Return time in local time
1 = Return time in UTC
filetimepart
(Optional, default: 0)
0 = Last Write time
1 = Create time
2 = Last Access time
4 = Last Write, Create and Last Access

Return value
1 for success, else 0

Example

// See GetFileTime

http://multicommander.com Generated : 10-Apr-2021 15:25:26 248


Multi Commander Documentation

IsFolder
Return 1 if the specified path is a folder.

<num> IsFolder( <str> path );

Parameters
path
Path to a file or folder to be checked

Return value
1 if the path exists and is a folder, else 0

Example

@var $res = IsFolder( "C:\\temp" );

FileExists
Return a value > 0 if the specified file exists.

<num> FileExists( <str> path );

Parameters
path
Path to a file be checked

Return value
1 if the path exists and is a file, 2 if the path exists and is a folder, 0 if the path does not exist

Example

@var $res = FileExists( "C:\\temp\\MyFile.txt" );

http://multicommander.com Generated : 10-Apr-2021 15:25:26 249


Multi Commander Documentation

GetFileSize
Return the size of the file.

<num> GetFileSize( <str> path );

Parameters
path
Path to a file or folder to be checked

Return value
The file size in bytes, or 0 if the item is not a file or does not exist

Example

@var $res = GetFileSize( "C:\\temp\\MyFile.txt" );

GetFileProp
Return a file property of a file.

<num> GetFileProp( <str> path, <str> fileProp );

Parameters
path
Path to the file or folder of interest
fileProp
File property name (eg. "MCAudioProp.genre")

Return value
A string containing the file property

Example

@var $res = GetFileProp( "C:\\temp\\MyPopSong.mp3", "MCAudioProp.genre" );


// res == "pop"

Notes
See the File Property List for a list of all the available file properties.
(These are the same file properties as are used by the MultiRename tool.)

http://multicommander.com Generated : 10-Apr-2021 15:25:26 250


Multi Commander Documentation

GetFSLinkType
Get what link type a link is.

<num> GetFSLinkType( <str> path);

Parameters
path
Path to the file or folder of interest

Return value
0 - Not a link
1 - Junction
2 - Symlink
3 - MountPoint

Example

@var $res = GetFSLinkType( 'C:\\Documents and Settings' );


// res == 1 // Junction

GetFSLinkTarget
Get the target path of a file system link..

<str> GetFSLinkTarget( <str> path);

Parameters
path
Path to the file or folder of interest

Return value
The path of the linktarget.

Example

@var $res = GetLinkTarget( 'C:\\Documents and Settings' );


// res == "C:\\Users"

http://multicommander.com Generated : 10-Apr-2021 15:25:26 251


Multi Commander Documentation

GetWinShortcutTarget
Get the target path of a shortcut (.lnk).

<str> GetWinShortcutTarget( <str> path);

Parameters
path
Path to the file or folder of interest

Return value
The path of the shortcut.

Example

@var $res = GetWinShortcutTarget( 'C:\\MyFolder\\MyShortcut.lnk' );


// res == "C:\\Users"

FindFirstFile
Return the first matching file name (this function also exists as "_findfirstfile" ).

<str> FindFirstFile( <str> path, [<num> nameOnly], [<num> dbgInfo] );

Parameters
path
Path with filter. eg. "c:\\myfolder\\*.txt"
nameOnly
Optional. If 1, return only the name and extension; no path
dbgInfo (Optional)
If 1, output extra debugging information to the log window

Return value
Full file path to the first matching file

Example

@var $file = FindFirstFile( "C:\\temp\\Co*.txt" );

http://multicommander.com Generated : 10-Apr-2021 15:25:26 252


Multi Commander Documentation

FindFiles
Return array of matching files (this function also exists as "_findfiles" ).

<arr> FindFiles( <str> path, [<num> namesOnly], [<num> dbgInfo] );

Parameters
path
Path with filter. eg. "c:\\myfolder\\*.txt"
namesOnly
Optional. If 1, return only the names and extensions; no paths
dbgInfo
Optional. If 1, output extra debugging information to the log window

Return value
An array of full file paths of matching files

Example

@var $files = FindFiles( "C:\\temp\\*.txt" );

GetFileAttributes
Return a string of file attributes.

<str> GetFileAttributes( <str> path );

Parameters
path
Path of the file or folder to get attributes for

Return value
A string containing the attribute characters for the file or folder.
A - Archive
R - Read only
S - System
H - Hidden

Example

$attributes = GetFileAttributes( $path );

http://multicommander.com Generated : 10-Apr-2021 15:25:26 253


Multi Commander Documentation

AddFileAttributes
Set an attribute for a file or folder.

<str> AddFileAttributes( <str> path, <str> attributes );

Parameters
path
Path of the file or folder to get attributes for
attributes
A string containing the attributes to add. Valid attributes are: a, r, s, h

Return value
1 if attributes was set, else 0.

Example

// Add Read Only attribute


AddFileAttributes( $path, "r" );

RemoveFileAttributes
Remove attributes from a file or folder.

<num> RemoveFileAttributes( <str> path, <str> attributes );

Parameters
path
File or Folder to remove attribute from
attributes
A string containing the attributes to remove. Valid attributes are: a, r, s, h

Return value
1 if attributes was set, else 0.

Example

// Remove the Read Only attribute


RemoveFileAttributes( $path, "r" );

http://multicommander.com Generated : 10-Apr-2021 15:25:26 254


Multi Commander Documentation

SetFileAttributes
Set attributes for a file or folder, replacing existing attributes.

<num> SetFileAttributes( <str> path, <str> attributes );

Parameters
path
File or Folder to set attribute for
attributes
A string containing the attributes to add. Valid attributes are: a, r, s, h

Return value
1 if attributes was set, else 0.

Example

// Set the Read Only and Hidden attribute


SetFileAttributes( $path, "rh" );

HasFileAttributes
Check if a file or folder has particular attributes.

<num> HasFileAttributes( <str> path, <str> attributes );

Parameters
path
File or Folder to check attributes for
attributes
A string containing the attributes to check for. Valid attributes are: a, r, s, h

Return value
1 if the file or folder has the requested attributes, else 0. -1 for error

Example

// Check if a file has a Read Only attribute


$isReadonly = HasFileAttributes( $path, "r" );

http://multicommander.com Generated : 10-Apr-2021 15:25:26 255


Multi Commander Documentation

CopyFile
Copy a single file or folder.

<num> CopyFile( <str> targetPath, <str> sourceFile, <str> options );

Parameters
targetPath
Target Path to where the file/folder should be copied
sourceFile
Source Path of the file/folder to copy
options
Optional parameter (case-sensitive). Separate multiple options with commas.
"NOWAIT" - Script will continue directly. Will not wait until copy is completed
"NOPROGRESS" - Show no progress window. No error dialog will be shown. It will always skip files on error
"NODIALOG" - Show no confirmation dialog
"SILENT" - Silent. Do not ask what to do: skip on errors and continue
"NEWQUEUE" - If a file operation already exists. Start a new queue (override default setting)
"USEEXISTINGQUEUE" - If a queued file operation already exists then use its queue (override default setting)
"OVERWRITE_ALL" - If a file already exists on the target path, overwrite it without asking
"OVERWRITE_IFNEWER" - Overwrite existing if date of the new file is newer
"OVERWRITE_IFSIZEDIFF" - Overwrite existing if size if different
"OVERWRITE_IFSIZELARGER" - Overwrite existing if size is larger
"OVERWRITE_IFSIZESMALLER" - Overwrite existing if size is smaller
"OVERWRITE_AUTORENAME_EXISTING" - Keep both - Autorename existing file
"OVERWRITE_AUTORENAME_NEW" - Keep both- Autorename the new file
** Multiple OVERWRITE_xxx flags are NOT allowed

Return value
0 for failure, 1 for success

Example

CopyFile( $targetPath, $sourceFile, "NODIALOG, OVERWRITE_ALL" );


CopyFile( 'D:\Temp\', 'R:\MyFile\File.txt', "NODIALOG, OVERWRITE_ALL" );

http://multicommander.com Generated : 10-Apr-2021 15:25:26 256


Multi Commander Documentation

MoveFile
Move a single file or folder.

<num> MoveFile( <str> targetPath, <str> sourceFile, <str> options );

Parameters
targetPath
Target Path to where the file/folder should be moved
sourceFile
Source Path of the file/folder to move
options
Optional parameter (case-sensitive). Separate multiple options with commas.
"NOWAIT" - Script will continue directly. Will not wait until copy is completed
"NOPROGRESS" - Show no progress window. No error dialog will be shown. It will always skip files on error
"NODIALOG" - Show no confirmation dialog
"SILENT" - Silent. Do not ask what to do: skip on errors and continue
"NEWQUEUE" - If a file operation already exists. Start a new queue (override default setting)
"USEEXISTINGQUEUE" - If a queued file operation already exists then use its queue (override default setting)
"OVERWRITE_ALL" - If a file already exists on the target path, overwrite it without asking
"OVERWRITE_IFNEWER" - Overwrite existing if date of the new file is newer
"OVERWRITE_IFSIZEDIFF" - Overwrite existing if size if different
"OVERWRITE_IFSIZELARGER" - Overwrite existing if size is larger
"OVERWRITE_IFSIZESMALLER" - Overwrite existing if size is smaller
"OVERWRITE_AUTORENAME_EXISTING" - Keep both - Autorename existing file
"OVERWRITE_AUTORENAME_NEW" - Keep both- Autorename the new file
** Multiple OVERWRITE_xxx flags are NOT allowed

Return value
0 for failure, 1 for success

Example

MoveFile( $targetPath, $sourceFile, "NODIALOG, OVERWRITE_ALL" );


MoveFile( 'D:\Temp\', 'R:\MyFile\File.txt', "NODIALOG, OVERWRITE_ALL" );

http://multicommander.com Generated : 10-Apr-2021 15:25:26 257


Multi Commander Documentation

RenameFile
Rename a file or folder using the Multi Commander virtual filesystem.

<num> RenameFile( <str> filepath, <str> newName, <str> options );

Parameters
filepath
Full path of the file to rename (eg. "C:\\temp\\myfile.txt")
Newname
The new file name. ONLY THE NAME. No path parts may be included
Options
Optional parameter (case-sensitive). Separate multiple options with commas.
"SILENT" - Show no error dialog. If any error occurs then abort and return then error code
"RENAME_RO" - Allow renaming of a file with readonly attribute (as long as the file system allows it)
"RENAMNE_OVR" - If a file with the new name already exists, overwrite it

Return value
1 if rename succeeded, else error code.

Example

@var $filename = "C:\\temp\\MyFile.txt";


@var $newname = "MyNewName.txt";

RenameFile( $filename, $newname, "SILENT, RENAME_OVR" );

http://multicommander.com Generated : 10-Apr-2021 15:25:26 258


Multi Commander Documentation

UnpackFile
Unpack an archive using the file operations in Multi Commander.

<num> UnpackFile( <str> fileToUnpack, <str> targetFolder, <str> filter, <str>


options, <str> password );

Parameters
fileToUnpack
Full path to the file you want to unpack (eg. "C:\\temp\\myfile.zip")
targetFolder
Path to where you want the files to be unpack into (eg. "C:\\temp\\")
filter
Wildcard filter used to match files to unpack. Empty or *.* to unpack all
options
Optional parameter (case-sensitive). Separate multiple options with commas.
"SILENT" - Show no error dialog. If any error occurs then abort and return then error code
"NOWAIT" - Script will continue directly. Will not wait until copy is completed
"NOPROGRESS" - Show no progress window. No error dialog will be shown. It will always skip files on error
"OVERWRITEALL" - If a file already exists on the target path, overwrite it without asking
"NOQUEUE" - If a file operation already exists. Start a new queue (override default setting)
"USEEXISTINGQUEUE" - If a queued file operation already exists then use its queue (override default setting)
Password
Optional parameter. Sets the password needed to unpack the archive, if archive is password protected

Return value
1 if unpacking succeeded, else error code

Example

@var $filename = "C:\\temp\\MyFile.zip";


@var $target = "C:\\temp\\Up\\";

UnpackFile( $filename, $target, "*.*", "NOWAIT, OVERWRITEALL", "password123" );

http://multicommander.com Generated : 10-Apr-2021 15:25:26 259


Multi Commander Documentation

PackFile
Pack files and/or folders into a archive (zip,7z,..) using the Multi Commander file operations.

<num> PackFile( <str> targetFile, <str> sourceFile, <str> filter, <str> method,
<str> options, <str> password );

Parameters
targetFile
Full path to the file to create (eg. "C:\\temp\\myfile.zip")
sourceFile
Full path to file or folder to pack
filter
Wildcard filter to use when adding files to archive
method
compression profile to use or default method for that type (eg. "zip" )
options
Optional parameter (case-sensitive). Separate multiple options with commas.
"SILENT" - Show no error dialog. If any error occurs then abort and return then error code
"NOWAIT" - Script will continue directly. Will not wait until copy is completed
"NOPROGRESS" - Show no progress window. No error dialog will be shown. It will always skip files on error
"OVERWRITEALL" - If a file already exists on the target path, overwrite it without asking
"NOQUEUE" - If a file operation already exists. Start a new queue (override default setting)
"USEEXISTINGQUEUE" - If a file operation already exists then use it (override default setting)
Password
Optional parameter. Password you want to set for the archive if you want to protect it

Return value
1 if packing succeeded, else error code

Example

@var $filename = "C:\\temp\\MyFile.zip";


@var $folderToPack = "C:\\temp\\MyFiles\\";

PackFile( $filename, $folderToPack, "*.*", "zip", "NOWAIT" );


// or
PackFile( $filename, $folderToPack, "*.txt", "Internal Zip (Max)", "NOWAIT",
"MyPassword" );

http://multicommander.com Generated : 10-Apr-2021 15:25:26 260


Multi Commander Documentation

DeleteFile
Delete a single file using the Multi Commander virtual filesystem.

<num> DeleteFile( <str> filename, <arr> options );

Parameters
filename
file or folder to delete
options
Optional parameter (case-sensitive). Separate multiple options with commas.
"RECYLE" - Delete to recycle bin
"NOPROGRESS" - Show no progress window
"NODIALOG" - Show no confirmation dialog
"SILENT" - Show no error dialog if delete fails

Return value
0 for failure, 1 for success

Example

@var $options[] = {"NODIALOG", "SILENT", "RECYLE"};


DeleteFile( $filename, $options );

http://multicommander.com Generated : 10-Apr-2021 15:25:26 261


Multi Commander Documentation

DeleteFiles
Delete multiple files using the Multi Commander virtual filesystem.

<num> DeleteFiles( <arr> filenames, <arr> options );

Parameters
filenames
array of files or folders to delete
options
Optional parameter (case-sensitive). Separate multiple options with commas.
"RECYLE" - Delete to recycle bin
"NOPROGRESS" - Show no progress window
"NODIALOG" - Show no confirmation dialog
"SILENT" - Show no error dialog if delete fails

Return value
0 for failure, 1 for success

Example

@var $filenames[] = {'e:\file1.txt', 'e:\file2.txt', 'e:\Folder1'};


@var $options[] = {"NODIALOG", "SILENT", "RECYLE"};
DeleteFile( $filenames, $options );

http://multicommander.com Generated : 10-Apr-2021 15:25:26 262


Multi Commander Documentation

MakeDir
Create a new folder using the Multi Commanders virtual filesystem.

<num> MakeDir( <str> path, <str> options );

Parameters
filename
Full path to folder to create. Can also be any virtual path like WPD:\ REG:\ FTP:\ or inside zips or 7z
options
Optional parameter (case-sensitive). Separate multiple options with commas.
"LOCAL" - Hint to the virtual filesystem that the path is a normal local path
"RECURSIVE" - Create folders recursively. Only work if LOCAL also is specified

Return value
0 for success, else error code

Example

MakeDir( "C:\\Temp\NewFolder\\SubFolder\\", "LOCAL,RECURSIVE" );


MakeDir( "WPD:\\MyPhone\\SubFolder\\", "" );
MakeDir( "C:\\Temp\\MyFiles.zip\\Folder", "" );

FilterCreate
Create a handle to a filter. This handle will reference all filter rules added with FilterAddRule (see below).

<handle> FilterCreate();

Parameters
None

Return value
Return a handle to a filter

Example

@var $filter = FilterCreate();

http://multicommander.com Generated : 10-Apr-2021 15:25:26 263


Multi Commander Documentation

FilterAddRule
Add a Rule to filter.

<str> FilterAddRule( <handle> filter, <str> matchType, <str> value, [<num>


invert] );

Parameters
filter
Handle to a filter created by FilterCreate()
field to match
The field to do the match against:
fullname
ext
namepart
size
date
attribute
filecontent
extendedproperty
Match Type
The type of matching the rule should attempt.
is (if field is a text or number, eg. filename or size)
lessthan (if field is number, eg. size)
morethan (if field is number, eg. size)
wildcard (if field is of text type)
contains (if field is of text type)
beginwith (if field is of text typ )
endwith (if field is of text type)
before (if field is of date type)
after (if field is of date type)
has (if field is of attribute type)
hasnot (if field is of attribute type)
regex (if field is of text type)
hex (if field is of filecontent type)
Value
The value that the filter should match against
Invert
Optional parameter. If set to 1 the result will be inverted

Return value
1 if filter rule was added, else 0

Example

@var $filter = FilterCreate();


FilterAddRule( $filter, "Fullname", "Contains", "Frog" );
FilterAddRule( $filter, "ext", "Wildcard", "*.txt" );
FilterAddRule( $filter, "date", "before", "2016-05-01" );

http://multicommander.com Generated : 10-Apr-2021 15:25:26 264


Multi Commander Documentation

FilterLoad
Load a filter from a file.

<handle> FilterLoad( <str> filename );

Parameters
filename
Full path to the file with a filter

Return value
Handle to a filter

Example

@var $filter = FilterLoad( "D:\\MyFilter.xml" );


@var $isMatch = IsFilterMatch( $filter, $file );

FilterLoadById
Load a filter from an existing advanced filter.

<handle> FilterLoadById( <str> FilterID );

Parameters
FilterID
GUID of a existing filter id

Return value
Handle to a filter

Example

@var $filter = FilterLoad( "3790d1abd9e849dba01de220375bb196" );


@var $isMatch = IsFilterMatch( $filter, $file );

http://multicommander.com Generated : 10-Apr-2021 15:25:26 265


Multi Commander Documentation

FilterSave
Save a filter to a file.

<num> FilterSave( <str> filename );

Parameters
filename
Full file path to the file to save

Return value
1 if successful else 0

Example

@var $filter = FilterCreate();


FilterAddRule( $filter, "Fullname", "Contains", "Frog" );
FilterAddRule( $filter, "ext", "Wildcard", "*.txt" );
FilterAddRule( $filter, "date", "before", "2016-05-01" );

FilterSave( $filter, "C:\\MyFilter.xml" );

http://multicommander.com Generated : 10-Apr-2021 15:25:26 266


Multi Commander Documentation

FilterIsMatch
Check if a file is a match against a filter.

<num> FilterSave( <handle> filter, <str> filepath );

Parameters
filter
Handle to a filter
filepath
Full path of a file to check the filter against

Return value
1 if file is a match, else 0

Example

@var $filter = FilterCreate();


FilterAddRule( $filter, "Fullname", "Contains", "Frog" );
FilterAddRule( $filter, "ext", "Wildcard", "*.txt" );
FilterAddRule( $filter, "date", "before", "2016-05-01" );

@var $isMatch = FilterIsMatch( $filter, "C:\\Temp\\MyFrog.txt" );

PathGetPathPart
Get the path part of a full filename path.

<str> PathGetPathPart( <str> path, [<num> stripEndingSlash] );

Parameters
path
Full file/folder path
stripEndingSlash
Optional parameter. If 1, then the trailing backslash of the path will be removed

Return value
The path part of a full file/folder path

Example

@var $path = PathGetPartPath( "C:\\temp\\MyPopSong.mp3" );


// res == "C:\\temp\\"

http://multicommander.com Generated : 10-Apr-2021 15:25:26 267


Multi Commander Documentation

PathGetNamePart
Get the name path of a filename path.

<str> PathGetNamePart( <str> path, [<num> stripExtension] );

Parameters
path
Full file/folder path
stripExtension
Optional parameter. If 1, the file extension will be removed

Return value
The name part of a full file/folder path

Example

@var $nameA = PathGetPartPath( "C:\\temp\\MyPopSong.mp3" );


// nameA == "MyPopSong.mp3"
@var $nameB = PathGetPartPath( "C:\\temp\\MyPopSong.mp3", 1 );
// nameB == "MyPopSong"

PathGetFileExtPart
Get the file extension from a filename path.

<str> PathGetFileExtPart( <str> path, [<num> stripDot] );

Parameters
path
Full file/folder path
stripDot
Optional parameter. If 1, the dot in the file extension will be removed

Return value
The file extension of a filename path

Example

@var $nameA = PathGetFileExtPart( "C:\\temp\\MyPopSong.mp3" );


// nameA == ".mp3"
@var $nameB = PathGetFileExtPart( "C:\\temp\\MyPopSong.mp3", 1 );
// nameB == "mp3"

http://multicommander.com Generated : 10-Apr-2021 15:25:26 268


Multi Commander Documentation

PathGetParts
Get an array of all the file path parts.

<arr> PathGetParts( <str> path );

Parameters
path
Full file/folder path

Return value
Return an array of all the filename part.
Array item 0 = Device
Array item 1 = Path
Array item 2 = Filename

Example

@var $arr = PathGetParts( "C:\\temp\\MyPopSong.mp3" );


// $arr[0] == C:\
// $arr[1] == C:\temp\
// $arr[2] == MyPopSong.mp3

PathMakeRelativeMC
Convert a path to be relative to where Multi Commander is started from.

<str> PathMakeRelativeMC( <str> path );

Parameters
path
Path to convert

Return value
The converted path

Example

// MC is installed in "C:\Program\MultiCommander"
@var $path = PathMakeRelativeMC( "C:\\temp\\MyFile.txt" );
// $path == "..\Temp\MyFile.txt"

http://multicommander.com Generated : 10-Apr-2021 15:25:26 269


Multi Commander Documentation

PathMakeAbsoluteMC
Convert a relative path to absolute (relative to where Multi Commander is started from).

<str> PathMakeAbsoluteMC( <str> path );

Parameters
path
Path to convert

Return value
The converted path

Example

// MC is installed in "C:\Program\MultiCommander"
@var $path = PathMakeAbsoluteMC( "..\\temp\\MyFile.txt" );
// $path == "C:\Temp\MyFile.txt"

PathTranslatePath
Convert a relative path to absolute and also convert environmental tags.

<str> PathTranslatePath( <str> path );

Parameters
path
Path to convert

Return value
The converted path

Example

// MC in installed in "C:\Program\MultiCommander" and ENVVAR is "MyFile.txt"


@var $path = PathTranslatePath( "..\\temp\\%ENVVAR%" );
// $path == "C:\Temp\MyFile.txt"

@var $path = PathTranslatePath( "%WINDIR%\\calc.exe" );


// $path == "C:\Windows\calc.exe"

http://multicommander.com Generated : 10-Apr-2021 15:25:26 270


Multi Commander Documentation

NetWGet
Download web content and save it as a file.

<str> NetWGet( <str> SaveAsPath,<str> Url, <str> options, <arr> Header );

Parameters
SaveAsPath
Full path to where the file should be saved
Url
URL of the web content to save
options
Optional parameter (case-sensitive). Separate multiple options with commas.
OVERWRITE - Overwrite target file if it already exists
VERIFY_SSLCERT - Require valid SSL Certificate
Headers
An array of "Key=Value" strings that should be added to the Http Request header

Return value
Number of bytes downloaded and written to the file SaveAsPath

Example

@var $bw = NetWGet( "C:\\Temp\\MFile.zip", "http://www.example.com/file.zip",


"OVERWRITE,VERIFY_SSLCERT" );

http://multicommander.com Generated : 10-Apr-2021 15:25:26 271


Multi Commander Documentation

MultiScript - Registry Functions


RegKeyExists Check if a key exists.

RegKeyAdd Create new registry key.

RegKeyDel Delete registry key.

RegKeyFind Find registry key.

RegKeyFindRegExp Find registry key with a regular expression.

RegValueExists Check if a registry value exists.

RegValueAdd Create new registry value.

RegValueDel Delete a registry value.

RegValueFind Find registry value.

RegValueFindRegExp Find registry value using regual expression.

RegValueGetSZ Get string registry value.

RegValueGetDWORD Get DWORD registry value.

Where regRoot is required as a parameter use any of the specified short paths

HKLM HKEY_LOCAL_MACHINE

HKCU HKEY_CURRENT_USER

HKCR HKEY_CLASS_ROOT

HKUR HKEY_USER

RegKeyExists
Check if a registry key exists.

<num> RegKeyExists(<str> regRoot, <str> regPath);

Parameters
regRoot
Registry root, e.g. "HKLM".

regPath
Registry path of the key to check.

Return value
1 if the key exists, else 0.

Example

$exists = RegKeyExists("HKLM","Software\\Microsoft");

http://multicommander.com Generated : 10-Apr-2021 15:25:26 272


Multi Commander Documentation

RegKeyAdd
Add a new registry key.

<num> RegKeyAdd(<str> regRoot, <str> regPath);

Parameters
regRoot
Registry root, e.g. "HKLM".

regPath
Registry path of the key to add.

Return value
1 if key was added, 0 if failed to add key.

Example

RegKeyDel
Delete a registry key.

<num> RegKeyDel(<str> regRoot, <str> regPath);

Parameters
regRoot
Registry root, e.g. "HKLM".

regPath
Registry path of the key to delete.

Return value
1 if key was deleted, 0 if failed to delete key.

Example

http://multicommander.com Generated : 10-Apr-2021 15:25:26 273


Multi Commander Documentation

RegKeyFind
Get all matching subkeys in a specified registry path. Match keys using wildcards.

<arr> RegKeyFind(<str> regRoot, <str> regPath, <str> match);

Parameters
regRoot
Registry root, e.g. "HKLM".

regPath
Registry path of where you want to find a key.

match
Wildcard for matching key, e.g. "Version_5.*"

Return value
An array with all matching key names.

Example

RegKeyFindRegExp
Get all matching subkeys in a specified registry path. Match key using regular expression.

<arr> RegKeyFindRegExp(<str> regRoot, <str> regPath, <str> regExp);

Parameters
regRoot
Registry root, e.g. "HKLM".

regPath
Registry path where you want to find a key.

regExp
Regular expression used for matching keys.

Return value
An array with all matching key names.

Example

http://multicommander.com Generated : 10-Apr-2021 15:25:26 274


Multi Commander Documentation

RegValueExists
Check if a registry value exists.

<num> RegValueExists(<str> regRoot, <str> regPath, <str> valuename);

Parameters
regRoot
Registry root, e.g."HKLM".

regPath
The registry path to the key that should have the value.

valueName
Name of the value to check for.

Return value
1 if value exists. 0 if it does not.

Example

$exists = RegValueExists("HLKM", "Software\\Microsoft", "installed");

http://multicommander.com Generated : 10-Apr-2021 15:25:26 275


Multi Commander Documentation

RegValueAdd
Add a new registry value.

<num> RegValueAdd(<str> regRoot, <str> regPath, <str> valueName, <str> value,


<str> type);

Parameters
regRoot
Registry root, e.g. "HKLM".

regPath
Registry path to the key that the value should be created under.

valueName
Name of the registry value to create.

value
Value to set the registry value to.

type
Type of registry value to create. REG_SZ or REG_DWORD supported.

Return value
Name of the newly-added value.

RegValueDel
Delete registry value.

<num> RegValueDel(<str> regRoot, <str> regPath, <str> valuename);

Parameters
regRoot
Registry root, e.g. "HKLM".

regPath
The registry path to the key that should have the value.

valueName
Name of the value to delete.

Return value
1 if value is deleted. 0 if deletion failed.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 276


Multi Commander Documentation

RegValueFind
Find all matching registry values under a registry key.

<arr> RegValueFind(<str> regRoot, <str> regPath, <str> valueMatch);

Parameters
regRoot
Registry root, e.g. "HKLM".

regPath
Registry path to key under where you want to search for a value.

valueMatch
Wildcard for matching value. e.g. "Version_5.*"

Return value
An array of matching registry values.

RegValueFindRegExp
Find all matching registry value under a registry key, Using regular expression for matching

<arr> RegValueFindRegExp(<str> regRoot, <str> regPath, <str> valueRegExpMatch);

Parameters
regRoot
Registry root, e.g. "HKLM".

regPath
Registry path to key under which you want to search for a value.

valueRegExpMatch
Regular expression for matching values.

Return value
An array of matching registry values.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 277


Multi Commander Documentation

RegValueGetSZ
Get the value of a REG_SZ registry value.

<str> RegValueGetSZ(<str> regRoot, <str> regPath, <str> valuename);

Parameters
regRoot
Registry root, e.g. "HKLM".

regPath
Registry path to key under which the value exists.

valuename
Name of the registry key value to return. (Must be a REG_SZ value).

Return value
The string value of the registry value. Returns an empty string if the value does not exist.

RegValueGetDWORD
Get the value of a REG_DWORD registry value .

<num> RegValueGetDWORD(<str> regRoot, <str> regPath, <str> valuename);

Parameters
regRoot
Registry root, e.g. "HKLM"

regPath
Registry path to key under where the value exists.

valuename
Name of the registry key value to return. (Must be a REG_DWORD value)

Return value
The value of the registry DWORD value. Returns 0 if value does not exist.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 278


Multi Commander Documentation

MultiScript - Get and Set Selection and Paths

Functions for getting focus/selected files and folder from source/target views.

GetSelectedFileNames Get an array of all currently selected files in the source panel.

GetSelectedPaths Get an array with full paths of all currently selected files in the source panel.

GetSourceSelectedFileNames Get an array with the names of selected items in the source panel.

GetTargetSelectedFileNames Get an array with the names of selected items in the target panel.

GetSourceSelectedPaths Get an array with the full paths of the selected items in the source panel.

GetTargetSelectedPaths Get an array with the full paths of the selected items in the target panel.

GetSourcePath Get the current source path.

GetTargetPath Get the current target path.

GetSourceFocusPath Get the full path of the item in focus in the source panel.

GetTargetFocusPath Get the full path of the item in focus in the target panel.

GetSourceFocusName Get the name of the item in focus in the source panel.

GetTargetFocusName Get the name of the item in focus in the target panel.

GetSourceItems Get an array with all filenames or full paths of all items in the source panel.

GetTargetItems Get an array with all filenames or full paths of all items in the target panel.

SetSourceSelected Set selection in the source panel.

SetTargetSelected Set selection in the target panel.

GetSelectedFileNames
Get the filenames of all selected files/folders in the source view.

<arr> GetSelectedFileNames();

Return value
An array of all the names of the selected files and folders in the source view.

Example

@var $arr = GetSelectedFileNames();


LogDumpArray($arr);

http://multicommander.com Generated : 10-Apr-2021 15:25:26 279


Multi Commander Documentation

GetSelectedPaths
Get the complete filepaths of all selected files/folders in the source view.

<arr> GetSelectedPaths();

Return value
An array of the complete paths for all the selected files and folders in the source view.

Example

@var $arr = GetSelectedPaths();


LogDumpArray($arr);

GetSourceSelectedFileNames
Get an array of the filenames of the selected items in the source view.

<arr> GetSourceSelectedFileNames([<str> flags]);

Parameters
flags

Optional, If not provided not flags are assumed


IGNORE_FOCUS - Ignore focus item if no items are selected, By default of no items are selected the item in focus is
returned

Return value
An array of file names (names only - not complete paths).

Example

@var $arr = GetSourceSelectedFileNames();


LogDumpArray($arr);

@var $arr = GetSourceSelectedFileNames("IGNORE_FOCUS");


LogDumpArray($arr);

http://multicommander.com Generated : 10-Apr-2021 15:25:26 280


Multi Commander Documentation

GetTargetSelectedFileNames
Get an array of all the filenames of the selected items in the target view.

<arr> GetTargetSelectedFileNames([<str> flags]);

Parameters
flags

Optional, If not provided not flags are assumed


IGNORE_FOCUS - Ignore focus item if no items are selected, By default of no items are selected the item in focus is
returned

Return value
An array of file names (names only - not complete paths).

Example

@var $arr = GetTargetSelectedFileNames();


LogDumpArray($arr);

@var $arr = GetTargetSelectedFileNames("IGNORE_FOCUS");


LogDumpArray($arr);

http://multicommander.com Generated : 10-Apr-2021 15:25:26 281


Multi Commander Documentation

GetSourceSelectedPaths
Get an array with the full paths of all selected items in the source view.

<arr> GetSourceSelectedPaths([<str> flags]);

Parameters
flags

Optional, If not provided not flags are assumed


IGNORE_FOCUS - Ignore focus item if no items are selected, By default of no items are selected the item in focus is
returned

Return value
An array of full paths to files or folder.s

Example

@var $arr = GetSourceSelectedPaths();


LogDumpArray($arr);

@var $arr = GetSourceSelectedPaths("IGNORE_FOCUS");


LogDumpArray($arr);

http://multicommander.com Generated : 10-Apr-2021 15:25:26 282


Multi Commander Documentation

GetTargetSelectedPaths
Get an array with the full paths of all selected items in the target view.

<arr> GetTargetSelectedPaths([<str> flags]);

Parameters
flags

Optional, If not provided not flags are assumed


IGNORE_FOCUS - Ignore focus item if no items are selected, By default of no items are selected the item in focus is
returned

Return value
An array of full paths to files or folders.

Example

@var $arr = GetTargetSelectedPaths();


LogDumpArray($arr);

@var $arr = GetTargetSelectedPaths("IGNORE_FOCUS");


LogDumpArray($arr);

GetSourcePath
Get the complete path as currently shown in the source view.

<str> GetSourcePath();

Return value
A string with the complete path shown in the source view.

Example

@var $str = GetSourcePath();


// $str == "C:\MyFolder\";

http://multicommander.com Generated : 10-Apr-2021 15:25:26 283


Multi Commander Documentation

GetTargetPath
Get the complete path as currently shown in the target view.

<str> GetTargetPath();

Return value
A string with the complete path shown in the target view.

Example

@var $str = GetTargetPath();


// $str == "C:\MyFolder\";

GetSourceFocusPath
Get the full path to the item in focus in the source view.

<str> GetSourceFocusPath();

Return value
A string with the full path to the item in focus

Example

@var $str = GetSourceFocusPath();


// $str == "C:\MyFolder\MyFile.txt";

GetTargetFocusPath
Get the full path to the item in focus in the target view.

<str> GetTargetFocusPath();

Return value
A string with the full path to the item in focus

Example

@var $str = GetTargetFocusPath();


// $str == "C:\MyFolder\MyFile.txt";

http://multicommander.com Generated : 10-Apr-2021 15:25:26 284


Multi Commander Documentation

GetSourceFocusName
Get the name only of the item in focus in the source view.

<str> GetSourceFocusName();

Return value
A string with the name of the item in focus

Example

@var $str = GetSourceFocusName();


// $str == "MyFile.txt";

GetTargetFocusName
Get the name only of the item in focus in the target view.

<str> GetTargetFocusName();

Return value
A string with the name of the item in focus

Example

@var $str = GetTargetFocusName();


// $str == "MyFile.txt";

http://multicommander.com Generated : 10-Apr-2021 15:25:26 285


Multi Commander Documentation

GetSourceItems
Get an array with all filename or fullpath of all the items in the source panel.

<arr> GetSourceItems([<num> fullpath]);

Parameters
fullpath

Optional. If provided and set to 1, it will return full filepaths, else only filenames are returned. If not set, 0 is assumed

Return value
An array with filename or path of all the items in the panel

Example

@var $arr = GetSourceItems();


// Full paths
@var $arr = GetSourceItems(1);

GetTargetItems
Get an array with all filename or full path of all the items in the target panel.

<arr> GetTargetItems([<num> fullpath]);

Parameters
fullpath

Optional. If provided and set to 1, it will return full filepaths, else only filenames are returned. If not set, 0 is assumed.

Return value
An array with filename or path of all the items in the panel

Example

@var $arr = GetTargetItems();


// Full paths
@var $arr = GetTargetItems(1);

http://multicommander.com Generated : 10-Apr-2021 15:25:26 286


Multi Commander Documentation

SetSourceSelected
Set selection in the source panel

<int> SetSourceSelected(<arr> filenames, [<int> clear]);

Parameters
filenames

An array of filenames. The filenames will be used to match against the existing file in the view. and matched files will be
selected.

clear

Optional. If provided and set to 1, the selections the in source view will be cleared before new selections are added
If set to 0, the new selections will be added to existing. If not set, 1 is assumed.

Return value
Number of files selected

Example

@var $arr[] = {"file1.txt", "file2.txt"};


@var $num = SetSourceSelected( $arr , 1);

http://multicommander.com Generated : 10-Apr-2021 15:25:26 287


Multi Commander Documentation

SetTargetSelected
Set selection in the target panel

<int> SeTargetSelected(<arr> filenames, [<int> clear]);

Parameters
filenames

An array with strings of filename. The filename will be used to match against the existing file in the view. and matched
files will be selected

clear

Optional. If provided and set to 1, the selections in the source view will be cleared before new selections are added
If set to 0, the new selections will be added to existing. If not set, 1 is assumed.

Return value
Number of files selected

Example

@var $arr[] = {"file1.txt", "file2.txt"};


@var $num = SetTargetSelected( $arr , 1);

http://multicommander.com Generated : 10-Apr-2021 15:25:26 288


Multi Commander Documentation

TabPanel Functions

Functions for working with Panels Tabs.

TabActivePanelSide Get an array of all currently selected files in the source panel.

TabActiveTab Get an array with full paths of all currently selected files in the source panel.

TabCount Get an array with the names of selected items in the source panel.

TabGetPath Get an array with the names of selected items in the target panel.

TabClose Get an array with the full paths of the selected items in the source panel.

TabLoadTabSession Get an array with the full paths of the selected items in the target panel.

TabActivePanelSide
Get or Set what panel side in active

<int> TabActivePanelSide();
<int> TabActivePanelSide( <int> panel );
<int> TabActivePanelSide( <string> panel );

When specifying tab any of the following values are valid


1 = Left, 2 = Right , "right", "left", "top", "bottom", "target", "source" , "active" "inactive"

Return value
If no parameter is specified then it return 1 or 2 for left or right panel. else it return 1 for success or 0 for failure to set
active panel

Example

@var $panel= TabActivePanelSide();


TabActivePanelSide(1);
TabActivePanelSide(2);
TabActivePanelSide("left");
TabActivePanelSide("top");

http://multicommander.com Generated : 10-Apr-2021 15:25:26 289


Multi Commander Documentation

TabActiveTab
Get or Set what tab in a panel is active

<int> TabActiveTab( <int> panel );


<int> TabActiveTab( <string> panel );
<int> TabActiveTab( <string> panel , <int> tabIndex );
<int> TabActiveTab( <int> panel , <int> tabIndex );

When specifying tab any of the following values are valid


1 = Left, 2 = Right , "right", "left", "top", "bottom", "target", "source" , "active" "inactive"

Return value
Return the tab index of the active tab in the specified tab panel. (first tab is 0, second 1, and so on)
If the SET alternatives are used it return 1 for success or 0 for failure to set active tab

Example

@var $activeTabInPanel= TabActiveTab(1);


@var $activeTabInPanel= TabActiveTab("active");
@var $activeTabInPanel= TabActiveTab("source");
TabActiveTab(1, 0);
TabActiveTab(1, 3);
TabActiveTab("left", 3);
TabActiveTab("source", 2);
TabActiveTab("target", 2);
TabActiveTab("bottom", 2);

TabCount
Return how many tabs a panel side has

<int> TabCount( <int> panel );


<int> TabCount( <string> panel );

When specifying tab any of the following values are valid


1 = Left, 2 = Right , "right", "left", "top", "bottom", "target", "source" , "active" "inactive"

Return value
Return the number of tabs that exists in a panel side

Example

@var $numTabs = TabCount(1);


@var $numTabs = TabCount("active");
@var $numTabs = TabCount("source");

http://multicommander.com Generated : 10-Apr-2021 15:25:26 290


Multi Commander Documentation

TabGetPath
Return the path of a tab. If the view inside that tab support that.

<int> TabGetPath( <int> panel , <int> tabIndex);


<int> TabGetPath( <string> panel , <int> tabIndex);

When specifying tab any of the following values are valid


1 = Left, 2 = Right , "right", "left", "top", "bottom", "target", "source" , "active" "inactive"

Return value
Return the path for the path in the specified panel. If the view in that tab does not support the concept of a 'tabpath'
empty path is returned (Eg Checksum view)

Example

@var $path = TabGetPath(1, 2);


@var $path = TabGetPath("active", 3);
@var $path = TabGetPath("source", 3);

TabClose
Close a specified tab

<int> TabClose( <int> panel , <int> tabIndex);


<int> TabClose( <string> panel , <int> tabIndex);

When specifying tab any of the following values are valid


1 = Left, 2 = Right , "right", "left", "top", "bottom", "target", "source" , "active" "inactive"

Return value
Return 1 for success or 0 for failure

Example

TabClose(1, 2);
TabClose("active", 3);
TabClose("source", 3);

http://multicommander.com Generated : 10-Apr-2021 15:25:26 291


Multi Commander Documentation

TabLoadTabSession
Close a specified tab

<int> TabLoadTabSession( <string> SessionName / SessionId);

Return value
Return 1 for success or 0 for failure

Example

TabLoadTabSession("MyTabSession);
TabLoadTabSession("46214bda3c8d4da093194ffa5c9578a6");

http://multicommander.com Generated : 10-Apr-2021 15:25:26 292


Multi Commander Documentation

MultiScript - Misc Core Functions


Sleep Pause the script for a specified number of milliseconds.

min Return the minimum value of many values or from an array of values.

max Return the maximum value of many values or from an array of values.

mod Modulo, Returns the remainder after a division of the provided values .

GetRandomValue generate a random value between a min and max value

Log Log text to a log window.

LogDump Dump the contents of a variable to the log.

LogDumpArray Dump the contents of an array to the log.

LogAppInfo Log text to the application log window.

MessageBox Show a messagebox.

AskText Ask the user for text via a dialog.

AskOption Ask the user to pick one of a list of items from a dropdown list.

SaveArray Save an array of strings to a file.

LoadArray Load a file of strings into an array.

SaveStringToFile Save a string to a file.

LoadStringFromFile Load a file into a string.

GetClipboardText Get the text stored in the clipboard.

SetClipboardText Set text in the clipboard.

GetTagValue Expand a MultiTag value.

TranslateEnvString Translate an environmental string.

Sleep
Pause the script for a specified number of milliseconds.

<none> Sleep( <num> mmsec );

Parameters
mmsec
Milliseconds to wait before continuing.

Return value
Nothing.

Examples

Sleep( 10 );

http://multicommander.com Generated : 10-Apr-2021 15:25:26 293


Multi Commander Documentation

min
Returns the minimum value from two or more values passed to the function.
It is also possible to pass it an array that contains multiple number values.

<num> min( <num> val1, <num> val2, ... , ... );


<num> min( <array> arrrayVal );

Parameters
val1
A number value.
val2
A number value.
arrayVal
An array with multiple number values.

Return value
The minimum values of all the values passed to the function.

Examples

@var $v1 = 73;


@var $v2 = 52;
@var $v3 = 45;
@var $v4 = 87;
@var $res = min( $v1, $v2, $v3 , $v4 );
// $res == 45;

@var $vals[] = { 73, 52, 45, 87};


@var $res = min( $vals );
// $res == 45;

http://multicommander.com Generated : 10-Apr-2021 15:25:26 294


Multi Commander Documentation

max
Returns the maximum value from two or more values passed to the function.
It is also possible to pass it an array that contains multiple number values.

<num> max( <num> val1, <num> val2, ... , ... );


<num> max( <array> arrrayVal );

Parameters
val1
A number value.
val2
A number value.
arrayVal
An array with multiple number values.

Return value
The maximum values of all the values passed to the function.

Examples

@var $v1 = 73;


@var $v2 = 52;
@var $v3 = 45;
@var $v4 = 87;
@var $res = max( $v1, $v2, $v3 , $v4 );
// $res == 87;

@var $vals[] = { 73, 52, 45, 87};


@var $res = max( $vals );
// $res == 87;

http://multicommander.com Generated : 10-Apr-2021 15:25:26 295


Multi Commander Documentation

mod
Modulo - Return the remainder after division of the values.

<num> mod( <num> val1, <num> val2, );

Parameters
val1
A number value.
val2
A number value.

Return value
The remainder when the first value if divided by the another.
Used when you want to know if a values is even divided by a another value. If it is the reminder is 0

Examples

@var $val = 17;


@var $res = mod( $val , 3 );
// $res == 2;

@var $val = 20;


@var $res = mod( $val , 5 );
// $res == 0;

http://multicommander.com Generated : 10-Apr-2021 15:25:26 296


Multi Commander Documentation

GetRandomValue
Generate a random values between a min and max value.

<num> GetRandomValue( <num> min, <num> max, [<num> seed] );

Parameters
min
Minimum value.
max
Maximum value
seed
[OPTIONAL] Seed value for random value generator, If not specified a seed value will be generated.

Return value
A random value between the specified min and max values

Examples

@var $res = GetRandomValue( 10, 99 );


// $res == Anything from 10 to 99;

@var $res = GetRandomValue( 10, 99, 12345678 );

http://multicommander.com Generated : 10-Apr-2021 15:25:26 297


Multi Commander Documentation

Log
Log text to a log window.

<num> Log( <num> logID, <num> logLevel, <str> logText );

Parameters
logID
ID of the logger that should receive the log text.
0 = Standard Application log
1 = File Operations Log
x = ID of user-created log
logLevel
Logging level for this log text. Logging can be set to only show info, warning or error.
10 = Info
20 = Warning
30 = Error
logText
Text that should be written to the log.

Return value
1 if message is logged, 0 if the log is not found.

Examples

Log( 0, 30, "Error - File Not found" );

http://multicommander.com Generated : 10-Apr-2021 15:25:26 298


Multi Commander Documentation

LogDump
Dump the content of a variable to the log. (Useful for debugging.)

<num> LogDump( <var> var );

Parameters
var
Variable to dump to the log file.

Return value
Always 1.

Example

@var $str = "String1";


LogDump( $str );
// Log window output
// ==[ Name : $str ]==[ Type : variable:string ]==[ Value : "String1" ]==

LogDumpArray
Dump the contents of an array to the log. (Useful for debugging.)

<num> LogDumpArray( <arr> array );

Parameters
array
Array to dump to the log file.

Return value
Always 1.

Example

@var $arr[] = {"String1", "String2", "String3"};


LogDumpArray( $arr );
// Log window output
// ==[ Variable : $arr ]==
// [0] : "String1"
// [1] : "String2"
// [2] : "String3"
// ===========================

http://multicommander.com Generated : 10-Apr-2021 15:25:26 299


Multi Commander Documentation

LogAppInfo
Send text directly to the application log, with logging level 'Info'.

<num> LogAppInfo( <str> logText );

Parameters
logText
Text that should be written to the log file.

Return value
Always 1.

MessageBox
Show a messagebox.

<num> MessageBox( <str> caption, <str> text, <num> options );

Parameters
caption
The caption text for the messagebox.
text
The message text that should be shown.
option
One of the standard Win32 values for Button and Icon options. See MSDN here for a full list of values.

Button combinations and their option values are:

OK 0
OK + Cancel 1
Abort + Retry + Ignore 2
Yes + No + Cancel 3
Yes + No 4
Retry + Cancel 5

Return value
Possible return values and their meanings are:

1 - OK button was selected


2 - Cancel button was selected
3 - Abort button was selected
4 - Retry button was selected
5 - Ignore button was selected
6 - Yes button was selected
7 - No button was selected (user cancelled with Esc)
8 - Close button was selected
9 - Help button was selected

http://multicommander.com Generated : 10-Apr-2021 15:25:26 300


Multi Commander Documentation

AskText
Show a dialog in which the user can input text.

<num> AskText( <str> label, <str> inputText, <num> option );

Parameters
label
The dialog Label text that will be shown.
inputText
Text that will be pre-loaded into the input field when the dialog is first shown (can be: "").
option
Not yet used; can be set to 0.

Return value
0 if user cancelled the dialog, else a string with the text from the dialog's input field.

AskOption
Show a dialog in which the user can pick one of a list of items from a dropdown list.

<num> AskOption( <str> label, <arr> values, <num> selected );

Parameters
label
The Label text that will be shown.
values
An array of strings or numbers that will be shown in the dropdown list.
selected
Index of the item in the list that should be selected by default, -1 for no default item selected.

Return value
Index of the item selected, or -1 if user pressed Cancel.

Examples

@var $options[] = {"Option1", "Option2", "Option3", "Option4" };


@var $o = AskOption( "Select Option", $options, 2 );
if( $o > -1 )
{
@var $sel = $options[$o];
@var $msg = "You selected option : \"" + $sel + "\"";
MessageBox("Selected Item", $msg, 0);
}

http://multicommander.com Generated : 10-Apr-2021 15:25:26 301


Multi Commander Documentation

SaveArray
Save an array of strings to a file

<num> SaveArray( <str> filename, <arr> array, <num> overwrite, <num> format );

Parameters
filename
Complete file path where the file should be saved.
array
The array to save
overwrite
0 = Do not overwrite existing file, 1 = Overwrite existing file.
format
0 = ASCII
1 = UTF8
2 = Unicode

Return value
1 if array was saved successfully else 0.

LoadArray
Load a text file into an array.

<arr> LoadArray( <str> filename );

Parameters
filename
Complete path to the file to load.

Return value
An array where every line in the file filename is an item in an array.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 302


Multi Commander Documentation

SaveStringToFile
DESC

<num> SaveStringToFile( <str> filename, <str> string, <num> format );

Parameters
filename
Complete file path to where the file should be saved.
string
Content to save.
format
0 = ASCII
1 = UTF8
2 = Unicode

Return value
1 if string was saved successfully else 0.

LoadStringFromFile
Load the content of a text file into a string.

<str> LoadStringFromFile( <str> filename );

Parameters
filename
Complate file path of the file to load.

Return value
The content of the file as a string.

GetClipboardText
Get the text stored in the clipboard. If the clipboard content is not text then an empty string will be returned.

<str> GetClipboardText();

Return value
A string containing the content of the clipboard.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 303


Multi Commander Documentation

SetClipboardText
Store text in the global clipboard.

<num> SetClipboardText( <str> );

Return value
Nothing.

Example

@var $textClip = GetClipboardText();


// Replace all '-' with '_'
$textClip = StrReplace( $textClip, "-", "_" );
// set the clipboard text with the new modified text.
SetClipboardText( $textClip );

GetTagValue
Expand a MultiTag.

<str> GetTagValue( <str> );

Return value
Expanded MultiTag value.

Example

@var $tag = GetTagValue("${mcinstallpath}");

TranslateEnvString
Translate a Windows environment variable.

<str> TranslateEnvString( <str> );

Return value
Expanded environmental string.

Example

@var $tag = TranslateEnvString("%WINDIR%");

http://multicommander.com Generated : 10-Apr-2021 15:25:26 304


Multi Commander Documentation

Extension Defined MultiScript Functions


Before using extension defined MultiScript functions the functions must be imported into the script engine. This is
done with the MultiScript import function. The import function must be called before any extension defined functions are
called or the script engine will fail to find the function.

Example

// Import the Extension defined function for FTP


import("FSFTPScript");

// Connect to the ftp site "site1" in the bookmarks


@var $ftp = FTPConnect("site1");

// change to the remote folder /pub


FTPChdir($ftp, "/pub");

// remove (delete) the file test.zip


FTPRemove($ftp , "test.zip" );

// upload the file d:\temp\test.zip to the current remote folder with the new name
test.zip
FTPPutFile($ftp , "d:\\temp\\test.zip" , "test.zip");

Extension Defined MultiScript Functions - Examples


FS-FTP

http://multicommander.com Generated : 10-Apr-2021 15:25:26 305


Multi Commander Documentation

MultiScript - Extension Defined Functions - FS-FTP

Import Directive
To be able to use any of the FS-FTP defined MultiScript functions the functions must first be imported into the MultiScript
engine. This is done with Import:

import("FSFTPScript");

FS-FTP Script Defined Functions.

FTPConnect Connect to an FTP site

FTPChdir Change remote directory

FTPMkdir Create remote folder

FTPRmdir Remove remote folder

FTPRemove Remove remote file

FTPRename Rename remote file or folder

FTPList List the current remote directory

FTPListCount Number of items obtained from a previous FTPList command

FTPListGet Get list item

FTPExists Check if a remote file exists

FTPPutFile Upload a file

FTPGetFile Download a file

FTPCommandRaw Send a raw FTP command

FTPQuit Close an FTP Connection

FTPConnect
Connect to an FTP site that is defined in bookmarks.

<handle> FTPConnect(<str> sitename);

Parameters
sitename
name of a site that is defined in FTP bookmarks.

Return value
A handle to an FTP site, or 0 if it fails to connect or if the sitename is not found in FTP bookmarks.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 306


Multi Commander Documentation

FTPChdir
Change remote directory.

<num> FTPChdir(<handle> conn, <str> path );

Parameters
conn
Handle to an FTP connection.
path
path to a location on the remote connection.

Return value
1 if successful or 0 if it fails.

FTPMkdir
Create directory in current remote location.

<num> FTPMkdir(<handle> conn, <str> directory);

Parameters
conn
Handle to an FTP connection.
directory
name of the directory to create.

Return value
1 if successful, 0 if it fails.

FTPRmdir
Remove a directory

<num> FTPRmdir( <handle> conn, <str> directory);

Parameters
conn
Handle to an FTP connection.
directory
name of the directory to remove.

Return value
1 if successful, 0 if it fails.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 307


Multi Commander Documentation

FTPRemove
Remove a remote file

<num> FTPRemove(<handle> conn <str> file);

Parameters
conn
Handle to an FTP connection.
file
Name of the remote file to remove.

Return value
1 if successful, 0 if it fails.

FTPRename
Rename a remote file or folder

<num> FTPRename(<handle> conn, <str> oldFilename, <str> newFilename);

Parameters
conn
Handle to an FTP connection.
oldFilename
Name of the remote file to rename.
newFilename
Filename the file should be renamed to.

Return value
1 if successful, 0 if it fails.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 308


Multi Commander Documentation

FTPList
Get the current directory content.

<num> FTPList(<handle> conn);

Parameters
conn
Handle to an FTP connection.

Return value
1 if successful, 0 if it fails.

Remarks
The result of a List command is cached in the FTP connection. Use FTPListGet to get the content if the list items.

FTPListCount
The number of list items that are stored in the connection.

<num> FTPListCount(<handle> conn);

Parameters
conn
Handle to an FTP connection.

Return value
The number of items obtained in the directory listing from a previous FTPList command.

FTPListGet
Get a list item.

<array> FTPListGet(<handle> conn, <num> index);

Parameters
conn
Handle to an FTP connection.
index
Index of the list item to get.

Return value
An array of 2 items where the first is the Name and the second is the size, or 0 if no item was found.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 309


Multi Commander Documentation

FTPExists
Check if a file or directory exists

<num> FTPExists(<handle> conn, <str> file;);

Parameters
conn
Handle to an FTP connection.
file
Filename or folder name to check for.

Return value
1 if the file exists, 0 if it does not.

Remarks
An FTPList command must have been run before running this command.

FTPPutFile
Upload a file.

<num> FTPPutFile(<handle> conn, <str> filepath, <str> remotefile);

Parameters
conn
Handle to an FTP connection.
filepath
filepath of the file to upload.
remotefile
The name of the file to store on the FTP server.

Return value
1 if successful, 0 if it fails.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 310


Multi Commander Documentation

FTPGetFile
Download file.

<num> FTPGetFile(<handle> conn, <str> remoteFile, <str> localfile);

Parameters
conn
Handle to an FTP connection.
remoteFile
Path to a remote file to download.
localfile
Path to a local filename to save the downloaded file as.

Return value
1 if successful, 0 if it fails.

FTPCommandRaw
Send a RAW FTP command.

<handle> FTPCommandRaw(<handle> conn, <str> command );

Parameters
conn
Handle to an FTP connection.
command
RAW FTP command to send.

Return value
1 if successful, 0 if it fails.

Example

FTPCommandRaw( $ftp, "site who");

http://multicommander.com Generated : 10-Apr-2021 15:25:26 311


Multi Commander Documentation

FTPQuit
Close a connection to an FTP server.

<handle> FTPQuit(<handle> conn);

Parameters
conn
Handle to an FTP connection.

Return value
1 if successful, 0 if it fails.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 312


Multi Commander Documentation

MultiScript - Extension Defined Functions - File Checksum

Import Directive
To be able to use any of the File Checksum MultiScript functions, these functions must first be imported into the
MultiScript engine. This is done with the script directive Import:

import("MFTools-sfv");

File CheckSum Script-Defined Functions

ChkSum_Calculate Calculate CheckSum of a file.

ChkSum_Calculate
Calculate CheckSum of a file.

<str> ChkSum_Calculate(<str> filename, <num> type);

Parameters
filename
name of the file you want to calculate the checksum of
type
0 = CRC32, 1 = MD5, 2 = SHA1

Return value
Return a string with the hex hash value

http://multicommander.com Generated : 10-Apr-2021 15:25:26 313


Multi Commander Documentation

Multi-Script Debugger

http://multicommander.com Generated : 10-Apr-2021 15:25:26 314


Multi Commander Documentation

MultiScript Examples
Examples of MultiScripts
Search on Google from the command line bar
View first *.txt file found in the folder currently in focus
Play first *.avi or *.mkv in the folder currently in focus

Search on Google from the command line bar


Read the parameters (arguments) supplied to this command and build a search url for Google and then go to that url.

Create the command then go to the Alias Manager and assign 'g' to "@<Unique command id>"

function CreateGoogleSearchQuery()
{
@var $query = "";
@var $n = 0;
for( $n = 0; $n < $argcount; $n = $n + 1 )
{
if( $n > 0 )
{
$query = $query + "+";
}
$query = $query + $arg($n);
}
return $query;
}
@var $s = "";
$s = "http://www.google.com/search?g=" + CreateGoogleSearchQuery();
MC.Run CMD="{$s}" SHELL

View first *.txt file found in the folder currently in focus


Connect this command to a hotkey, for example Alt+V. Then in an Explorer Panel with a folder in focus, if you press Alt+V
- and if a *.txt file exists under that folder - that file will be shown.

MC.DataViewer.View FILE={_findfirstfile( "{focusfilepath}\\*.txt" )}

Play First *.avi or *.mkv found in folder currently in focus


Connect this command to a hotkey, for example Alt+P. Then in an Explorer Panel with a folder in focus, if you press Alt+P,

http://multicommander.com Generated : 10-Apr-2021 15:25:26 315


Multi Commander Documentation

the first *.avi or *.mkv found will be played in your default movie player.

@var $file;
$file = _findfirstfile( "{focusfilepath}\\*.avi" );
if(StrIsEqual($file,""))
{
$file = _findfirstfile( "{focusfilepath}\\*.mkv" );
}
MC.Run CMD={$file} SHELL

http://multicommander.com Generated : 10-Apr-2021 15:25:26 316


Multi Commander Documentation

MultiTags
MultiTags are text tags that can be used with some User Commands.

These tags are processed and translated before the command is executed.

MultiTags are supported by External Commands, Custom Commands and Batch Scripts.
MultiTags CANNOT be used in MultiScript directly. To use them from MultiScript you must use the GetTagValue()
function.

MultiTag Description Example Output


${focusfilepath} Full path to the file/folder in focus C:\Programs Files\MultiCommander\MyFile.exe

${date:<date-format>} Current local date ${date:yyyy-MM-dd} -> 2016-02-28

${time:<time-format>} Current local time ${time:hh:mm:ss} -> "15:23:01"

${targetpath} Current path of the target panel D:\MyBackup\

${sourcepath} Current path of the source panel C:\Programs Files\MultiCommander\

${targetdevice} Current device of the target panel D

${sourcedevice} Current device of the source panel E

Full path to item in focus, in the source


view.
${sourcefocuspath} F:\my folder\filename.txt
This MultiTag is the same as
${focusfilepath}

Full path to item in focus, in the target


${targetfocuspath} D:\Temp\Folder 2\report.txt
view.

${sourcefocusname} Name of item in focus, in the source view. filename.txt

${targetfocusname} Name of item in focus, in the target view. report.txt

Extension of item in focus, in the source


${sourcefocusext} txt
view.

Extension of item in focus, in the target


${targetfocusext} txt
view.

${leftpath}, ${leftfocuspath}, ${leftfocusname} | ${rightpath}, ${rightfocuspath}, ${rightfocusname}


Same as the ${sourcefocuspath} tags above, but referring to the left/right panel, independent of which panel is source
or target.

$(pid) The Process ID of MultiCommander

Root temp folder used by


$(mctemp)
MultiCommander

Script parameter.
${param:<num>} where <num> is the index of the ${param:0} -> "D:\MyBackup\"
parameter

All the paths below depend on how Multi Commander is installed, ie. for a Single User, Multi User, or a portable
installation.

The path from which Multi


${mcinstallpath} C:\Program Files\MultiCommander
Commander is run.

Path to Multi Commander's


${mcappdatapath} C:\Users\<username>\AppData\Roaming\MultiCommander\
application data folder.

Path to Multi Commander's


${mclogpath} C:\Users\<username>\AppData\Roaming\MultiCommander\Logs\
log folder

Path to Multi Commander's


${mcconfigpath} C:\Users\<username>\AppData\Roaming\MultiCommander\Config\
main config folder.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 317


Multi Commander Documentation

Path to Multi Commander's


user data storage. Used by
${mcuserappdata} C:\Users\<username>\AppData\Roaming\MultiCommander\UserData\
plugins and extensions to
store user data.

Paths that are expanded from MultiTags are NOT quoted, so you might need to put quotes around the MultiTag. You
might also need to put single quotes around the entire command. (See the first MC.Run example below.)

Examples
Custom Commands

MC.Explorer.Goto PATH="${focusfilepath}"

MC.Run CMD="C:\bin\Compare.exe" ARG='-s "${sourcepath}" -d "${targetpath}"'

As you see in the MC.Run example. The ARG command has spaces and quote (") characters in it, so the entire ARG must
then be encapsulated in single quote ( ' ) characters.

External Commands

"C:\Program Files\Beyond Compare 3\BCompare.exe" -s "${leftfocuspath}" -d


"${rightfocuspath}"

MultiScript Commands

MultiTags are only supported in MultiScript on lines that are Custom Commands.

@var $cmd = "C:\\Bin\\Compare.exe";

// INCORRECT
@var $path1 = "${sourcepath}"; // Not supported
@var $path2 = "${targetpath}"; // Not supported
MC.Run CMD="{$cmd}" ARG='-s "{$path1}" -d "{$path2}"'

// CORRECT
@var $path1 = GetSourcePath();
@var $path2 = GetTargetPath();
MC.Run CMD="{$cmd}" ARG='-s "{$path1}" -d "{$path2}"'

// CORRECT
MC.Run CMD="{$cmd}" ARG='-s "${sourcepath}" -d "${targetpath}"'

MultiScript calling a CustomCommand with Script variables. Custom Commands that are run from MultiScript are run by
the Custom Command engine, so script parts in the Custom Command line must be encapsulated with { } (as the variables
are above). They will be evaluated and expanded before that line is sent to the Custom Command engine.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 318


Multi Commander Documentation

http://multicommander.com Generated : 10-Apr-2021 15:25:26 319


Multi Commander Documentation

Backup and Restore Configuration


The configuration for Multi Commander and all its plug-ins can be backed up and restored. Select Backup/Restore from
the Help menu to open the Backup and Restore dialog.

Backup
Enter a file path for the backup file or click "..." to browse to the location where to you wish to save it; then click the
Backup button.
All configuration files for Multi Commander and all its plug-ins will be backed up into a .zip file at that location.

Restore
Enter a file path to a .zip file or click the "..." button to browse for the file that contains a backup of the configuration.
Press the Restore button to replace the current configuration with the configuration that was backed up in that file.

You need to restart Multi Commander after this for the restored configuration to fully take effect.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 320


Multi Commander Documentation

Cleanup User Data


Multi Commander stores user-specific data in different places. To remove all this data you can run Cleanup User Data.
Select "Cleanup userdata..." from the Help menu to start it.

Select the type of user data you want to remove then click OK. After the user data is removed it is recommended to exit
Multi Commander so any new information can be stored.

Configuration and settings


Multi Commander stores configuration and settings files in an application data folder for the user account. Checking this
option will remove all these files.

Logs, History and Session Information


Multi Commander stores logs of file operations and failures in the user's application data folder. These logs are used to
identify why problems happen if Multi Commander fails. History and session information is stored in the Windows Registry.
This information is used to create dropdown lists with selections you have made earlier. for example, previously-run
commands from the Command Line bar are listed when you use its dropdown list.

License and Registration information


Checking this option will remove the license and registration information for Multi Commander.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 321


Multi Commander Documentation

MultiUpdate
MultiUpdate is a separate tool that will check whether an updated version of Multi Commander is available. If one exists,
it will be downloaded and Multi Commander will be updated.

MultiUpdate can be launched separately from the Start Menu or from the folder where it is located (by default, this is the
Multi Commander install folder) or by selecting "Launch MultiUpdate..." from the Help menu in Multi Commander.

By default Multi Commander will check if an update exists each time it starts. If an update exists it will launch
MultiUpdate.

Multi Commander must not be running when MultiUpdate tries to update it or the update process will fail: it will be
unable to replace files that are in use.

Settings

Download beta if exists


This option checks for an unstable beta version and, if one is available, will update Multi Commander with it.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 322


Multi Commander Documentation

Unstable beta versions are often not fully tested and can contain experimental or unfinished features.
Checking this is normally NOT recommended.

Backup existing version before updating.


This option creates a backup of the current installation before updating, so that you can revert to a previous version if
there are problems with the update.

Force Update even if no new version is found


This will force the download of the latest version found and update Multi Commander with it. This can be useful if the
current version has been corrupted or if you are running an unstable beta version and want to revert back to the latest
stable version.

Update from a MultiUpdate file


If you already have a file containing Multi Commander updates, you can update from this file instead of downloading
another.

Upgrade 32-bit version to 64-bit


If you are running a 32-bit version of Multi Commander, you can check this option to force MultiUpdate to upgrade you to
the latest stable 64-bit version. This option requires you to be running a 64-bit version of Windows.

Use WinInet for Download


If you have problems downloading an update, try activating this option.

Use IE User Agent


Some corporate networks have restrictions in firewalls that do not allow browsers other than Internet Explorer to
communicate with the Internet. Checking this option will force MultiUpdate to download updates by impersonating
Internet Explorer.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 323


Multi Commander Documentation

Command Line Parameters


Multi Commander can be started with some command line parameters.

-L=<path> - Path to show in the left panel


-R=<path> - Path to show in the right panel
-F=<startup.ini> - file that contains startup properties for the path to show
-T=<Any Text> - A Text that will be shown in the caption bar of the Multi Commander
window
-AutoRun=<User Defined Command to auto run when started>
-NOUPDATECHECK - Disable the check for a new version
-TABSESSION=<Name or ID> - Name of ID of a saved TabSession that will be loaded at
startup
-INSTANCE=<Name> - Name of instance, Use separate configuration for the same
execution of MultiCommander.exe
-MINIMIZED=Start Minimized (there is also an option for that in settings)

Both - or / are supported for parameters. eg. /L=C:\Bin or -L=C:\Bin

If you want an already-running instance of Multi Commander to go to a path you can use the /OPEN parameter.
This is useful when you have an external program that should tell Multi Commander to go to a specific path or when Multi
Commander is running in Single Instance mode

/OPEN "<path>" - Open new tab for this path


/OPEN "<path>" /NONEWTAB - Open path in currently active tab
/OPEN "<path>" /PANEL=Left|Right|Active|Source|Target - On path in panel Left,
Right, Active, Source or Target panel.. only use ONE of them
/QUIT - Exit current instance

Startup definition file ( -F=<filename.ini> )


The startup file specifies multiple folders to be shown when Multi Commander opens. Each path will be shown in a
separate tab.

[PANEL_1]
Path=D:\
Side=L

[PANEL_2]
Path=D:\Bin
Side=L

[PANEL_3]
Path=D:\Projects
Side=L

[PANEL_4]
Path=C:\Projects\Jupiter
Side=R

[PANEL_5]
Path=E:\Projects\Pluto

http://multicommander.com Generated : 10-Apr-2021 15:25:26 324


Multi Commander Documentation

Side=R

Path and Side parameters must be specified in the file.

The following parameters are optional:

Locked=1|0
AllowSubPathChange=1|0
ShowTree=1|0
SortAsc=1|0
SortCol=[column number]
TabColorText=#000000
TabColorBk=#000000
TabColorHotWhenActive=1|0
TabColorGradient=1|0
ViewMode=1|2|3|4
ViewModeListWidth=000
ViewModeDetailWidth=000
Side=L|R
Path=[Full Path]

1|0 means 1 or 0, 1|2|3 means 1 or 2 or 3, and so on.

Examples

MultiCommander.exe "C:\Bin" "D:\"

If no "-L" or "-R" parameter is specified, the first parameter is assumed to be a path to show in the left panel, and the
second to be a path to show in the right panel.

MultiCommander.exe -L="C:\Bin" -R="D:\"

MultiCommander.exe -F="AutoStart.ini"

MultiCommander.exe -TABSESSION="WorkWithPictures"

MultiCommander.exe -AutoRun=CmdRunStartup

MultiCommander.exe /OPEN "D:\My Folder\SubFolder"

MultiCommander.exe -INSTANCE=WorkWithPictures

http://multicommander.com Generated : 10-Apr-2021 15:25:26 325


Multi Commander Documentation

http://multicommander.com Generated : 10-Apr-2021 15:25:26 326


Multi Commander Documentation

Multi Commander Windows Message API


Multi Commander supports the WM_COPYDATA Windows message for setting and getting information.
Other programs can use this message to tell Multi Commander to go to a path, change focus to a file item, or to query what
the current path is or which file is currently in focus.

Actions for getting information from Multi Commander will have the response to the calling program returned using
WM_COPYDATA message.

WM_COPYDATA is a special Windows message. One of the parameters to send is a pointer to a COPYDATASTRUCT
stucture. This struct is used to store all the data that should be send to Multi Commander.

typedef struct tagCOPYDATASTRUCT {


ULONG_PTR dwData;
DWORD cbData;
PVOID lpData;
} COPYDATASTRUCT, *PCOPYDATASTRUCT;

dwData is used to set some action flags for Multi Commander


lpData is a pointer to the data that should be sent to Multi Commander
cbData is the size in bytes of the data that should be sent

The WM_COPYDATA message must be sent to the main Multi Commander Window.
This can be found by first finding the process ID of the Multi Commander.exe instance and then finding the top level
window of that instance.
An example of how to do that is the MCCopyData.h file in the samples.

When the HWND for the window has been found, use the Windows API SendMessage to send the WM_COPYDATA
message to the HWND of the windows of Multi Commander.
If requesting information that requires Multi Commander to answer back, the HWND of the windows that will recieve the
answer is also needed.

Exmple

COPYDATASTRUCT cds;
cds.dwData = CPF_GOTOPATH | CPF_SOURCE | CPF_NEWTAB;
cds.cbData = wcslen(szPath) * sizeof(wchar_t);
cds.lpData = (void*)szPath;
SendMessage(hMCHWND, WM_COPYDATA, (WPARAM)hMyHwnd, (LPARAM)(LPVOID)&cds);

CPF_GOTOPATH tells Multi Commander that the data provided is a path and this it should go to this path
CPF_SOURCE tells Multi Commander that the new path should be shown in the source panel
CPF_NEWTAB tells Multi Commander that the new path should be opened in a new tab.

The following CopyData Flags can be combined.


Some flags can't be combined: do not combine multiple action flags and multiple target panel/side flags.

#define CPF_GOTOPATH 0x00000002L // Go to path


#define CPF_GETCURPATH 0x00000004L // Go to current path - Result returned in
WM_COPYDATA message from MC
#define CPF_GETCURITEM 0x00000008L // Get name of current item (file or folder)
in focus
#define CPF_GETCURITEMFULL 0x00000010L // Get full path of current item (file or
folder) in focus

http://multicommander.com Generated : 10-Apr-2021 15:25:26 327


Multi Commander Documentation

#define CPF_LEFT 0x00000100L // Go to the new path on the left side


#define CPF_RIGHT 0x00000200L // Go to the new path on the right side
#define CPF_SOURCE 0x00000400L // Go to the new path in the source panel
side
#define CPF_TARGET 0x00000800L // Go to the new path in the target panel
side
#define CPF_ANSI 0x00010000L // If not specified, all string are assumed
to be Unicode
#define CPF_NEWTAB 0x00020000L // Open a new side on the specified side
#define CPF_FOCUSITEM 0x00040000L // Change focus to the file item provided in
the path

Set CPF_ANSI if the path sent is ASCII/ANSI. If this is not set, Unicode (wchar_t) is assumed.

C++ Helper
Included in the Sample project there is a MCCopyData.h file. This file contains a helper class that will do most of the work
for you.

// Get Current path of the source panel


MultiCommander::MCCopyDataHelper MCCopyData;

MCCopyData.Subclass(hDlg);
std::wstring path = MCCopyData.GetCurrentPathW(hDlg, CPF_SOURCE);
MCCopyData.ReleaseSubClass(hDlg);

hDlg is the HWND of the calling program. This HWND is used when Multi Commander returns the answer to the request.

MCCopyData.Subclass(hDlg);
This will hook the helper class into the message loop of the calling program and it will handle all of the WM_COPYDATA
responses sent from Multi Commander.

If your program is not a pure Win32 program or you cannot do this, you need to handle the answer of the WM_COPYDATA
yourself.
You will find an example of how to do this in the helper class.

In this example we tell Multi Commander to go to D:\MyFolder\SubFolder and that this path should be opened in a new tab

MultiCommander::MCCopyDataHelper MCCopyData;
MCCopyData.GoToPath(L"D:\\MyFolder\\SubFolder\\", CPF_SOURCE | CPF_NEWTAB, hDlg);

Download the sample project and test executable

http://multicommander.com Generated : 10-Apr-2021 15:25:26 328


Multi Commander Documentation

Multi Commander Hangs and is Not Responding


Symptom
When Multi Commander hangs it is often because it is waiting for some external operation to finished, but it can also be
because of a problem within Multi Commander itself.
A 'hang' is when Multi Commander becomes unresponsive. The main user interface no longer accepts any input and you
see the Windows message "Not Responding" in the title bar.

What To Do
If Multi Commander actually crashes a mini dump file is created and sent to our crash report system where we can
investigate why it crashed.
For a hang this is not done automatically; to be able to find out why it hung, and to be able to fix it, we need to know what
Multi Commander was doing when it hung. To do that, we need a dump of the hung 'MultiCommander.exe. process, but
you, the user, will need to create that dump and send it to us.

Creating a Dump File


To create a dump file you can use the Windows Task Manager (For Windows XP or Windows Server2003 you have to use a
tool like procdump).

Start Task Manager by pressing Ctrl+Shift+Esc (or right-click on the status bar and select "Start Task Manager"), select
the Processes tab.
Find the "not responding" MultiCommander.exe process in the list, right-click it and select "Create Dump File".

When the dump file is saved you will be presented with a dialog telling you where the dump file was written.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 329


Multi Commander Documentation

The path in the dialog must be selected so that you can copy and paste that path into Multi Commander or Windows
Explorer to go to that location.

Compress the dump file with Zip/7-zip/Rar. The fastest way is to just right-click the file and select "Send To > Compressed
Folder".

Then upload that file to http://multicommander.com/upload and we can take a look and see what Multi Commander was
waiting for and why it hung.

If you need feedback on your submitted file, then also post a message in the forum or send us an email.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 330


Multi Commander Documentation

Multi Commander Crashes


If Multi Commander Crashes
A crash can happen for many different reasons. Perhaps because of a bug in Multi Commander, but also because of
external factors, like bad memory or bad hardware or conflicts with other software.

When Multi Commander crashes it will, by default, try to create a mini crash dump and send it to our crash report system.
The crash report system will then do an automatic analysis of the crash and send the result for review. If the issue needs
more investigation it will be analyzed manually.

With the crash dump we can see where in Multi Commander the crash happened and sometimes the reason why.
However, the crash dump file that is created by default has very limited information and sometimes does not have enough
for us to find out what has happened.

Shell Extensions
The most common reason for crashes is third party programs that get executed inside the Multi Commander process. This
happens often when Multi Commander is using Windows Explorer Shell Extensions for building the Context Menu ("Right-
Click" menu).

A lot of shell extensions are only tested on Windows Explorer, so when programs like Multi Commander call them, they can
crash Multi Commander because the Extension has a coding error. There is nothing Multi Commander can do about this.

One thing you as a user can do is to disable Shell Extensions one by one to find out which one is at fault. A tool to
disable/enable Shell Extensions is the free ShellExView by NirSoft

Provide Better Crash Information


Since the default crash report is limited in information, what it does provide is not always useful. If you have regular
crashes, please consider changing the Crash Dump Format to a higher level. This will provide us with more and better
information to determine why it crashed.

You find the settings under Core Settings

If you did something specific which triggered the crash, please send an email or leave a post in the forum letting us know
what exactly you did to trigger the crash. The more information we get the better the chance that we can fix the problem.

The crash dumps with maximum information contain all the memory addresses that the Multi Commander.exe process
used, so they can be large. But they also give us a good view on what is going on inside Multi Commander and information
about the internal state of its various components.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 331


Multi Commander Documentation

http://multicommander.com Generated : 10-Apr-2021 15:25:26 332


Multi Commander Documentation

FAQ - Show Hidden Files


Just as in Windows Explorer, files and folders with the hidden and system attributes set are not visible by default.

There is a settings in Explorer Panel settings for changing this:

There is also a quicker way to toggle this setting on or off, and that is to use the toolbar button.

This will toggle the visibility of files and folders with the hidden and system attribute set.

Right-clicking on the button will open a pop-up.

The popup will display the current settings and allows for changing the settings, with separate options for hidden and
system attributes.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 333


Multi Commander Documentation

http://multicommander.com Generated : 10-Apr-2021 15:25:26 334


Multi Commander Documentation

FAQ - Enter Folder on Single Click

Because there are so many configuration options in Multi Commander there is no single option you can check to enable
this behaviour.

But because the mouse and keyboard are both very customizable, it is possible to configure it.

You can configure what should happen when you click with a mouse button and how things should work.

To enable single-clicking, the settings in Explorer Panel need to be modified.

The first thing to change is what should happen when left mouse button is clicked.

Changing this to "Open Folder / Execute file" will allow a folder to be opened with single click, and a file will be run on
single click.

A potential problem is that it will be harder to select files and/or folders: normally a file or folder is selected when clicked
on.

By enabling "Automatically select file/folder when hovering over it", the item under the mouse cursor is automatically
selected.
It is thus easier to select items.

http://multicommander.com Generated : 10-Apr-2021 15:25:26 335


Multi Commander Documentation

Multi selection, however, is more difficult.

But enabling "Checkbox" under "Selection and Checking of Items", it will be easier to select multiple files and folders.

Optional
Many users like to use the single-click setup and prefer that clicking on empty space will go back to the parent item.

And there is an option for that:

(Where whitespace is the area on a row after any text).

http://multicommander.com Generated : 10-Apr-2021 15:25:26 336


Multi Commander Documentation

FAQ - Save and Resize Columns


Save column layout
If you resize, add or remove columns, and want to save the new layout as your default for all Explorer Panels:

Right-click the column header and select "Save current layout as default".

Resizing Columns and AutoResize


If the option "AutoResize columns" in Explorer Panel settings is enabled, columns will automatically resize when you next
resize them.

The size of all columns will change immediately after you resize any of them. All columns will then fit into the width of the
view.
When you resize the last column, the Filename column is automatically resized to accommodate the new size of the last
column.

So when resizing all columns to fit your needs, do so from left to right but skip the filename column. This will resize to fill
whatever room is left after resizing all other columns.

If the AutoResize Column option is not enabled, columns are not automatically resized and you can create column layouts
that are wider than the width of the view.
In the latter case you will see a horizontal scrollbar.

You can manually force columns to be resized by right-clicking on column header and selecting "AutoResize columns"

http://multicommander.com Generated : 10-Apr-2021 15:25:26 337


Multi Commander Documentation

When selected, a one-time AutoResize of the columns in the view will occur.

More...

Read more about how to customize columns and how to create new column layouts
Customize columns
Customize columns layouts

http://multicommander.com Generated : 10-Apr-2021 15:25:26 338


Multi Commander Documentation

http://multicommander.com Generated : 10-Apr-2021 15:25:26 339


Multi Commander Documentation

http://multicommander.com Generated : 10-Apr-2021 15:25:26 340

You might also like