This is an old revision of the document!
Configuration Storage
WinSCP can store its configuration both to Windows registry and INI file. When installed, the configuration is stored by default into the registry. Portable versions use by default an INI file (if possible). To switch the storage see Storage page of Preferences window.
Note that configuration of restrictions and enforcements by administrator, is always stored in Windows registry.
Advertisement
- Removing Configuration
- Exporting/Backing up the Configuration
- Importing/Restoring Configuration
- Transferring the Configuration
- Sharing the Configuration between Machines
- Registry Key
- INI File Location
- No Configuration
- Read-Only Configuration
- Auto-selecting Storage
- Checking What Store Is in Use
- Portable Configuration
- Pre-configuring WinSCP
Removing Configuration
You can clean up all configuration data stored on your machine.
Exporting/Backing up the Configuration
To export/back up your configuration, open the Login dialog by selecting Tabs, from menu bar > Sites > Site Manager, then select Tools > Export/Backup configuration.
Advertisement
In older versions of WinSCP, use Export button on Preferences dialog.
Importing/Restoring Configuration
To import/restore the configuration, go to Tools > Import/Restore configuration on Login dialog.
See also How do I transfer my settings from a non-working computer?
Transferring the Configuration
To transfer your configuration to another computer/location, export the configuration to an INI file and then import the file on the another computer/location.
If you want to transfer just one specific stored site, you can generate a session URL from the site on the source location (make sure you include Advanced settings to the URL). Transfer the URL to the target location, paste it to the Login dialog and save it.
Registry Key
If you use registry as configuration storage, the configuration is stored under the following key:
[HKEY_CURRENT_USER\Software\Martin Prikryl\WinSCP 2]
INI File Location
When loading configuration, WinSCP first looks for an INI file in the directory, where WinSCP executable is stored in. The INI file needs to have an .ini
extension and the same name as the executable (i.e. WinSCP.ini
). If INI file in not found there, WinSCP looks to application data directory of your user profile, i.e. to C:\Users\username\AppData\Roaming\WinSCP.ini
.
When you opt to use INI file for the first time, WinSCP tries to write it to directory, where WinSCP executable is stored in. If the directory is not writable, INI file is stored to application data directory of your user profile.
You may also use an INI file in a different folder or with a different name using /ini
switch or in preferences.
No Configuration
With /ini=nul
command-line switch, WinSCP starts with the default configuration and does not save the configuration on exit. That is particularly useful for scripting, to make sure that the script always starts with all defaults. This is also the configuration mode used by WinSCP .NET assembly.
Advertisement
Read-Only Configuration
Particularly, when using a shared INI file or when pre-configuring WinSCP for a specific task, you may want to set the configuration or its parts read-only.
Read-Only Configuration Sections
You can set individual configuration sections read-only. This way you can for example prevent a user from changing default transfer settings, while still allowing other kinds of customizations.
Setting a configuration section read-only makes WinSCP silently discard any changes to that section, when saving the configuration.
An access to individual sections is controlled using an optional Access
key. If the key is not set, a section inherits the state of its parent section. By default, all sections are writable. To set a section read-only, set its Access
key to readonly
. To enable writing to a subsection of a read-only section, set the subsection Access
key to full
.
To change the default state of whole configuration, set root Access
key. In Windows registry, it is a key in WinSCP root registry key. As INI files have no root section, WinSCP looks into a special section named [_]
(a single underscore).
For example the following INI file sets all configuration read-only, with an exception of a host key cache and interface settings (but in turn with an exception of transfer settings, which are again read-only):
[_] Access=read [SshHostKeys] Access=full ... [Configuration\Interface] Access=full ... [Configuration\Interface\CopyParam] Access=read ...
Read-Only INI File
A simpler way to make whole configuration read-only is to use an INI file and set it read-only in a file system.
When INI file directory or the file itself is not writable (for example when the INI file is in Program Files
folder or when it is explicitly set read-only), WinSCP does not preserve its state when exiting. No error message is displayed. Only when you explicitly change configuration (such as when you save site, or submit Preferences dialog), an error is shown. You can make WinSCP overwrite a read-only INI file by holding Shift
key, while closing or submitting Preferences dialog.
Advertisement
Auto-selecting Storage
On startup, WinSCP first looks for an INI file in the directory, where WinSCP executable is stored in;1 and then in the user profile directory. If it does not find INI file in either location, it looks for presence of its key in registry, both in HKCU
and HKLM
. The HKLM
key is created by the installer, so installed WinSCP uses the registry by default. If it does not find the registry key either, it creates an empty INI file in the directory, where WinSCP executable is stored in. If that directory is not writable, it creates an empty INI file in the user profile directory.
Checking What Store Is in Use
When troubleshooting problems, it is necessary to find whether WinSCP is actually using the configuration storage you intended. For that inspect a beginning of the session log:
-------------------------------------------------------------------------- WinSCP Version 5.15.3 (Build 9730) (OS 10.0.18362 - Windows 10 Enterprise) Configuration: HKCU\Software\Martin Prikryl\WinSCP 2\ Log level: Normal Local account: INTRANET\martin
Tag Configuration
shows either HKCU
Windows registry key or a path to an INI file. When Windows registry configuration storage is in use, it is also important under what Windows account is WinSCP running, to know what account the HKCU
refers to. For that refer to Local account
tag.
Portable Configuration
Learn how to configure WinSCP for portable use.
Pre-configuring WinSCP
Learn how to distribute pre-configured version of WinSCP.
- Unless different location was forced using
/ini
switch.Back