Differences

This shows you the differences between the selected revisions of the page.

2019-12-27 2019-12-27
no summary (110.139.47.62) (hidden) Restored revision 1569411453. Undoing revision 1577435415. (martin) (hidden)
Line 1: Line 1:
-]].+====== 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 //[[ui_pref_storage#configuration_storage|Storage page]]// of Preferences window.  
 + 
 +Note that [[administration|configuration of restrictions and enforcements]] by administrator, is always stored in Windows registry. 
 + 
 +===== Removing Configuration ===== 
 +You can [[ui_cleanup|clean up all configuration data]] stored on your machine. 
 + 
 +===== [[export]] Exporting/Backing up the Configuration ===== 
 +To export/back up your configuration, go to //Tools > Export/Backup configuration// on [[ui_login|Login dialog]]. 
 + 
 +In older versions of WinSCP, use //Export// button on [[ui_preferences|Preferences dialog]]. 
 + 
 +===== [[import]] Importing/Restoring Configuration ===== 
 +To import/restore the configuration, go to //Tools > Import/Restore configuration// on [[ui_login|Login dialog]]. 
 + 
 +See also //[[faq_transfer_config|How do I transfer my settings from a non-working computer?]]// 
 + 
 +===== [[transfer]] Transferring the Configuration ===== 
 +To transfer your configuration to another computer/location, [[#export|export the configuration]] to an INI file and then [[#import|import]] the file on the another computer/location. 
 + 
 +===== [[registry_key]] Registry Key ===== 
 +If you use registry as configuration storage, the configuration is stored under following key.  
 +<code> 
 +[HKEY_CURRENT_USER\Software\Martin Prikryl\WinSCP 2]  
 +</code> 
 + 
 +===== [[ini]] 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''. &winpath 
 + 
 +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 ''[[commandline#configuration|/ini]]'' switch or in [[ui_pref_storage|preferences]]. 
 + 
 +===== [[readonly]] 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.  
 + 
 +==== [[readonly_sections]] Read-Only Configuration Sections ==== 
 + 
 +//In the latest beta version,// &beta 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 [[config#registry_key|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): 
 + 
 +<code ini> 
 +[_] 
 +Access=read 
 + 
 +[SshHostKeys] 
 +Access=full 
 +... 
 + 
 +[Configuration\Interface] 
 +Access=full 
 +... 
 + 
 +[Configuration\Interface\CopyParam] 
 +Access=read 
 +... 
 +</code> 
 + 
 +==== [[ini_readonly]] 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. This option is available even in the older versions. &beta 
 + 
 +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 [[session_configuration|site]], or submit [[ui_preferences|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. 
 + 
 +===== [[auto]] Auto-selecting Storage ===== 
 +On startup, WinSCP first looks for an INI file in the directory, where WinSCP executable is stored in;((Unless different location was forced using [[commandline#configuration|''/ini'' switch]].)) 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 (The key is created by installer, so installed WinSCP uses registry by default). If it does not find that 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 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 [[logging|session log]]: 
 + 
 +<code> 
 +--------------------------------------------------------------------------  
 +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                                           
 +</code> 
 + 
 +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|portable use]]. 
 + 
 +===== Pre-configuring WinSCP ===== 
 +Learn how to [[custom_distribution|distribute pre-configured version of WinSCP]].

Last modified: by martin