USB Disk Eject 1.2 Beta 4 – Last Beta Before Release (Hopefully)

[Edit – Beta 5 is now released – see here]

After a huge amount of work, I’m now releasing Beta 4 of USB Disk Ejector. There are many changes since the last beta and barring any show-stopping bugs this version should become the final release.

I would be extremely grateful if people could test this and report their experiences in the comments below.

Please read this first:

This beta is considered fully-functional – i.e. everything should work. There have been many changes since the last beta, but here are the main ones:

  • Command line switches have been fixed and changed. Some have been added and some removed. Available command line switches are:
  • /? – shows all command line switches
  • /NOSAVE – Any changes made to options are not saved, no cfg file will be created. But if theres USB_Disk_Eject.cfg in the path then options will be read from it. Useful in situations where the app is running from a read only location and wont be able to save its changes to a cfg file, or if you’re giving people controlled access to the app and don’t want them changing any options.
  • /REMOVETHIS – Ejects the drive that the program is running from. Eg if the program is run from a usb stick on drive G then drive G would be ejected.
  • /REMOVELABEL – Ejects the drive with the specified label. Partial label matching is possible if a wildcard (*) is used. Eg /REMOVELABEL *BEN would eject a drive that had Ben in its label (eg Ben’s Pen Drive).
  • /REMOVELETTER – Ejects the drive with the specified drive letter.
  • /REMOVEMOUNTPOINT – Ejects the drive with the specified mountpoint.
  • /REMOVENAME – Ejects the drive with the specified name. Partial name matching is possible if a wildcard (*) is used. Eg /REMOVENAME *SANDISK would eject a drive that had Sandisk in its name.
  • Rewritten options dialog – should be much clearer.
  • Docking option – to keep app snapped to a corner of the screen.
  • Improved communication – the app uses balloon hints to communicate with the user by default. However if balloonhints arent available it will use a messagebox instead – the messagebox will automatically close after 5 seconds.
  • Audio notification option – to allow sounds indicating a successful or failed ejection.
  • Hotkeys now work correctly and more hotkey actions such as ejecting by drive label and mountpoint are available.

Things that wont work in this beta:

Card reader support is disabled. Ejecting a card reader will eject the device not the card in this beta. I’ll be looking into card reader support again once I’ve got the next stable release done.

Windows 2000 support may be broken. I’ve tried my best to ensure that the new features support Windows 2000 but this may not be the case. I don’t have 2000 to be able to test this.

[Edit] I’ve updated the download with a new build that wont show most card readers. If you downloaded the app before this message appeared please redownload it.

[Edit – Beta 5 is now released – see here]

74 thoughts on “USB Disk Eject 1.2 Beta 4 – Last Beta Before Release (Hopefully)”

  1. i use beta2 for a long time, its rather stable and smart but begining from 3rd beta there is strange problem…
    i have card reader (empty slots, no letters in mycomputer), see screenshot to check the behaviour of beta2 and beta4:
    http://i.imgur.com/EC9mP.jpg
    beta2 tells “no disks” and thats right but beta4…

  2. As the post says, card reader support is completely disabled in this version. This means that card reader devices aren’t treated differently, so aren’t hidden.

    I’ll be fixing this once I’ve got the next stable release done, but for now I’ve concentrated on getting the core features right.

    Perhaps I could just detect and hide card readers for the stable release. That might be better.

    Thanks for testing!

  3. i’m actually using beta 4 and it works great, but i wanna ask you to add the option of replace the safely remove hardware icon in the taskbar with the USB Disk Eject one.

    Thank you!

  4. What do you recommend for times when this fails to eject a drive, ie “In use” when the drive doesn’t seem to actually be in use?

    Could you include some hint as to what process is using it?

    Thanks!!

  5. Bryan:It turns out that its actually really difficult to find out what processes have open handles to a drive, so at the moment I cant add that feature.

  6. Hi,
    I have tried to run this in Windows 7 and it detects my Corsair USB device but when I click to remove it it reports the device in use and asks me to close any programs trhat might be using it try again. Yet nothing is using it. Thanks

  7. Ben,

    I’ve had this happen a few times now, so know I didn’t imagine it.

    Running on 64 bit W7, multiple users (standard, 1 admin) and have it running from startup folder. The program is always minimized in the tray, but sometimes on starup there’s a second window in addition to the tray icon. This has happened both with/without a USB connected.

    PS – marl
    right click in the task bar, look under properties –> notification area

  8. was wondering if you’ll accept a small feature request.
    – Esc key to hide the window

    thanks and awesome work! was waiting for the hotkey implementation for months!

  9. Good updates.. have you planned the release date?
    Is there a reason to group About, Options and Exit under a menu instead of keep them directly on the status bar? (I think you could place About and Options button there and remove the Exit one, that is a duplicate of the window close button)

    Thanks!

  10. Under Win7 system tray icons are hidden by default so its better to have a way to get to the options directly from the app. Regarding exit – one of the options allows pressing the window close button to minimise the app to the tray. So an alternate exit function is required.

  11. Testing this release with Windows XP Home SP3, running under standard user, I noticed that most of the times when I try to eject a usb the window will simply freeze and an end process will be required to terminate the hung app. What’s weird is that even though the window appears frozen, the systray icon appears responsive with right click menus, but this does no good to end the app nor follow-thru with the eject. This is tested using default options provided with this release. Prior to this I have been using the 1.2beta2 release with no such problem whatsoever.

    Can you provide a hint as to what may be causing this? I read that Windows 2000 may be broken, and seeing that Windows XP is built around the Windows 2000 codebase and for the fact that development is done under the new Windows 7 codebase, can this provide any hint? The system is up-to-date with windows xp march 2010 updates.

  12. Xavier – thanks for that – that’s the kind of feedback that I need. There are a few possibilities for this and I need to narrow it down.

    First, try this updated build with the latest fixes:
    https://quickandeasysoftware.net/temp/USBDiskEject_Beta4_MinimiseFix.exe

    Second – try ejecting just from the system tray menu and see if it still occurs.

    Third – If its still occurring then something else is going on. I use it myself on an xp machine at work as a limited user, with no issues so I’ll need to try and narrow it down some more. Please try the first 2 ideas and let me know what happens.

  13. Thanks for the ideas. Here’s an update:

    First – I tried using the updated build and ejecting normally, still ended up with the same issue, window is frozen but systray is responsive although it does nothing when invoking commands from the menu.

    Second – Rerun the program then tried ejecting from the systray menu but still ended up a frozen app, it does nothing.

    I guess it was only by chance that I got it to work as expected, but then most of the times it would just freeze when I tried to eject a usb from it. Normal ejecting function still occurs via original systray icon.

  14. So I did additional tests and here they go.

    I tried reverting back to beta2 that worked for me, and now it wouldn’t even work anymore. Also, I tried ejecting by running the program off the usb but all it did was close the program and not eject, so I had to end process the hung app.

    Now I plugged my usb onto another xp system and tried to run the program again and it worked as expected, as well as the last beta build.

    It would seem that my system is preventing the function of the program. I don’t have any HIPS running, also the same antivirus I’m using is also running on the other system with the same configuration, so is there any other place I could take a look into that might lead to a solution to this issue?

  15. Further updates:

    I did a reinstall of the OS from scratch, hopefully to flush out all inconsistencies that may have build up. And I was happy to see the program work well again, even with the older betas. Though at one time I did encounter the hung up symptom when I tried doing eject, but after that I was unable to reproduce said issue again.

    Great program, great convenience, and thank you.

  16. Xavier: Sorry for the delay in replying. Thanks for keeping trying to solve the problem, I really appreciate it.

    Its very odd that it only hung when ejecting as the same ‘drive scanning’ procedure is run both when the app is loaded and after a drive is ejected.

    Narrowing it down then, it could have been one of three things:
    1- The closing explorer windows procedure – this closes any windows belonging to the drive before ejection,
    2 – The CloseRunningApps procedure – this attempts to close any apps that have been launched FROM the drive itself.
    3 – The Windows api ejection. After it tells Windows to eject a drive the app waits for a success/fail message and it could be that one never arrived from Windows.

    All three seem pretty unlikely but they are the likely candidates. Anyway I’m glad its all working now, thanks for testing it 🙂

  17. Thanks for providing a little under-the-hood overview. I’m betting that the third is the culprit that I’m experiencing with the previous problem, as I don’t activate the option to close apps run from the usb drive and I don’t usually run apps off it.

  18. Running Win7 32-bit, the app crashes when I try to eject my USB thumb drive. Works fine in version 1.1.2. Here’s the Win7 “Problem Signature”:

    Problem signature:
    Problem Event Name: APPCRASH
    Application Name: USB_Disk_Eject.exe
    Application Version: 1.2.0.4
    Application Timestamp: 4b9c2f15
    Fault Module Name: ntdll.dll
    Fault Module Version: 6.1.7600.16385
    Fault Module Timestamp: 4a5bdadb
    Exception Code: c0000005
    Exception Offset: 00028c72
    OS Version: 6.1.7600.2.0.0.256.1
    Locale ID: 1033
    Additional Information 1: e8ad
    Additional Information 2: e8adce1c2b9e7be834b4063ac3c53863
    Additional Information 3: e8ad
    Additional Information 4: e8adce1c2b9e7be834b4063ac3c53863

    Read our privacy statement online:
    http://go.microsoft.com/fwlink/?linkid=104288&clcid=0x0409

    If the online privacy statement is not available, please read our privacy statement offline:
    C:\Windows\system32\en-US\erofflps.txt

  19. Hello,

    I think I will install it on all the PCs of my school, for students. Just a little problem. Language.
    In a future version, could you implement a way to change language ? just like a file with all text sentence, that everyone could translate.

    Thanks for your great job !

  20. Hi,

    Found your great tool. Thanks.
    I wanted to try the latest beta, but when I double click to eject USB drive the program hangs. And Windows saying it’s not responding. I have to kill the app, but the drive is not ejected. It works with the latest official release. Any ideas?

    Thank

  21. Been using the Beta 4 USB Disk Ejector on Win XP SP3 without problems!! A fantastic little app. Much better than hunting around for the “Safely Remove Hardware” icon on my taskbar. Can I ask that in the positioning setting you set a default of “Centre” as well as your current docking options? Great work and looking forward to the next release. Thnx

  22. I’ve used earlier versions, but this version i’ve been trying for a couple of weeks and i’ve had no problems yet. I’m waiting for the final release and then i’m definitely going to make a donation.

    Oh, by the way, i’m on Windows 7 HP.

    I’ve written a couple of ‘apps’ myself so i appreciate when software authors deserve some kind of payment.

    Can’t wait.

  23. I have tried using the /SILENT line command but I am still getting the standard windows message about the disk was succesfully removed. Under 1.1.2 it doesn’t give that pop-up

  24. Thank-you for USB Disk Eject 1.12 — effective and simple. User specified USB device names are included (in bold type) as an identifier, simplifying selection of the USB device.

    I am looking forward to version 1.2.

  25. Hello,

    the tool is very useful. It would be better much if it could force unmount any usb drive. Can it force dismount usb drive which is in use by any (hidden) task? I think, that would be the point of the app. There are several cases when windows thinks usb drive is in use. Or if it so, if you have saved all your data, it’s not a matter to force the dismount.

    Frank

  26. I downloaded the file it didn’t find my usb flash key drive. I have Win XP Pro SP3. States that there’s no drive and shows in gray 🙁 this smiley. I hope that you successfully correct this.
    Moshe

  27. Hi,
    Is this program/build compatible with Win server 2003 32-bit?
    I tried to use it (GUI and command line) and I always got the message that the drive can’t be ejected because it is still in use.
    From the normal Win Icon in the tray it is possible to remove it without any problem.
    What is the problem?
    Thanks

  28. Hi Ben,
    You have a lovely program, just wish it did what it says it would do. (Using your latest Beta 4)
    I like the “ask the program to close” and “force the program to close” function. That’s what’s not working for me…

    Hope I’m getting this right. USB Disk Ejector is supposed to close all opened programs opened from the USB (Including external hard disks i hope) and eject the device right? Similar to the “EjectUSB” app?

    Well if this is so, it’s unfortunately not doing it. The USB disk ejector is still prompting me to close all the opened programs. (Using a windows 7 x64 OS) Any reason why?

    If your app doesn’t have this it’s about the same as window’s default way of ejecting the USB right?

    Just a suggestion: I have a USB printer attached to the CPU as well. Is there a way we could exclude the printer USB?

    Therefore when we just press the CRTL key or Alt key and double click the icon it would 1)automatically stop all programs from the external hard drive and 2) eject the USB – without the pop-up, which shows all the USBs plugged into the machine, from coming up? This would be a cool option to speed up things.

  29. Have been testing on all versions of Windows 7, x86 Desktops, Laptops, and Netbooks…. as best on all my systems it works perfect….. does see my USB Printer, np. It even closes my External USB HDD that is being used…. tested with notepad on documents still open.
    Closes…. Love this

  30. I’ve downloaded USB Disk Ejector and it works fine. However, every time I restart the computer, the software icon is gone from my taskbar, and I can’t call up the software by hitting the assigned key (I chose F1 in “Settings”). I have to locate the installation zip file on my desktop and unzip and reinstall the software again. Is there a way to permanently install USB Disk Ejector, so that I can always locate it on the taskbar or on a shortcut icon on the desktop, not having to reinstall it every time? OS is Windows XP Home SP3.

  31. Miguel:
    Its designed to be a portable app, so its not installed. If you want it to load when windows does then make a shortcut to it in the startup folder (start > programs > startup).

  32. Nice…love this software much, i use on xp @ office & works fine, it cut the power of my usb HDD. But when try on win7 x64 it still don’t cut the power of. Keep waiting for the update ….

  33. I made a shortcut in the Startup folder, but all that does when I restart the computer and load Windows is open a folder with the zip file, which I need to double click in order to launch the program. By then, all of the settings established in the previous session are gone. Especially annoying is the loss of the Hotkeys configuration.

    (a) Is there a way to start the software more “directly” when restarting Windows?
    (b) Even if there isn’t, and I have to unzip the software on every new Windows session, is there a way for it to remember the settings?

  34. I’ve used 1.1.2 so far – I liked it
    but 1.2.beta4 – I love it so far (on win7 32bit)
    1) close program after eject – perfect!
    2) allow ONLY one instance – perfect!
    3) no disk found-icon much better now! (didn’t like the face)
    4) save config-file in directory (japadapadoo: no reg-entry, fully portable)

  35. Good program. But for years, I can seem to find a all-in-one program to replace the default Windows one. Since Firewire is added, possible to add SCSI and SATA/ESATA device class in the future as well?

  36. I posted in the Beta 2 Thread on January 11th, 2011 at 12:29 pm that I was only able to use v1.12 on one of my XP machines and you said you were going to think about it.

    After various troubleshooting attempts, this appears to be happening as a result of my NETGEAR Wireless USB Adapter (WG111v3 Version 1.1.0) which is needed for WiFi to work on my desktop. The reason I think this is that if I use Task Manager to terminate the process, all the other beta’s work fine afterwards. I don’t know if anything can be done to resolve this but I thought I should give you an update as to what I think is the problem in case others encounter the same thing.

  37. Russ:
    Thanks for that, I also have that same Netgear adaptor so hopefully I should be able to at least try and reproduce the problem.

    I’ve been snowed under with work but I hope to start looking at bugs again soon.

  38. Hangs ejecting on XP that has ghost 14 running in the tray. somehow it creates open links to system folder on each drive. I have to use unlocker 1.86 to close all open files before the eject will work.

    so really it needs to have a option to close all open filers leftover even from a explorer copy crash etc before trying to eject.

    also would be nice to have one eject for all drives on a certain hub. instead of individually ejecting 8 or more drive letters for a hub connected perhaps the gui to have hubs in a separate list above the drives letters scroll window

    it should be possible to know which drive is on which hub and allow dismounting all drives on same hub or cascanding hubs..

    i have a 4 port hub I connect a 7 port hub with 7 drives and another hub on that one that connects 2 more drives.. so would be a good way to disconnect all 8 drives at once from the gui if makes sense?

  39. Does this application work on windows 2008 r2 ?
    When using the /removelabel or /removename switches with a wildcard I keep getting “corresponding drive name could not be found”

  40. Just found your program. It is going to save hours of training for very non-technical folks who will have to be using usb flash drives regularly.
    Thanks.

  41. Great program, very useful !
    Is this program compatible with USB 3 ?
    I don’t like save config-file in desktop, if USB disk ejector is there
    Thanks

  42. Danilo:
    It should be yes.
    If you dont want to config file on the desktop then store the program somewhere else and just have a shortcut to it on your desktop

  43. I run Windows 2000. I just found your site and your utilities. The beta4 version seems to do
    absolutely nothing on my machine. Even executing it with a /? operand yields nothing.

    Is there anything I can do to help you? If the beta3 version works on Win2K, is it still available?

  44. Nice software !
    just only one problem, when windows starts the program doesn’t minimize correctly, it stays in the lower left corner and crashes sometimes.

    Good work ! regards

  45. @Arthur:
    Beta 4 moved to using mountpoints rather than drive letters and so meant using new api calls – one or two of these (eg GetVolumePathNamesForVolumeNameW) sadly aren’t available on windows 2000.
    I’ve tried to add workarounds, but I didnt finish, so on win2k it now doesnt crash – but doesnt do anything either. Its on the todo list but its not a priorty.

    Beta 3 is here but you might have to go back to beta 2 or the last stable release for full win2k compatibility.

  46. @Jason:
    Thanks for the feedback. More info would be helpful though – what version of windows? under what circumstances does it crash? Have you changed any of the default options?

  47. Using beta 4 and love it. One small issue. Pressing the ENTER key to eject instead of double-clicking doesn’t seem to work.

  48. The program doesn’t force close all programs running from the thumb drive, even though I selected the option to force programs to close.

    Win 7, 32 bit running Beta 4 R2 of the software.

    Love the software, by the way.

  49. thanks for sharing this super soft, i am testing this beta and god i really miss the face …

    thank again and again and again

  50. Nice wee program. However, I copied it onto a USB stick (drive letter N) then from the command prompt (current directory being the C drive) issued the command:

    n:\USBDiskEject_Beta5.exe /REMOVETHIS

    It popped up a bubble saying the drive was in use and could not be stopped.

    Then I put the exe file into C: and ran it from there:

    c:\USBDiskEject_Beta5.exe /REMOVELETTER N

    It happily ejected it. So it would seem the “/REMOVETHIS” option doesn’t work.

    HTH

    Brian

  51. I’ve found out what was causing it and its bizarre.
    When you do /REMOVETHIS internally the program does this:

    StartInMobileMode(‘/NOSAVE ‘ + ‘/REMOVEMOUNTPOINT ‘ + FindMountPoint( ExtractFilePath(Application.ExeName) ) );

    So it finds the mountpoint for the drive that its running from and then restarts in Mobile Mode with the switches to eject that mountpoint.

    The problem stems from this ExtractFilePath(Application.ExeName)). For whatever reason, this copies the case from the command line, so if you do “n:\UsbDiskEject /REMOVETHIS” the extracted path will have “n” in lower case, so it tries to eventually remove the mountpoint “n:\” – which fails.

    If you capitalise the drive letter and do “N:\UsbDiskEject /REMOVETHIS – it works fine.

    I’ve now fixed this so the drive always gets capitalised – thank you for reporting the problem!

Comments are closed.