HOWTO: Update Opus without rebooting

I applogize if this is the wrong section, not sure where to post this.
I have been using this method for quite some time as I hate rebooting Windows just to install a new version of an application.

1) Close Opus completely by right clicking on the tray icon and clicking Exit.
2) Run the installer for the next version of DOpus.
3) Next, use pendmoves from SysInternals to see which files have been updated. I put it in my path so I simply do Run - cmd - pendmoves
You should get something like this back:

[code]
Source: C:\Program Files\GPSoftware\Directory Opus\dopua236.rra
Target: C:\Program Files\GPSoftware\Directory Opus\dopuslib.dll

Source: C:\Program Files\GPSoftware\Directory Opus\dopue8b0.rra
Target: C:\Program Files\GPSoftware\Directory Opus\dopushlp.dll[/code]

4) Go to each of the Target files (NOT the .rra) listed and run Unlocker (http://ccollomb.free.fr/unlocker/) on each file. Select Delete (or move if you are paranoid) and then click Unlock All. Optionally you can just do dopuslib.dll, as this usually works, but I can't guarantee it will be 100% stable. If you do all of them it will be identical to a reboot.

5) Now run the installer again. It will repopulate the files you deleted in the previous step. Run Directory Opus, and you will see it is up to date! If you get an error message, run Step 4 on the file mentioned and then run the installer again. Worst case, just restart.

This method is quite safe, if you mess up with it the only thing you have to do is run the installer once and then restart. Also, it seems complex, but once you get the hang of it it is quite easy to perform.

Closing other programs' file handles like that is not something I would consider safe or sensible to do routinely. It's a last resort and could cause those programs to crash.

Try simply renaming the DLL files instead of unlocking them. That will allow the new versions to be written while the programs which are using the old DLLs can keep them. Next time you reboot you can delete the old DLLs.

The only things you can't rename out of the way like this are:
[ul][li]dopus.exe -- but that won't be in use if you exit Opus;[/li]
[li]dopusrt.exe -- which, if it is running, can be closed via dopusrt.exe /dblclk=off (It will only be running if Desktop Double-Click is enabled)[/li][/ul]

Good point Leo. I would edit my post, but I cannot (much to my annoyance).

Don't get me wrong. I find unnecessary, forced reboots as annoying as the next guy, but come on. If you are objective, you have to admit that rebooting is a lot simpler and quicker than going through all the steps you outline. :open_mouth: :smiley:

Unfortunately it was even more annoying when people could edit their posts.

Actually its much quicker than restarting for me. I already know what files need to be changed so I shut down DO, run explorer, unlocker the right files and run the installer. Whole process takes ~30 seconds.

Well, there you go. :stuck_out_tongue: It only takes me ~20 seconds to reboot and get back to the desktop (5 seconds to shutdown, and 15 seconds to boot). :laughing: