About...

USB Safely Remove - is a program that improves work with external devices in Windows. It provides more convenience and safety for those who actively work with USB or SATA drives and all other external devices.

Major features

  • Customizable device control menu
  • Displaying what prevent a device from being stopped
  • Forced stop
  • Device disabling
  • Notify about forgotten devices on PC shutdown
  • Manage drive letters
  • Command line
  • Power off devices on their stopping
And much more...

Improvement of the program

We constantly develop the program, improving it and adding new features. If you find a bug in the program, or typo in the documentation or have an idea, please do not hesitate to contact us. Your inquiry let us make the program even better! Read more at page: How to send a note or a suggestion
Copyright © 2021 Crystal Rich Ltd


USB Safely Remove - List of all features

List of all features

Enhanced device control menu

  • Device safe removal
  • Displaying stopped (but not yet removed) devices
  • Device disabling
  • Reactivate stopped device
  • Eject CD or DVD drive
  • Scan for hardware changes
  • Browse a device in Explorer or your favorite file manager
  • Eject memory cards of card readers
  • Stop all devices in a click
  • Sort your devices by drive letter, name etc
  • Rename a device
  • Change a device image
  • Hide unnecessary device from the menu
  • Change skin of the menu
  • Can show and stop SATA\USB devices that are not displayed in the native Windows menu
  • Supports drives encrypted with BitLocker

Safe removal enhancements

  • Display programs blocking a device from stopping
  • Forced device stopping
  • Power off devices on stopping (optional)

Drive letter management

  • Prohibit assigning some letters for external drives
  • Mounting hot-plug drives as folders of a fixed drive
  • Changing drive letters directly in the program
  • Fixing a drive letter to a removable drive
  • Fixing a drive letter to several removable drives
  • Hide drive letters of unused card reader slots

Program autorun

  • On device connection
  • Before device stopping
  • After device stopping
  • After physical device removal
  • Run program for all devices (not only for particular one)

Additional features

  • Command line for safe removal\reactivation
  • Stop or return a device with a hotkey
  • System tray icon hiding when there are no devices to be stopped
  • Display the number of visible devices on the tray icon
  • Remind about forgotten devices on shutdown


System Requirements

The listing below specifies the minimum system requirements for running USB Safely Remove:

  • x86 or x64 computer with USB, SATA or Firewire support
  • 30MB of free memory
  • 25MB of free hard disk space
  • Windows XP\2003\Vista\7\8\8.1\10
  • A mouse or a keyboard


Gratitudes

At this page we would like to say thanks to all people who make a contribution to USB Safely Remove.

To translators of the program
Thank a lot to all those translators who actively maintain their language translation! Just because of their efforts you can enjoy the program in your native language.

  • Albanian - Bestar Flamuraj (Bestar27 et gmail tot com)
  • Arabic - Stark (Stark.mk et gmail tot com)
  • Bulgarian - Ing. Georgi Nenov (joronenov et abv tot bg)
  • Byelorussian - Drocheslav Gorbatykh
  • Portuguese (Brazilian) - Renata de Barcelos Ferreira (r13barcelos et yahoo tot com.br)
  • Simplified Chinese - Bo Zhao (zb0922 et gmail tot com)
  • Traditional Chinese - Jedi Lin (JediLin et gmail tot com)
  • Croatian - Igor Hajek (dadiggi et gmail tot com)
  • Czech - Geralt (geraltcz et centrum tot cz)
  • Catalan - Miquel Roure (miroure et gmail tot com)
  • Danish - Flemming Sorvin (flemming et sorvin tot dk)
  • Dutch (Belgium) - Norbert Busselot
  • Dutch (Netherlands) - Edward Seerden
  • Estonian - Gert (bassiliin et hot tot ee)
  • French - David Saingery
  • Finnish - Nuutti Hyttinen
  • Galician - Jose Rodriguez (peperodriguez et solve360 tot com)
  • Hungarian - Hevesi Janos (hevesi_j et freemail tot hu)
  • Hebrew - jinji (thejinji et walla tot com)
  • Italian - Luigi Calabrese (lui.cal et gmail tot com)
  • Korean - JH, Hyungyu Kim (chelsona et gmail tot com)
  • Lithuanian - Ð. Liaugaudas
  • Macedonian - SFC
  • Polish - Maciej Haudek (kontakt et haudek tot com)
  • Romanian - Daniel Bendas (dvd2ddd et yahoo tot com)
  • Slovak - iVo (ivo_seki et rocketmail tot com)
  • Serbian (Cyrillic) - Ozzii (ozzii.translateet gmail tot com)
  • Serbian (Latin) - Pavle Lacarac
  • Slovenian - Andraz Poje aka GodSpeed (andraz.poje et gmail tot com )
  • Spanish - Francisco Solesio (solesio et gmail tot com)
  • Swedish - Anders Dahlgren (adahlgren et gmail tot com)
  • Turkish - BouRock (bourock et live tot com)
  • Ukrainian - PAShYCh (ua_pashych et mail tot ru)
  • Indonesian - A. Dibyanugraha (agen47 et gmail tot com)
To other contributors
  • Roberto Reynoso Rodriguez (Webmaster de Rutas de Aventurate) - for partial translation of the Spanish web-site
  • aLLigator(el.aligator et gmail tot com) - for the first version of the card reader icon
  • Maciej Haudek (kontakt et haudek tot com) - for help us in testing.
    Maciej, who is a professional beta-tester, regularly finds the most trickiest bugs in the program
Thirdparty components used in the program
We also would like to say thanks to all developers of those great open-source and freeware components we use in the program!
  • Inno Setup - installer creation tool
  • PNG Image - PNG Library by Gustavo Daud
  • Jedi Library - a set of useful functions and API-headers
  • Virtual Tree View - powerful UI component to display tree structures
  • SMComponents - a set of Delphi components by scalabium.com
  • Alcinoe Graphic function - graphical transformation functions by "Arkadia Software Engineering"
* If you want to write to a one of the mentioned above persons please take the string in brackets and replace "et" with "@" and "tot" with "." and you'll get an e-mail


The device stop menu

A killer feature feature of the program is its powerful menu aimed to manage your external devices. To call the menu just hover mouse over the system tray icon of the program, or left-click to the system tray icon or press a hotkey (Alt+Shift+S by default).

This menu allows you to:
  1. Stop a device - just left click the mouse on the selected device.
  2. Disable a device - right click to the device and choose "Disable a device". Read more on differences between stopping and disabling
  3. Stop all visible devices on the menu - just press this button: and the program will carefully stop all your devices that you see on the menu one by one (hidden from the menu devices will not be stopped with this button). If you have programs assigned to launch before stopping to a visible device they'll be also launched as with usual single device stopping. You also can use a hotkey for stopping all visible devices (read more).
  4. Eject memory card of a card reader - hover mouse over the required card and click the Eject button [image].
  5. Eject CD or DVD drive - the same way as card reader's card - just click the Eject button.
  6. Hide a device from the menu
  7. Change device properties: icon, name, drive letter etc
  8. Browse a device drive in Explorer - just hover the mouse over the drive item and click the Browse button
  9. Return stopped device back - if a device is stopped, but is not unplugged yet, it will be displayed in the menu, but its icon will be red-crossed. Just click on the device and it will be returned back into the system!
  10. Scan for hardware changes; if you have a SATA or eSATA drive which cannot be automatically detected by Windows on its connection you should use this feature to ask Windows to scan for newly connected devices. Just press this button: and Windows will detect your SATA drive and let you use it.
Device state pictograms
In some cases we can see additional "state" pictograms on the device or systray icon. Here's their description.
The device is stopped (prepared to safe removal). You can safely eject it or click it to return it back.
The device is disabled
The small "lock" sign before drive letter means the letter is fixed to the drive
The "lock" and "exclamation" sign means fixed drive letter violation. See Fixing a drive letter to several removable drives
The system tray icon of the program becomes gray when there are no devices on the menu (but there might be hidden devices).
Moving magnifier on the systray icon means program received system notification about device configuration change
The "x" sign shows on the system tray icon when there are stopped or disabled devices on the menu
Operate the menu using the keyboard
Almost all previously mentioned operations, particularly device stopping and browsing of its drives can be done without any touching the mouse - only using the keyboard!
  • To stop a device or to reactivate it call the menu with a hotkey (Alt+Shift+S by default), then choose a device with "Arrow Up\Down" keys and press "Enter".
    If you wish to only eject a memory card use "Arrow Right\Left" keys to choose a card.
  • To stop all devices at once press a specified hotkey (you should enable it in the Options -> Global Hotkeys -> Use "Stop All" Hotkey section) while you are staying in any application.
  • To browse a device drive press CTRL-B key combination, when the selection is on your required device
  • To open the program main window (and see hidden devices) press "Tab" key.
Read more in Hotkeys section.


Main program window

The main program window allows you to operate all devices - both displayed and hidden from the device stop menu. Mainly it serves to work with hidden devices, e.g. to stop them or to make one of them displayed in the menu back.

The main window gives you the same functionality as the device stop menu as well as performs some additional seldom done operations. However due to its universality it is less convenient to do frequent operations than the device stop menu.
What can be done in the main window and cannot in the menu?
  1. To see hidden devices and make a device to be displayed in the menu
  2. To launch the command line tool
  3. To send us a feature request or report a bug
    (Help -> Request new feature... | Report a bug... menu items)
  4. To run Windows' Safely Remove Hardware tool (Command -> Open native Safely Remove Hardware menu items)
  5. To scan for hardware changes and refresh device list in the program as well (View -> Refresh menu item)
  6. To check for new versions of the program (Help -> Check for updates menu item)


Change Device Properties dialog

This dialog lets you change such device properties as name, icon, drive letters, device behavior as well as assign some actions on device connection\stop.

"Common" tab
At this tab you can:
  1. Change the device name
  2. Change the device image
  3. Assign global hotkey to stop the device
  4. Specify whether the device is displayed in the menu
    When this option is set to "Defined by program" state, the program will define automatically whether device is displayed in the menu or not. It does it simply - all devices with drives become displayed, others become hidden.
  5. Specify whether the device is a card reader
    The program gives you additional features for card readers:
    • Ability to eject memory cards one-by-one
    • Hidding of "empty" card reader disks
    In most cases the program defines device type automatically, however sometimes it mistakenly define a card-reader as a pen-drive (or vice versa) thereby not allowing you to use special card reader features. In this case you should set this option for the device manually.
  6. "Technical information" link displays technical information about the device. Send this information on demand of the technical support of the program in case of any troubles with device functioning in the program.
"AutoRun" tab
Lets you assign launching of programs on device connection\stopping. At this tab you can set up automatic launching of programs on next events with the given device:
  1. On device connection
  2. On before device stopping
  3. On after device stopping
  4. On before device removal
Read more on how to set up program autorun here: How to use program autorun?
"Drive Properties" tab
Lets you change drive letter of the device, mount a device as a folder as well as edit other drive properties. On the left pane you can see all drives of the current device (see fig. 1) and you can switch between them. On the right side (fig. 2) of the dialog you can see information on the selected drive and edit its properties. On the right side you can change:
  • Volume label The name displayed in the device menu and in the File Explorer as well
  • Drive letter
  • Fix drive letter It makes drive letter to be permanently reserved for the device. It's possible to fix one drive letter to several drives that are not used at the same time
  • Mount drive as a folder
Read more on drive letter management here: How to manage drive letters?


USB Safely Remove Options dialog
USB Safely Remove has well thought-out user interface which allows most users to comfortably work with the program immediatelly after its installation, without any additional actions. However everyone is unique and has his own choice and working style. Therefore, USB Safely Remove allows to change virtually every aspect of the program.

Highlighted options

  • Hiding the systray icon when there are no devices to be stopped
  • Skin changing
  • Stop the only device connected using using device menu call hotkey
  • Disabling popup of the device menu on mouse hover
  • Hiding drives of card reader's empty slots from the system

To call the Options dialog click the gear button ( [image]) in the device menu or in the main window.

Save and load settings

In the left bottom corner of the Options dialog there's the Options button that allows you to save or load all settings of the program. It's useful when you reinstall the program or Windows or just migrate to another computer. See this How to for details.

"General" tab

Contains frequently used settings or settings out of other categories
  • Run on Windows startupAllows to disable run of the program on Windows startup
  • Power off the device after device stopping Changes default behavior on all Windows versions since Vista which do not do not power off USB ports when you stop a flash drive or an external hard drive. Read more
  • Display surprise removal USB devices Allows the program to display ALL USB devices, even those that do not need to be stopped before device removal. When this option is enabled, the program shows only those devices which report to the system that they need to be stopped before disconnection.
    Why is this option needed?
    • Some devices report to the Operating System that they can be removed without stopping the device before removal. However, a device may actually need to be stopped before removal, because some important data which was transmitted to (or from) the device may be lost. An example of such a device is a USB programmer.
    • Some HID devices (mice, keyboards, trackballs) sometimes enter an incorrect state - they stop reacting to the user's actions. Physically disconnecting and reconnecting the device may help in this case. However, if the device is located in a hard-to-get-to place, it is a good idea to stop this device and then "Return device back" from the program.
    • Finally, some people simply feel more confident if they can see and control all USB devices connected to the computer.
  • Display all storage devices Some storage devices (usually SATA drives) are not displayed either in USB Safely Remove or in the native Windows safe removal tool. Enable this option and you will see all storage devices, even non hot-swappable items (such as your IDE drives). You can then hide any devices which do not need to be displayed from the stop menu and leave only the required ones.
  • Language The program speaks about 40 languages. If you cannot find your native language in the list, or you think the program has bad wording, feel free to notify us.

"Look and Feel" tab

Manages appearance of the program.
  • Replace native "Safely Remove Hardware Icon" Allows to display the native "Safely Remove Hardware" icon in the system tray. By default the program hides this icon.
  • Hide icon when there are no devices to be stopped Lets you hide the program icon, when there are no devices in the menu to be stopped.
    To access the program when its systray icon is hidden just click to its shortcut on the desktop or in the Start menu.
  • Display the number of visible devices on the tray icon When enabled the number of visible devices in the device menu is displayed in the system tray icon.
  • Icon size in the stopping menu You can choose which size of device icons you want to see in the device menu: Small, Large or Extra large.
  • Display storage device name Use this option to display or hide names of storage devices.
  • Display storage device volumes When it's enabled the storage device volumes are displayed each in own row, when it's disabled only drive letters are displayed
  • Simple menu Removes all the buttons and links from the device menu (except the Close). By combining this option with the previous options disabled you can make the menu look very ascetic.
    When this options is enabled the only way you can access the Options, the main window or other hidden functions is from the context menu of the system tray icon (right click to the program icon in the system tray):
  • Sort devices in the stopping menu Allows you to sort devices in the stopping menu by drive letter, device name and drive label.

"Skins" tab

Here you can change the skin of the device stop menu. There are several predefines skins available, by default the program uses Win 10 Dark skin. If you wish to create your own or alter a predefined skin read "How to use skins?"

"Behaviour" tab

Manages behavior of the program - program reaction on user's actions.
  • On attempt to stop a whole card reader: What to do if a user tries to stop a card reader instead of a memory card?
  • Browse device drives with:

    Allows to choose default file browser.

    When you click the "Browse" button ( [image]) in the storage device item it browses the drive content in Windows File Explorer by default. If you are an active user of an alternative file manager like Total Commander or XYplorer, you can setup the program to use it for browsing drives.

    Just select the "An alternative manager" option and enter the required command-line argument for the file manager in the field below. Use %drive% as the value for the selected drive. The program will replace %drive% with the drive letter of the selected device.

    For example this line:

    C:\Program Files\totalcmd\TOTALCMD.EXE %drive%
    allows you to browse the selected drive letter in a newly launched copy of Total Commander.

    For your convenience we have implemented an integration with Total Commander, one of the most popular file managers. Just choose an item in the menu which is launched by pressing "?" button, and the program will generate a required parameter combination by itself to open a drive on the right or left panel of a running Total Commander. The only thing you must do is to specify a path to Total Commander executable.

  • Show menu on mouse hover above the system tray icon When it's enabled (default) the program popup its device menu when you hover (and wait) mouse over the program's systray icon. When you disable the option, the menu will only be displayed when you click the systray icon.

"Global Hotkeys" tab

Lets you setup a global hotkeys to show the menu and device stopping. Read more here

"Notifications" tab

Manages the behaviour of balloon tooltips, checking for updates, proxy settings.
  • Notify about connected devices on system exit When enabled the program will remind you on logoff or shutdown if you forget some devices in the computer. Find more details in this article: How to remind about forgotten devices
  • "Ballon tooltip" settings
    "Baloon tooltips" or balloons are program notifications about events such as: device connecting, device stopping, disconnecting or assigning the device another drive letter, and so on.
    • Show balloon tooltip Enables or disables displaying of the balloons
    • Display for Allows to seetup how long the balloon is displayed on the screen
    • Show tooltip for... This switch lets you specify if you wish to display notifications about events for visible on the menu devices only or for all devices including hidden ones.
  • Automatically check for updates Enable or disable notifications about new versions of the program

    Every five days the program checks with the "safelyremove.com" webserver to see if a newer version is released. If so, the program will notify you that an update is available.

    If you have a firewall software, it may automatically configure itself to work properly with the "safelyremove.com" update check. If so, all is well. However, if the update check does not work properly, you may have to manually configure your firewall software to open the required connection to the "safelyremove.com" webserver. Please use the following parameters:
    • Connection type: outcoming
    • Port: 80
    • Protocol: TCP (HTTP)
    • Remote server: safelyremove.com
    Note! When checking for updates, the program only connects to this host and port! If you notice the program trying to connect to any other host or port, it may be infected with a virus. If suspicious activity is present, please check all files in the program with your antivirus software.
  • Proxy server settings

    Enable these option and fill out proxy server params only if you are connected to the Internet via a proxy server. These settings will be used by the "check for updates" and the error reporting mechanisms.

    Once the changes to the settings are complete and ready to be saved, you can use the "test connection" button to check if the proxy settings are correct. If the connection to the safelyremove.com server with the specified proxy settings does not work properly, you will be informed of the error.

"Drive letters" tab

You can setup here how the program controls drive letters of external drives
  • Hide drive letters when there are no media inserted When enabled the program hides drives of empty card reader slots. Since Win10 the operating system by default doesn't show empty card reader slots in File Explorer. But all other file managers, e.g. Total Commander is displaying such drives so there's sense to use this option even on Win 10 if you use card readers.

    This option affects only card reader devices, that is devices detected as a card reader by the program automatically, or with an option "Yes, it's a card reader" manually set in the properties of the device. (see Device properties -> "General" tab -> "Device behavior" section)

    If an option was enabled and you are disabling it, the program returns to the system all "empty" drives. You can use it, for example, to temporarily return all drives into the system. Once you deinstall the program, it also returns all "empty" drives to the system

    Once you close the program it does not return drives of empty slots into the system. So if you insert a memory card into the slot that was empty (and its drive was hidden by the program), while the program is not working, the inserted memory card will be unavailabe in the system! Just run the program and it makes the memory card available in the system.
  • Prohibit assigning the following drive letters to hot-plug devices Prevents assigning specified drive letters to hot-plug devices. All letters you have specified in this field will not be assigned to hot-plug devices. It is useful if you want to reserve this letters e.g. for network drives.
  • Fixed drive letter list The list shows all drives that you have fixed to a specific letters. In order to unfix any drive letter just select it in the list and click "Unfix selected drive letter".
See also How to manage drive letters article.

"Global Autorun" Tab

Allows you to autorun programs on such events with devices as: before or after stop, on device insertion or after removal. Unlike Local Autorun, programs set in this tab will run for all hot-plug devices on the system. Read more here: How to use program autorun?

"Device Stop" Tab

  • Deactivate services on device stopping Some Windows services might prevent safe removal. This feature allows to temporarily stop such services before device stopping (and start after the operation). Use this feature if you find the some services prevent a device from being stopped and the "Forced Stop" feature doesn't help.
    • Add services button allows you to see all the service and add several ones to the list.
    • Use Remove button to remove the selected services from the list
    • Test button lets you to test run of service start and stop
  • Return USB device back method Despite its name this option in first place controls the method how the device is being stopped. When you choose "Device reactivation" the device is stopped with a method that allows to reactivate the USB port only which causes device return. With the second method "USB hub restart" the device is stopped with the standard Windows method that only allows to reactivate device by restarting of its USB hub. This way has a major downside, because it also restarts all neighbour devices. But in some very rare cases it'd be preferable that devices are being stopped and reactivated with USB hub restart.
    Don't change this option without a special need!

"Advanced" tab

Manages extended settings for the program. Currently, this tab contains one option:
  • Enable verbose logging If the program becomes unstable on your computer, or does not display the required devices, or you just displayed an error notification, we would appreciate it if you enable this option and then work with the program in whatever way is required so the bug you have discovered shows up. Once you have the verbose log of the problem, then send us a bug-report from the "Report a bug" option on the Main Menu. Read more at topic: How to send a note or a feature request. After you have sent us a report, we recommend disabling the verbose logging option. While this option makes the program write lots of useful bugfix information in the log you send to us, the log grows very quickly with verbose logging enabled.


USB Safely Remove - "Cannot stop the device" window

"Cannot stop the device" window

If you are seeing this dialog it means some programs are locking your device and preventing it from being stopped. But don't worry our program has magic "Forced Stop" feature and other means to unlock and prepare you device for safe removal.

This dialog displays the list of processes preventing the device from safe removal. You can also see what certain files are opened by these processes on the device (press "+" sign before the process):

To remove the device safely you can do the following:

  1. Close all mentioned processes and press "Stop again"

    You can do this using the context menu of the process. Just right click to the process and choose "Close Program" or "Kill Program":
    • Close program just asks the program to close, it might show exit warning or just do nothing if it hangs.
    • Kill Program forcibly terminates the process
    • Bring To Front brings the program to front so that you can see what is it and close it manually.

  2. Use the "Forced Stop" feature

    Just press the "Forced Stop" button and the program closes all files opened by the listed processes on the device, leaving these processes runinng. If there are some processes which were launched from the device it asks them to close, then it tries stopping the device again. Also the program flushes the drive cache before this operation to avoid any data loss.
    The Forced Stop or Kill program may lead to data loss! To prevent this, we recommend closing processes and saving data manually. Use the forced stop button only if you are sure there are no programs on the list are currently writing data to that device. In that case the Forced Stop will be safe.

    Another note, the Forced Stop cannot damage your device. The only bad thing it might do is to break a file. If you forcibly stop a device in the moment when some program is writing data into a file, the file might became broken after the stop, but not the whole device. In any way use the Forced Stop with all precautions.

'svchost.exe' and 'system' locking processes. What are they?

On the screenshots above you are seeing 'svchost.exe' and 'system' processes among the other ones. If you expand these processes you will see the following list of locked files:

The 'System' process is locking $Extend\$RmMetadata\$TxfLog\* files and 'svchost.exe' is locking 'System Volume Information\tracking.log' and '$Extend\$ObjId' files. These files are just invisible system files that are used by NTFS file system drivers, or in other words by the operating system itself. In case when these processes lock the mentioned files only they do not prevent drives from being safely removed despite the program displays them. Usually you are seeing these processes along with other processes that actually lock the device.

But in some cases the program shows only these two processes locking exactly these filesystem files. That means that there are no programs actually locking processes and the device cannot be stopped for another (unknown for us) reason. So to safely stop this device just use the "Forced Stop" feature in most cases it helps to unlock such unknown lock.


USB Safely Remove - "Cannot return the device" window

"Cannot return the device" window

This window is similar to the "Cannot stop the device" window, except it displays a list of processes locking "neighbours" of the given device on a USB hub (not processes locking the given device itself).

Why is this necessary?
On returning a device back to the system, the program restarts not the given device, but the USB hub where that device is connected. If there are other devices connected to the hub as well as the device you wish to return, and if a process has files open on one of those neighbour devices, the hub will not allow itself to restart.
USB Safely Remove displays all processes have files open on "neighbour" devices and lets you close those processes or their files - thus enabling you to return the device back to the system successfully.

Since the "Cannot return the device" window and its controls perform similar functions to the "Cannot stop the device" window, please see the "Cannot stop the device" window description for further details.


How to power off drives on stopping?

How to power off USB devices on stopping?

A bit of history...

When you safely removed a device in Windows XP it powers the device off - for a flash drive its led is switched off and on a portable hard drive it is spun down. However, Microsoft changed this behaviour in Vista and Windows 7: after you stop the drive on those OSes the hard drive continues spinning and the flash drive LED remains active. Then for a short time of Windows 8 the behavior again changed and finally in Windows 10 Microsoft made USB devices to not power off devices on their stopping.

Since all modern external hard drives park their heads automatically when you unplug them, in theory this behaviour shouldn't led to data loss or damage to the hard disk in the enclosure. But in practice, an external hard drive may make strange sounds when you unplug it while running - and strange noises from hard disks tends to make hard drive owners nervous no matter what the cause.

How to setup

USB Safely Remove has the option to switch the system behaviour on Windows Vista, 7 and Win10 to power off the connected USB port on stopping an external hard disk. This feature is recommended if you have external hard drives since disconnection with power-down after disconnection is safer.

In order to enable this feature, go to the program options and check the "Power off the device after device stopping" option, then restart the computer to enable the new setting.


Hot-Keys and how to use them

How to stop a device with a hotkey

Global hotkeys. What is it and what for it is necessary?

Hotkeys (or keyboard shortcuts) are globally defined key combinations which allow the user to stop a device or return that device back to operation, using keyboard commands. Thus, using Hotkeys removes the need for mouse movement to perform a desired action. Users simply press the defined key combination to:

  • Stop a device
  • Reactivate a stopped, but not removed, device
  • Browse the content of a drive on a device
  • Stop all displayable drives

This provides an ideal solution for those who spend much of their time working with the keyboard, such as programmers or technical writers. For many people, it is more convenient and quicker to stop devices using keyboard commands, because it lets them make those choices without taking their hands off the keyboard.

A Hotkey is a combination of a modifier key (Ctrl, Alt, Ctrl Alt, Winkey and so on) and main key ("A" "B", "1", "F5" and so on). Hotkey examples: "Winkey S, Ctrl Alt A, Alt Shift F5, etc.
Using hotkeys, comfortable work
USB Safely Remove gives 2 handy ways of ejecting a device with a hot-key:
  1. Displaying the stop menu with a hot-key (default)
    You can call the stop menu by pressing a hotkey (Alt+Shift+S by default). If there is more than one device in the menu, you can choose the required device with the "Up"\"Down" keys and press the "Enter" key to stop the selected device.
    Would you like to browse a device drive using the keyboard? To do it call the menu with a hotkey, select the device and press "Ctrl+B".
  2. "Stop immediately" technology.
    When you are calling the stop menu with a hotkey, if there is only one device in the menu it can be stopped automatically without displaying the stop menu. To activate this behavior go to the program options -> "Global Hotkeys" tab and enable the "Stop immediately" check box.
  3. "Stop-All".
    Specify a hotkey to quickly stop all devices which are displayed in the stop menu.

USB Safely Remove also allows the assignment of separate hotkeys to enable stop\return back for individual devices. This may be useful if you have a device that needs to be stopped much more often than your other devices.
Useful tips on hotkeys
  • In order to close the stop menu that is called by a hotkey, just press "ESC" button!
  • To change or add a hotkey to call the menu or for "Stop immediately", proceed to the program options -> "Global hotkeys" tab and enable there "Use Stop Menu Hot Key" option (If it hasn't been enabled yet) as well as setup key combination in the drop down lists below.
  • To assign a hotkey to stop a certain device, call the Device properties dialog and at the "Common" tab enable "Use separated global hotkey for stopping the device" check box and choose a key combination for stopping the device below. The same hotkey you can use to activate back stopped but not removed device yet.
  • To change or add a hotkey to stop all displayable devices proceed to the program options -> "Global hotkeys" tab and enable there "Use "Stop All" Hot Key" option as well as setup key combination in the drop down lists below.


How to hide an unnecessary device from the menu?

By default, USB Safely Remove displays only storage devices in the device stopping menu, which are the devices with drive letters. Often our users want to hide some devices from the menu to prevent their accidental stopping (e.g. SATA drives that actually are not external drives).

It can be done in a snap! Call the stop menu, right-click with mouse and select "Hide device from the tray menu" item in the popped up context menu.
How to show a device back in the menu?
Open the main window (by left-clicking to the "Hidden devices" link at the bottom left corner of the stop menu), find your device in the "Hidden from the menu" section and...
  • call device context menu (right-click on the device to call it), and choose "Show device in the tray menu" item
  • or drag the device with the left mouse button from the "Hidden..." section to the "Displayed in the menu" section
    main_window.png, 9 kB


How to rename a device name or change its image in the "safely remove hardware" menu?

How to rename a device or change its image?

Unlike Windows USB Safely Remove displays real device names, given by a device manufacturer. Moreover, when you have several devices of the same type or a manufacturer has given an "obscure" name to a device you may assign a more intellegent name to those devices.

Also to make the device recognition even more faster you can assign to the device an icon from the program package or load your custome one. The most common image formats are supported: JPG, PNG, ICO, BMP, etc. All these formats will be converted by the program to ICO format.
When you have several external drives with identical names, you may prefer USB Safely Remove to display automatically drives' volume labels instead of device names. To do so enable the option "Display storage device volumes" at the "Look and Feel" tab of the program options.

You can rename a device or change its icon in the device properties dialog. See below step-by-step manuals on how to do it.
How to rename a device?
  1. Call the device properties dialog: Right click to the device in the stop menu and select "Device properties" item.
    stopMenu-changeDeviceProperties.png, 5 kB
  2. In the displayed device properties window enter a new name into the "USB Device Name" field.
    rename_device.png, 14 kB
    In order to return the previous (standard) device name, just clear "USB Device Name" field.
  3. Press "Ok" button.
How to change the device icon?
  1. Call the device properties dialog (see above) and press "Change" button under the device image.
    change_device_image.png, 10 kB
  2. Just right click with mouse to an appropriate for you. Then press "Ok" button in the device properties dialog to save changes.
How to assign a custom icon to a device?
If you are not satisfied with the supplied icon set, you can load your own icon.
  1. Call the device properties dialog (see above) and press "Change" button under the device image.
  2. Press "Load custom image" button at the bottom of the select icon window.
  3. In the displayed open file dialog choose an image you are interested in. The program will scale an image to the required sizes automatically and add it to the internal storage.
  4. Then simply left click with mouse on the newly added icon:
  5. Press "Ok" to save changes in the device properties dialog.
How to load the device icon manually?
In this section we describe an alternative way of adding device icons which allows you to put your images directly to the internal image storage of the program without previous resizing thus without loose in the quality of images. You should use this way in case if you already have a needed ICO image in, which contains three pictures sized as: 16x16, 32x32 and 48x48 pixels. It's recommended to use 32-bit color-depth pictures.
USB Safely Remove stores device icons in two folders:
  • %appdata%\USBSafelyRemove\UserDeviceImages - device icons loaded by a user
  • %programfiles%\USBSafelyRemove\DeviceImages - built-in device icons
If you already have an icon in ICO format just copy it to one of the folders described above (UserDeviceImages is better), restart the program, then go to the device properties and select your newly added icon among other images.


Command line to eject or stop devices

Command line - what is it for and how to use?

What is the command line needed for?

USB Safely Remove's command line allows to operate devices from the command line console. It is a full-fledged console application letting you perform the most of operations that the GUI version does: to see device list, to stop a device, to return it back, find out what processes are locking a device.

It is useful for using in batch scripts that interact with hot-plug devices. Here are some examples of usage:
  1. Data backup to an external backup HDD and its auto stopping
  2. A script that disables TrueCrypt (drive encryption tool) first and then stops the drive.
  3. Testing a software to work with USB

The command line is implemented as a separated console application 'usr.exe', which is located in the program folder - %Program Files%\USB Safely Remove\
Command line syntax
The common rules of the syntax are:
usr <command_name> [command_parameters]
, where
command_name - one of the listed below command names
command_parameters - parameter set of the command, e.g. for "stop" command it can be either a device name or a drive letter

Supported commands:

stop | Stops a device
forcedstop | Forcibly stops a device
return | Returns a device back
forcedreturn | Forcibly returns a device back
list | Displays the device list
wholocks | Displays the list of processes that prevent a device from being stopped or returned back
help <command_name> | Displays help on <command_name> command
help errs | Displays the list of returned error codes (errorlevels)
help | Displays help on command line

Errorlevels returned by the command line

0 - The operation is successfully completed
1 - The device with the given parameters has not been found
2 - The device cannot be stopped or returned back. This error might happen when the device is locked by another program (in case of "return" command, this code means that the device's neighbour at USB hub might be locked by some processes). Also it may happen if the device is not physically hot-swappable
3 - Incorrect command syntax
4 - The command is unknown
5 - Cannot find processes that are locking: the device (on device stopping) or its neighbours at USB hub (on device returning). It may happen if the device either now is free to eject, or it is locked by a process run with more privileges (e.g. under System account)
6 - A technical error occured while searching for device locking processes
7 - the command is not supported by a specific device
Detailed command descriptions

stop

Intended to device safe removal.

Syntax:
usr stop <command_parameters>
Possible <command_parameters>:
-d DriveLetter | Stops a device by its DriveLetter. You can specify just a drive letter ("C"), a drive letter and ":" ("C:") as well as a path to a folder or a file on the drive
-n DeviceName | Stops a device by its name (part of a name is also acceptable). "Name" - is those name which is displayed by usr list command
Examples:
"usr stop -d g:" | Stops a device that has drive g:
"usr stop -n Sony" | Stops a device with "Sony" word in the name

forcedstop

Forcibly stops the device. If the device cannot be stopped it closes all files and programs preventing this action and try to to stop the device again
Attention! This command closes all opened files from the device if they exist. So use this command if you are sure that there are no important data to save!
Syntax:
usr forcedstop <command_parameters>
Possible <command_parameters>:
-d DriveLetter | Forcibly stops a device by its DriveLetter. You can specify just a drive letter ("C"), a drive letter and ":" ("C:") as well as a path to a folder or a file on the drive
-n DeviceName | Forcibly stops a device by its name (part of a name is also acceptable). "Name" - is those name which is displayed by usr list command
Examples:
"usr forcedstop -d g:" | Stops a device that has drive g:
"usr forcedstop -n Sony" | Stops a device with "Sony" word in the name

return

Intended to return stopped but not yet unplugged device back.

Syntax:
usr return <command_parameters>
Possible <command_parameters>:
-d DriveLetter | Returns a device by its DriveLetter. You can specify just a drive letter ("C"), a drive letter and ":" ("C:") as well as a path to a folder or a file on the drive
-n DeviceName | Returns a device by its name (part of a name is also acceptable). "Name" - is those name which is displayed by usr list command
Examples:
"usr return -d g:" | Returns a device back that has drive g: back
usr return -n "Sony" | Returns a device back with "Sony" word in its name

forcedreturn

Forcibly returns just stopped device back. If the device cannot be returned it closes all files and programs preventing this action and try to return the device again. Works only for USB 1.x/2.0 ports.
Attention! In order to return the device back the command reboots the USB hub wh ere the device is connected to. Therefore this operation will also cause stoppin g and reactivation of all other neighbor devices connected to the same hub, and files opened by some processes from these neighbor devices will be closed. So us e this command if you are sure that there are no important data to save!
Syntax:
usr forcedreturn <command_parameters>
Possible <command_parameters>:
-d DriveLetter | Forcibly returns a device by its DriveLetter. You can specify just a drive letter ("C"), a drive letter and ":" ("C:") as well as a path to a folder or a file on the drive
-n DeviceName | Forcibly returns a device by its name (part of a name is also acceptable). "Name" - is those name which is displayed by usr list command
Examples:
"usr forcedreturn -d g:" | Forcibly returns a device that has drive g: back
"usr forcedreturn -n Sony" | Forcibly returns a device with word "Sony" in the name back

list

Displays the list of hot-plug devices

Syntax:
usr list [command_parameters]
Possible "command_parameters":
-a | Displays all hot-plug devices (by default)
-s | Displays only devices are allowed to be stopped (those that are displayed in the GUI version's stop menu)
-u | Displays only devices that are prohibited to be stopped (those that are hidden from the the GUI version's stop menu)
When there are no options defined the command displays all hot-plug devices (the same as with option "-a")
Examples:
"usr list" | Displays all hot-plug devices
"usr list -s" | Displays only showed in the stop menu devices

wholocks

Displays the list of processes that prevent a device from being stopped or returned back

If the device is stopped but not yet unplugged the command will return the list of processes locking neighbour devices at USB hub. On why it does this, read more here.
Syntax:
usr wholocks <command_parameters>:
Possible <command_parameters>:
-d DriveLetter | Finds a device by its DriveLetter and displays all processes that are locking it
-n DeviceName | Finds a device by its DeviceName (full or partial) and displays all processes that are locking it
Examples:
"usr wholocks -d g:" | Displays processes, which are locking the device that has drive g:
"usr wholocks -n Sony" | Displays processes that are locking a device with word "Sony" in the name


How to hide Safely Remove Hardware systray icon?

How to hide the systray icon?

Often users complain that the native Safely Remove Hardware icon is not present in the system tray even if there are hot-plug devices connected to the computer. USB Safely Remove saves you from this problem. It replaces the native safe removal icon with its own icon, which by default always stays in the tray. This behavior gives quick access to program functionality and makes working with hot-plug devices more intelligible and predictable.

However you can change this behavior and make the icon disappear when there are no devices visible in the stop menu. This allows you to hide some unnecessary devices from the stop menu and to display the icon only when only neccessary devices are connected to the computer. Moreover unlike Windows' icon, USB Safely Remove will guaranteed display its icon when you connect hot-plug devices.

To activate this behavior, enable "Hide icon when there are no devices to be stopped" in the "Look And Feel" section of the program options.


How to auto run programs on USB device plug or unplug?

How to use program autorun?

Program autorun feature allows to automatically launch any application on the following operations performed with the device:

  • On device plugging
  • Before device stopping
  • After device stopping
  • On device removal
Program autorun feature allows to automatically launch any application on a hot-plug device plugging or before its stopping.
How you may use the program autorun?
  • On device plugging:
    1. For running of your file manager with device drive contents
    2. For running of antivirus to check flash-drive contents
    3. For mounting of a TrueCrypt volume located on external drive
  • Before device stopping
    1. For backing up of a flash-drive data
    2. For dismounting of a TrueCrypt volume located on external drive
  • After device stopping
    1. For running a special program to clear traces of your visit
  • On device removal
    1. For locking of the computer
    2. For logging of the system
Autorun feature allows to setup program launching not only for a specific device but for all hot-plug devices visible by USB Safely Remove. Thus we can distinguish two kinds of autorun settings: so-called "Local" Autorun and "Global" Autorun. Find more information about autorun options and how to set it up below.

How to set up...

"Local" Autorun

Local autorun settings are applied only for a specific device. It means that for example if you add an application to be launched on after device connection, this application will be launched only on connection of this device, not others devices. If a device has several volumes (e.g. card reader), you can setup autorun for each of its volumes separately.
Local program autorun can be set up in the device properties window.

The window consists from the following components:
  1. Drive choosing pane. When you choose a required drive you will see only processes assigned to this drive in the list of processes pane (fig. 2) and you can add, edit or delete these processes.
  2. List of processes to launch pane. By "process to launch" we understand an application or batch file with the specified set of parameters. Processes pane in local autorun shows processes which set up in global autorun as well.
  3. Toolbar pane. Toolbar pane contains buttons for adding, editing, removing and test launching of the processes.
    4. Add one of predefined command line autorun templates. Read more about usage of predefined autorun templates below.
    Add new command line for a process autorun.
    Edit selected process command line.
    Remove selected process from auto launching.
    Make a test run of selected process.
    Make a test run of a selected process group.
  4. Link to global autorun settings. Proceed this link if you want to setup launching of programs not for given device, but for all visible devices in USB Safely Remove. Also you can access global autorun settings by double-clicking to global autorun process line or via main menu -> Options -> "Global Autorun" tab.
  5. Run "After device plugging" processes on Windows startup. If you enable this checkbox all processes specified in "After device plugging" section will be launched on Windows startup as well. This option is useful when your external drive contains portable applications you need to work or you store all required for work information on the external drive.
  6. Wait for the process to finish. This option can be set up in the adding/editing process command line window. If it is checked, USB Safely Remove will wait until this process finishes and only then it runs next process in the section. If this option is unchecked, USB Safely Remove will run this process and immediately proceed to the next process. It is checked by default.
  7. Hide the process while running. option can be set up in the adding/editing process command line window. When it is checked the specified process will be run in a hidden mode, when it is unchecked the process will be run in normal mode and will be seen on the display. By default it is unchecked.
"Global" Autorun

Global autorun settings are applied to all hot-plug devices visible by USB Safely Remove. It means that if you add an application into "Launch process after device connection" it will be launched on connection of any hot-plug device.
Global autorun can be set up in the Options window.
Global autorun setup is similar to setup of processes in local autorun except two additional features:
  1. "Launch the process for drives only" option. This option allows process auto launching only for storage devices and prevents the process from being launched for non-storage devices. I.e. do not run an antivirus program on connection of a mouse or a USB scanner. This option is available in adding\launching process command line window.
  2. Drop-down menu with the list of devices. This menu lets you make a test run of a process in global autorun list with settings of a selected device.
Adding/Editing process command line window

This window aimed to set up an application startup parameters, such as its file-name, command line parameters, whether it is visible on run or not and etc.
The window consists from the following components:
  1. Process command line. In this field you must specify a full path and file name of the application. Path and file name must be wrapped by quotes if there are spaces in the command line. Also this string may contain (and it usually contains) command line parameters which pass to the process parameters of the device which this process will be launched for.
    In order to specify launching an application from the device you can use the following options:
    1) "%DriveLetter%\YourProgram.exe"
    2) "\YourProgram.exe"
  2. Find a program.... This button opens "Open file" dialog window which lets you find needed application.
  3. Run process. If you have already set all the required parameters to launch the process you can make a test run of the process just to check if the process runs correctly and all required for it parameters are passed appropriately.
  4. Command line parameter templates. Parameter templates are special parameters of the process command line which will be replaced by real parameters of the device when the process will be launched for it. Usage of parameter templates instead of actual parameters is required because actual prameters can change. For example you should not specify in the command line real letter of your pen drive because it can change on next insertion (or you can change the letter manually) and an assigned application will be launched with incorrect parameter. So you have to specify %DriveLetter% in the command line instead of e.g. "h:". In the adding\editing process command line window you can see all the parameters and add required to the edited command line with a double mouse click.
    Description of available parameter templates:
    1. %DriveLetter% - the drive letter, including colon (e.g. C:).
    2. %DriveLetterOnly% - just the letter of the drive without colon (e.g. C).
    3. %PnPName% - PNP Name (or Device Instance ID). It is a system-supplied device identification string that uniquely identifies a device in the system. A Pnp name of the device is persistent across system boots.
      Example of PNP name: USB\VID_08EC&PID_0015\0791235011E239B8
    4. %DeviceName% - device name. It is a name device how you can see it in USB Safely Remove. Initially it is an internal name given by a device manufacturer, however you can change it in device properties so a changed name will be passed to the called application as %DeviceName% parameter.
    5. %Label% - volume label. It is just a drive name which you can see and change in Explorer
    6. %PhysicalDriveName% - physical drive name. It is a unique name assigned by a system to a drive (or drive partition) which is persistent across system boots. Can be used for an integration with such programs like TrueCrypt which needs to work directly with disk partitions.
      Example of physical drive name: \Device\Harddisk6\DP(1)0-0+e.
    Autorun can be set up separately for each drive of a multidrive device. For example if you have a device having G:, H:, I:, J: drive letter, you can assign a program to be launched only for G: and H: drive letters. When autorun triggers it will launch applications assigned to drive G: and pass them all parameters of drive G: and then it will launch applications assigned to drive H:. Autorun will not trigger for I: and J: drives.
  5. Process description field. You can define here a short description of the launched process or its performed action. You will see this string in the autorun process list. If you leave this string empty a process command line will be displayed in the list (fig. 1).
  6. Allowing/forbidding process launching. With this option you can deactivate process launching on operations with the device.
  7. Hide process while running. If you enable this checkbox the process will be launched in a hidden mode, i.e. its window will not be displayed.
  8. Wait for the process to finish. If it is checked, USB Safely Remove will wait until this process finishes and only then it runs next process in the section. If this option is unchecked, USB Safely Remove will run this process and immediately proceed to the next process. It is checked by default.
  9. Launch the process for drives only. If this checkbox is enabled the process will be launched only for storage devices (The option is available only in "Global Autorun" settings).
  10. Close the process before device stopping. If this checkbox is enabled the process will be closed before device stopping. The two modes of this feature are available:
    • Close the process. The program sends a closing command ot app. However some apps cannot react to this command or the app is busy at this moment and cannot be closed. In most cases it is recommended to use this way to close the process;
    • Kill the process. The program kills the process forcibly. The app will be closed even if it does some actions and has unsaved data. You should use this method only if there is no risk to lose any important data in the application.
Predefined Program Autorun Templates

For your convenience we have included into USB Safely Remove command lines of many popular applications. This great ability enables you to set up automatic scanning of your external drive with your antivirus program, mounting\dismounting flash drive-based TrueCrypt volume and many other things. To choose one of the predefined autorun templates just click " Add predefined autorun template" button.

Autorun Setup Samples

Notes on creation of command line
  • Path and file name of the launched application must be quoted in case if there are spaces in the path or file name, e.g.: "C:\Program Files\My Program.exe". If there are no spaces you may not use quotes, e.g.: C:\MyProgram.exe. Every parameter must be quoted as well if it contains spaces.
  • If an application is a standard Windows application, such as Explorer or Calculator, you may not specify a ful path to executable file, e.g. you can specify this command lines to launch Explorer: explorer, and to launch calculator: calc.
  • If an application is launched directly from a drive of the device you setup autorun for, you must omit a device drive, e.g.: \MyProgram.exe.

1. Scanning a connected flash drive with NOD32 antivirus

Scanning a flash drive with an antivirus should be done on external drive connection. In this case the given command line have to be added into "After device plugging" section of Global or Local autorun.

In order to create a command line to launch NOD32 you have to:
  1. Specify a path to the antivirus executable file wrapped by quotes, e.g: "C:\Program Files\ESET\nod32.exe"
  2. NOD32 requires the only parameter - path to scan. Path to scan will be drive letter of our device, so you can specify template parameter %DriveLetter%

Finally the command line will look like this:
"C:\Program Files\ESET\nod32.exe" "%DriveLetter%\"

2. Using system commands of Windows

In example below we use system command xcopy (copying of files), using it you can implement a simple data backup on external drive stopping\connecting. If you want to save files from flash drive to your hard drive before device stopping given below command line must be added into "Before device stopping" section of the device autorun process list.

A pattern of command line to use: xcopy /e /h /y "Copy From" "Copy To\"
Using parameters:
  • Parameter "/e" is used to copy all subfolders including empty. If you do not want to copy empty folders, use "/s" instead "/e"
  • Parameter "/h" defines whether system and hidden files will be copied. By default xcopy does not copy system and hidden files.
  • Parameter "/y" prevents asking you to confirm rewriting of the destination file.
If you want to backup all the flash drive before its stopping, you can use "%DriveLetter%" parameter as a source for copying.

Finally the command line will look like this::
xcopy /e /h /y "%DriveLetter%\" "C:\Temp\"

If you need to create more complicated scripts to run files, you can use batch files (.bat or .cmd) or JScript Shell files in which specify several applications to launch.


Hot-plug drive letter management, how to hide empty slots of the card reader?

Drive letter management of hot-plug devices

USB Safely Remove can manage the drive letters of extrenal drives and has the following features:
  • Preventing the system from assigning specified letters to hot-plug drives
  • Mounting hot-plug drives as folders of a fixed drive
  • Changing drive letters directly in the program
  • Fixing a drive letter to a removable drive
  • Fixing a drive letter to several removable drives
  • Hiding empty card reader drives from the system!
Preventing the system from assigning specified letters to hot-plug drives

If you have one or more network drives connected as well as you actively use USB devices, Windows on its restart may mount a USB device to the letter of a network drive or vice versa. In this case the network drive will be unavailable or it can be mounted to another drive letter which is inconvenient, when you have program shortcuts to this drive.

To tell USB Safely Remove what letters must not be assigned to your hot-plug devices, enable "Prohibit to assign the following drive letters to hot-plug devices" option at the "Drive letters" tab of the program Options:

Mounting hot-plug drives as folders of a fixed drive
If you have several external drives, Windows may mount the same drive to different letters on system restart. It might be unuseful, especially if you setup data backup software for this drive. In this case it is convenient to have these drives mounted as folders of your fixed NTFS drive and disable assigning of the letters to the drives. For example you can mount all your external drives to the folder of drive C: - C:\Externals. You can see benefits of this solution from the figure below. In short, all your external drives will have clear fixed names, as well as you can see which drives are connected at the moment ("Backup Drive", "JetFlash 32 GB") and which not.

In order to mount a hot-plug drive as a folder:

  1. Enter to the device properties
  2. Switch to "Drive properties" tab
  3. At the left part of the dialog choose your required drive if there are more than one drive
  4. Enable "Mount drive as a folder" option (see pos. 1) and specify an empty NTFS folder where you want to connect the drive to (you can choose a folder using "..." button). Also you may fully detach the drive letter (see pos. 2).
  5. Press "OK" button to save settings
External drives can be mounted only to empty NTFS drive's folder!
Changing drive letters directly in the program
You can change drive letter of a device or even disable it to hide device drive in Explorer.

In order to change drive letter:

  1. Enter to the device properties
  2. Switch to "Drive properties" tab
  3. At the left part of the dialog choose your required drive if there are more than one drive
  4. In the "Drive letter" dropdown list choose a needed drive letter. "No" item means that a letter will be disabled for this drive, and you will not see it in Explorer.
  5. Press "OK" button to save settings
Fixing a drive letter to a removable drive

Windows may assign different drive letters to a certain device, so you are not sure what drive letter will have your flash drive on this connection. Usually it's a bit annoying but do not prevent you working. The problem will arise when you need to start non-portable applications from the flash drive or you wish to ask a desktop application to store data to your external drive. In this case the device must have a fixed drive letter that isn't changed amongst different connections.

USB Safely Remove starting from version 4.2 resolves that problem. It allows you to fix drive letter to a device. Just open your device properties, switch "Drive properties" tab, choose required drive letter and check "Fix drive letter". Starting from this moment your device will always stay with this drive letter and no one of other devices will occupy this letter even when your device is not connected.

The drive with a fixed letter will have a small lock sign [image] in the front of the drive letter in the device menu. For example:
Fixing a drive letter to several removable drives
For some scenarios of usage it's required to automatically assign the same drive letter to several external drives on the condition that the user will connect only one of the drives at the same time. For example it might be required for backup purposes when you setup the backup program to do backups to a certain path and wish to backup to a different removable drives.

In order to fix a certain drive letter to several drives do the following steps:
  1. Connect a drive that's required a fixed drive letter
  2. Go to the drive drive properties: right click to the drive item in the menu, choose "Drive properties" item
  3. Choose the required drive letter and set "Fix drive letter" checkbox
  4. Safely remove the drive using USB Safely Remove's device menu
  5. Connect another drive you wish to be fixed to the same drive letter
  6. Again go to the drive properties and set the same drive letter (it will have the sign "(fixed)") and the "Fixed drive letter" checkbox
  7. After you click "OK" or "Apply" in the "Drive properties" dialog you will see the dialog box that will ask if you wish to set this drive letter for several drives or for this drive only. Click "Yes" to proceed
  8. Safely remove this drive using USB Safely Remove and repeat the items 4-6 with each of the following drives
If you connect the drives that are fixed to the same drive letter at the same time, the program assigns a fixed letter to one of these drives and will show you the dialog where it allows you to choose the temporary letters for other drives.
Also you can choose a temporary letter in the standard drive properties dialog:
  • The temporary letter will be used only for this connection of the drive. Immediately after another drive that's used fixed drive will be stopped the program change a temporary letter to the fixed one
  • A drive that cannot receive a fixed drive letter or assigned with a temporary letter will have this sign [image] in the front of the drive letter in the device menu. For example:
Hiding empty card reader drives from the system!
Do you have a card reader with several slots? If you said "yes", you would likely use only one memory card at a time, however your card reader creates up to 4 drives in your system. It may be annoying because you are required to spend more time finding the memory card drive among other "empty" card reader drives.

In order to enable an option to hide empty card reader slots:

  1. Go to the program options ( [image] button in the stop menu)
  2. Switch to "Drive Letters" tab and enable option "Hide drive letters when there are no media inserted" there
  3. Press "OK" to save settings


How to move USB Safely Remove settings to another computer?

How to move the settings to another computer

You can save and restore the program settings easily by using program feature to save\load the settings to\from a file.

In order to save settings: open the main program options and click to the "Options" button, then click "Save To File..." in the drop down menu. Then specify a path and a file name in the opened dialog to save settings to it. Use the similar way in order to restore the settings on another computer by using "Load From File..." command in the same drop down menu.

Restore the settings with command line

USB Safely Remove also supports command line parameter /loadsettings that allows you to restore settings from a script / batch file. This might be useful when you need to install the program on many computers and you created a special script / batch file for it.

In order to restore settings from the file write this command line:
USBSafelyRemove.exe /loadsettings <usbsr_settings.opt>
Where <usbsr_settings.opt> is the settings file name you are restoring program options from.
Your license key is also stored in the settings file! So be careful, avoid accessing your settings file by other people. If your license key is found on the Internet we will have to block it. At your wish, you can exclude the license key from the settings file. To do it see the section below.

In order to exclude the license key from the settings file:

The settings file has simple INI file format, which is a plain-text file containing sections and parameters with values. Thus you can delete unnecessary to restore options (e.g. the license key) using a plain text editor.
  • Open the settings file in any plain text editor (e.g. Notepad or PSPad)
  • In the end of the file you will find the following sequence:
    key=Q1IHA...
    Delete this string.
  • Save the edited file


How to use skins?

Introduction...
Everyone knows that every man to his own taste. So the skin supporting is one of the most important things to make the program to look like you prefer. USB Safely Remove supports skin changing for the stopping menu and some other frequently displayed windows.

The current article describes how to use skins and how to create your own unique skin.
How to use skins...
The program installation pack contains several predefined skins, such as "Classic", "Black Velvet" and "Black Contrast" color schemes. See on the screenshot below to know how to change a skin:
Just go to the "Skins" tab of the program options, choose your the you prefer and click OK.

Easy, isn't it? Don't like any of the predefined skins and wish to make your own one?
How to create your own skin...
First of all browse the folder of any predefined skin (e.g. "C:/Program Files/USB Safely Remove/Skins/Black Velvet") to know what files the skin consists from, then do the following:
  1. Create a new folder with the name of a new skin (e.g. "C:/Program Files/USB Safely Remove/Skins/My Own Skin").
  2. Create the text file "colorscheme.ini". This configuration file is used to define color and shape of the interface controls. Find the list of parameters and their description below.
  3. Create all images following specified names using your favorite graphic editor. The easiest way to not miss an image is to copy all images from an existing skin folder to your new skin folder. Then you can edit just copied images in a graphic editor. If an image file won't find by the program it will be gottån from the default skin (it's named Default in the list of skins in the Options and actually is build into the program body so you may not see its folder and files).
    You can also inherite your skin from other skins and create only those images that you wish to redraw in the base skin. See "Skin inheritance" below.
The scheme above is based on old Win7 skin theme, because old schemes have more design elements and thus require more color parameters. The newer skins are simplier, many their parameters are set to the background color or colors of adjacent elements.
Color scheme parameters:
  1. background - color of the window background.
  2. selecteditemtop - the top part of the device item gradient fill.
  3. selecteditembottom - the bottom part of the device item gradient fill.
  4. selectedsubitemtop - the top part of the drive item gradient fill.
  5. selectedsubitembottom - the bottom part of the drive item gradient fill.
  6. menuheadertext - the color of the header caption in the stopping menu and notification window.
  7. menuhighlight - the top part of the header gradient fill.
  8. menushady - the bottom part of the header gradient fill.
  9. menushadow - the color of the header underline.
  10. link - the reference link color in normal state. (is not used, reserved)
  11. linkincontrol - the reference link color in mouse control state. (is not used, reserved)
  12. itemtext - the color of the device(drive) name (the device item caption).
  13. hotkeytext - the color of the hot key text.
  14. selecteditemframe - the color of the device item frame.
  15. readyforremoving - the "Ready for safe removal" text color.
  16. textshadow - the color of header caption shadow in the stopping menu and the notification window.
  17. windowlefttopedge - a top and left hand outside line color of the frame around window.
  18. windowrightbottomedge - a bottom and right hand outside line color of the frame around window.
  19. windowlefttopinneredge - a top and left hand inside line color of the frame around window.
  20. windowrightbottominneredge - a bottom and right hand inside line color of the frame around window.
  21. windowfillframe - the color of the the frame around window fill.
  22. windowlefttopinneredge2 - the color of the line inside the frame around window at the top and left hand side.
  23. windowrightbottominneredge2 - the color of the line inside the frame around window at the bottom and right hand.
  24. windowhighlight - the color of a highlighted gradient fill of the frame around window.
  25. emptymenutext - the color of the text shown when there are no visible connected devices.
  26. infofill - the filling color of the stopping menu information panel.
  27. infoframe - the color of the the stopping menu information panel frame.
  28. ballooncaptiontext - the color of the caption in the notification window.
  29. balloonbodytext - the color of the device(drive) name in the notification window.
  30. balloondrivelettertext - the color of the drive letter list text in the notification window.
  31. underlinedlink - the color of the underlined reference link in the normal state.
  32. underlinedlinkincontrol - the color of the underlined reference link in hovered state (when it's mouse hovered)
Boolean parameter value list:
Each parameter should be "0"(false) or "1"(true)
  1. enablewindowframe - defines whether a window needs to have an around frame.
  2. enableitemchamferframe - defines whether items and sub-items of the stopping menu need to have a frame with chamfer corners.
  3. simplewindowframe - defines whether the menu frame will be simple (as in Windows 8) or rounded (as in Windows 7 aero)

Use other color parameters instead of color values

The program supports assigning to the color paramer the name of another parameter. E.g.
background=#262829 ... scrollbarfill=background
will set "scrollbarfill" color parameter value to the value of "background" parameter, ie #262829

Skin inheritance

You can inherite your own skin from a predefined one by specifying InheritImagesFrom the following parameter in the colorscheme.ini of your skin. Using this technique you can set only some color parameters or define specific icons in your skin that override parent skin's color parameters or icon, leaving all other color parameters and icons of the parent intact. For example:
InheritImagesFrom=Win10 Dark MenuHeaderText=background
will inherite your skin from the standard Win10 Dark and make program's name in the header to draw in the color of background. Which hides the program name title. Allows you to inherite your skin from Win10 Dark.

Skin images

The skin also consists of the images of buttons and state icons. You can find the full list of such icons in such skins as: Win8ModernUI, Win10 Dark etc. Below are examples of such images:
Close button in passive state (when mouse is not hovering over it)
Close button in active state (when mouse is hovering over it)
Options button in passive state
Options button in active state
Registration button in passive state
Registration button in active state
"Stop All" button in passive state
"Stop All" button in active state
Button for interrupting "Stop All" operation in passive state
Button for interrupting "Stop All" operation in active state
"Scan for hardware changes" button in passive state
"Scan for hardware changes" button in active state
Drive letter image
Hot key image

How to set color: The "colorscheme.ini" file mainly consists from the lines like the following: "subitemtext=#E6E969". The right part of the line is a color value assembled from R-G-B components in the hex format. Thus #E6E969 defines RGB color value with the following values of its parts: Red=E6(230), Green=E9(233), Blue=69(105). You can get this color from any paint editor, e.g. see color picker of Paint.NET:
Note, the same format of the color is used in html markup and css styles.


USB Safely Remove, how to automate installation of the program?

How to automate the installation of USB Safely Remove?

If you need to install USB Safely Remove on to many computers of your company we recommend you using auto-installation mode of the installer.
You can create the package for auto-installation manually, using the step-by-step instruction below, or with this small free tool: usr_make_auto_install created by one of our users - Florian Tenhaken (florian.tenhaken [at] gmx [dot] de).
Reference for installer command line parameters
The program installation file (usbsafelyremovesetup.exe) supports the following command line parameters:
/SILENT, /VERYSILENT
Makes setup process to be silent or very silent. When setup is silent the wizard and the background window are not displayed but the installation progress window is displayed. When a setup is very silent the installation progress window is not displayed.
/LOADINF="filename"
Instructs installator to load the installation settings from the specified file after having checked the command line. This file can be prepared using the '/SAVEINF=' command as explained below.
Don't forget to use quotes if the filename contains spaces.
/SAVEINF="filename"
Instructs installator to save installation settings to the specified file.
Don't forget to use quotes if the filename contains spaces.
Step-by-step instruction on creating of auto-installation scripts
  1. Make the installer configuration - install USB Safely Remove to your own computer calling installer with this command line:
    usbsafelyremovesetup.exe /SAVEINF="usr_setup_cfg.ini"
    Calling the installer this way will save all installation options that you changed during the installation to "usr_setup_cfg.ini" file.
  2. Make the program options and the license key preset - run program, change settings to preferable and save them to a file (read more).
  3. Make the installation package - place the setup file (usbsafelyremovesetup.exe), setup config file (usr_setup_cfg.ini) and program options file (e.g. usbsr_settings.opt) to a separated folder. Then create here a batch file that will run an installation:
    usr_auto_install.cmd
    :: #############################################
    :: USB Safely Remove auto installer
    :: #############################################

    usbsafelyremovesetup.exe /silent /LOADINF="usr_setup_cfg.ini"
    %ProgramFiles%/USB Safely Remove/USBSafelyRemove.exe /loadsettings usbsr_settings.opt
    %ProgramFiles%/USB Safely Remove/USBSafelyRemove.exe

    :: Note!
    :: Replace path to the program (%ProgramFiles%\USB Safely Remove/USBSafelyRemove.exe)
    :: with the actual path if you changed it
  4. That's all. Now you can write these files to a CD or USB Stick, or deploy them to a remote computer to install the program without user's participation. In order to install the program you need to execute only usr_auto_install.cmd batch-file!
Additional information
  1. Find out more about commercial and enterprise licenses


USB Safely Remove, how to install the program for all users?

How to install USB Safely Remove for all users?

By default USB Safely Remove installs only for currently active user account. It's good when you have only one user account on the computer or share the computer with other people who do not need the program.

However if you work under several user accounts or need to install USB Safely Remove in an organization it will be more convenient if the program installs for all users on the computer so that you do not need to enter the license key several times and do not need to setup program autostart with Windows.

In order to install the program for all users just choose the option "Install for all users on this computer" during the program installation.

This option shares the license key and makes the program to be run on Windows startup (if this option checked in the program) under all user accounts of the computer. It doesn't share any other settings of USB Safely Remove among user accounts.


How to disable a device and what's device disabling?

Device disabling is an ability to permanently stop a device. It's the same as preparing to safe removal but the device will remain disabled even if you reboot the PC or eject and connect the device again. It's a cool feature since it allow you to do many things:
  • Prevent malware to access your backup drive
  • Save power when you do not use your device (see also Power off USB devices on stopping)
  • Temporarily get currently unneed drive out of sight

How to disable a device?

Just right click to the device and choose the "Disable device" menu item:

If the device is locked by a process the program will show you the "Unable to stop" dialog and allows to unlock and disable it.

When you need to activate the device just click it and it will be returned to the system:


How to get reminded about forgotten devices on logoff or shutdown?

If you forget to take out a device in the computer before you go out the program can remind you about it when you shutdown or log off the system.

In order to enable this feature just go to the Options -> Notifications tab and enable "Notify about connected devices on system exit".

How it works

  1. When you are shutting down the system or logging off Windows the program checks if there are devices connected (only visible on the menu devices count). If there are such ones the program stops Windows shutdown or logoff and the system displays you this message:
  2. If you press Cancel you will see this message from the program:
  3. Success! You have now got a reminder and don't forget your devices in the computer. Then you can do any of the following:
    • If it's OK that devices are connected or you plan to disconnect them after the shutdown just press "Allow shutdown" button in the dialog above and repeat your exit action
    • Disconnect your devices (check they are stopped before to avoid loosing your data) and repeat your system exit action.


How to enter the license key for USB Safely Remove?

Lost your license key, or haven't received it?
Please proceed to the restore license key form.

Check the version!
Before entering the license key please, check you have the latest version installed: Right click to the USB Safely Remove system tray icon, choose "Help" -> "About program..." menu item, find the version number here and compare it to the number on our web-site. If you have an earlier version, download the latest one from the program download page

Where do I find the license key?

The license key email should be sent to you immediatelly after you purchased the registration. If you cannot find it in your inbox, check your spam folder, perhaps it got there. If you cannot find it anywhere try using our restore license key form or feel free to contact us.
After you purchased the license, you will receive the license key email with the subject that says something like this: "USB Safely Remove Personal License Key". In the email you will find the license key - a character sequence between the lines "License Key Start" and "License Key End". Copy this sequence to the clipboard so that later you can paste it to the registration window.
It's not recommended to type the license key into the program manually, since it so is easy to made a typo. Just select it and use Ctrl+C key combination to copy it to the clipboard.

How to enter the key

  1. Find USB Safely Remove's icon in the system tray and left-click to it (or just hover mouse over the icon for some time). Run Application
  2. In the displayed menu click the "key" ( Key Button) button and select the "Enter Licence Key" (or "Change key") item. Run Application
  3. Copy and Paste your registration code from the license email and press 'OK'. Copy license key data
  4. The program will tell you that everything is OK. If you see an error message feel free to contact us. Success
  5. Right click to the program icon in the system tray and choose "Help" -> "About program". In the displayed dialog check your registration details Check your name


Upgrade

If you are a registered user of USB Safely Remove you may upgrade at no charge to any newer releases within upgrade subscription period of your purchased license. Your license upgrade subscription period is specified in the license key email and on the About dialog (Menu -> Help -> "About USB Safely Remove..."). After your upgrade subscription is expired you can extend your subscription here (that costs a fraction of the initial license price).

In order to upgrade to a newer version just download it from our web-site (see downloads section) and install. You can simply install the newest version over the older one, the installer will do all the upgrade magic for you.

If you need to reinstall USB Safely Remove or Windows and want then to restore your settings read more here.

  • If you lost your license key try to restore it using the restore license form.
  • If for any reason your registration code becomes invalid or you cannot restore it using the restore form just send a message from the support form together with the details of your previous registration. You will receive a new code via e-mail at no charge as soon as we have validated your old registration data.


USB Safely Remove, how to report a bug or suggest an idea?

How to report a bug or suggest an idea?

Report a bug
If the program behaves incorrectly on your computer or reports about errors or simply does not do the required things, we would appreciate it if you report this problem to us.

The easiest way to report a bug is to send us a bug-report from the program (Right click to the systray icon -> Help -> Report a bug...). In the displayed window enter the problem description (as much detail as possible), your e-mail (optional) and nick-name at our forum (if you are registered there). The program will auto collect all required information about your system and send it with your report to our server.

You must have an internet connection to send this way. Also, if you are sitting behind a proxy server you have to specify proxy settings at the program options ("Notifications" tab)

If you do not have an internet connection on a computer with USB Safely Remove, you can write us an e-mail to support@safelyremove.com. Please don't forget to attach the program log-file usbsafelyremove.log.txt to the e-mail. The most simplest way to get it: run USB Safely Remove, go to "About program" dialog, click to "Open the Log file directory".

Suggest an idea
We are open to any new ideas regarding program development as well as your notes on the program. If you have an idea, wish or note, don't hesitate to write us to support@safelyremove.com.


Lost Key?

If for any reason your registration code becomes invalid or lost, we will restore it for you absolutely for free. In order to do it please proceed to the restore license key form.


Contacts

Please don't hesitate to send your questions and suggestions regarding USB Safely Remove to e-mail:

support@safelyremove.com

General questions are welcome to e-mail:

info@safelyremove.com

The latest version of USB Safely Remove can be found here:

https://safelyremove.com