Restart after update

I love this software, but forcing me to restart OS to update is really annoying.

I don't use any integration like replace explorer, ftp client, image viewer, compressed files association, etc.. nothing. It is like a standalone/portable software.

Then, I beg of please make it not necessary to restart the OS on each update.

Even other software much more invasive, injecting it's dll in all process like the Actual Window Manager, in recent versions is able to uptade without need to restart the system.

Thank you!

This is due to what Leo explains in this post here:

So, basically this is because of some dlls, which have to be unloaded from other programs using them.

Maybe you could try, as the post suggests, to just log out & log in back again , instead of rebooting, if that works for you.

The installer will only ask you to reboot if it was unable to replace some of the files. So if it asks you to reboot, a file must have been in use. (For example, the first time you install Opus, you don't have to reboot. None of the files were in use then, because they didn't exist and weren't loaded by anything else.)

If you're really sure you are not using any features of Opus which cause any of its shell extensions or other DLLs to be loaded into any other processes, then exiting Opus before running the installer should be enough to let the installer do what it needs to do without requesting a reboot. I suspect you are wrong about being sure of that, though. :slight_smile:

I didn't mean to suggest that in that post. Log out & back in will not work. You need to reboot. As I said in the post: "The copy-on-reboot mechanism in Windows is tied to reboot and not login."

I didn't mean to suggest that in that post. Log out & back in will not work. You need to reboot. As I said in the post: "The copy-on-reboot mechanism in Windows is tied to reboot and not login."[/quote]

Yeah, sorry, that's what i found out later, although i wasn't sure, if it was only some language dll problem.

@abr & leo
I did read the link, but still wonder what shell extension it is, DO installs?

Is it possible to avoid the restart if one doesn't make use of explorer replacement mode or something? Or maybe I can just kill/restart explorer.exe? o)

Slighty OT:
Even when rebooting, the installer claims dopus.exe or dopusrt.exe "cannot be accessed", "is already existing" or "cannot quit dopusrt.exe", requiring me to hit "ignore" and relaunch the installation 2-3 times to get it through.

The DLLs get loaded into more than Explorer. It would take forever to explain every reason one of the DLLs can be loaded into another programs, and would not change the fact that they do. It is what it is.

I have never seen that. The installer will ask dopusrt.exe to exit, if it's running for the desktop double-click feature, but I've never seen or heard of problems there before.

The only case I can think of is where the installer might not be able to ask dopusrt.exe to stop is if multiple users are logged into the machine and also running Opus, perhaps. (I don't know the exact details of the installer or how that is handled, so it is just a guess and may turn out not to be relevant.)

What can I say, but "ok"! o)

I quite believe that. Maybe it's something bad here, but the systems I maintain are quite simple and not overdone in general, I don't even use malware/virus protection or anything like that - maybe that is the problem? o) Anyway, in general I have zero to none problems installing software. I'll take some screenshots and situational facts for when doing the next install - maybe that little quirk can be cleared.

Thanks for taking your time! o)

Given that the required reboot can't be resolved, I would appreciate improving the update process to make it silent. By that I mean an option to say automatic download and run the installer. When the installer runs don't show me and don't ask any questions, use the settings I used last time.
The end result being a notification in dopus (perhaps an icon on a toolbar) that indicates that an update has occurred and next time you reboot you will have a new version of dopus.

I am not sure you would really want that, since running the installer and then not rebooting breaks some things until you reboot (e.g. desktop double-click).

It takes seconds to run the installer and click Next a bunch of times, and there aren't really any choices to make in it, so I'm not sure why it's a big deal. Having to reboot is slightly annoying, since you have to plan for it a bit, but it's not something we can realistically avoid and rebooting is quick these days.

I didn't realise that it broke things, and you are correct Its not a huge problem. As someone that runs the beta's (on my PC only) has Dopus on PC, laptop, usb and a few VM's I feel I'm always running the install for one reason or another. Any improvements you can make the the process would be appreciated. I do realise its not a simple request though.

In my 5+ years of using DOpus, I've never seen an update without asking for reset. For a frequently updated software like DOpus, that is really a terrible feature.

I've also complained about it before and I don't agree there is no solution for that. I've been ignored then (what a surprise), but, I'll explain the solution again.

Since the set of shell extension features that are exported to the outside is fairly constant, you should make another layer that changes only when, for example, a new command is added to the shell extension (which should be rarely). That new layer should be realized as a dll (which would be loaded in processes that load shell extensions) and wouldn't be changed and updated with each build. The dll itself would only forward commands to real DOpus dlls which would be loaded and freed dynamically, when needed.

We install the updates (including every beta, not just the main updates which are only monthly or less) even more often and on more machines than anyone else, so we should be the ones suffering the most. :slight_smile:

We had the same idea about isolating the shell extension DLLs. I had the same idea and mentioned it every so often for years, before I started working on Opus myself. Unfortunately, it is not that easy in reality. Any improvements to shared library code or language strings or lots of other things those DLLs depend on will result in those DLLs needing to be recompiled and thus needing to be updated at installation time. And we make changes to the core functionality in those DLLs often enough that it would not prevent many reboots in reality, even if it did work.

The problem is an architectural issue with Windows. We can't do anything about it, and Microsoft don't seem interested in providing a way to ask the system to unload shell extensions*. They provided the restart API but it is flawed and not widely supported by third-party software. It is what it is and we just have to live with it.

(*It's not just shell extensions, either. Global hotkeys and a few other things require at least one DLL to be loaded into every process that has a UI.)

Yeah, I understand it might be somewhat complex to do, but, I still believe it's possible.

BTW, I like uptimes on my PC of 1+ months, so, before updating DOpus, I simply rename dopuslib.dlls. I fully understand what type of problems this could cause, but, in practice, it simply works ok (I rarely/never actually use DOpus shell extensions in applications other than DOpus).

Windows Update will require you to reboot at least once a month anyway. How long does rebooting take that it's such a major issue?

windows updates can wait; they rarely bring anything useful (there's a hidden compliment for dopus here!)

rebooting takes about 10 seconds, but launching all applications and VMs I need and restoring their state takes 10-15 minutes.

If you just wait six months or a year after a new version is released before upgrading you won't have to do so many updates. By that point most of the issues have been fixed and the rate of updates slows considerably.

There really is no easy way to do it because of Explorer. Microsoft provide some APIs to kill and re-start Explorer but you wouldn't like it much more than rebooting.


Are you insane? o) A new DO version just makes may day, especially if there's something "in" there you wished for or an issue reported got fixed. Not to mention any other feature one is about to instantly mess around with! o)

I agree, it's the same for me. I won't ever reboot for windows updates, any notifications and reboot-requesters are disabled here.

Exactly, not necessarily VMs here, but I always got 3 browers with many dozens of "to-do" tabs openend in them, additionally any other big apps open. This all takes much time to store/restore and render. o) It even takes me 10-15 minutes to shut the system down after using it for weeks, as there is alot to be closed, click-confirmed and work in progress to be checked for being saved properly. And then there are these nasty USB-Devices needing reconnects to work again, so a reboot can be real work to do sometimes! o)

Did I mention my boss? He "forced" me to reboot my computer at work this january, after he noticed, that I did not restart the system for 226 days. As this was my personal record, I needed to take a screenshot of winbar and was curious about what exact day it ways that I started that machine. o) (Calc.exe handles dates as well, did you know?)

@dopus "staff"
As mentioned, you really should take this as a compliment.
If there's nothing which can be done about the reboots, I'll take them because they're just worth the "trouble"! o)

Sorry for being chatty.. o)

Not rebooting for Windows Updates is a bad idea. As soon as a security update is released, people start reverse engineering it to find what changed so they can know what to exploit in unpatched systems.

Security updates actually help attackers compromise unpatched systems. So as soon as a Windows security update is out, it's a good idea to install it and reboot if required.

If your Windows computer has an uptime of 226 days it's probably vulnerable to a bunch of known exploits. That's nothing to boast about. :slight_smile:

Re web browsers, you can configure them to remember and restore sessions both manually and automatically. Or just wait until you're done working on things before rebooting (that's what I usually do, unless I actually need something in the update to finish what I'm working on; then I save the browser sessions if I need them).

Sure, it has its drawbacks. o) I just feel interrupted by rebooting, as it is like being forced to cleanup the work-shop before the actual work is done.
In the end it's a bit of feigned safety as well, the openssl issue lately is a nice example. And may I ask, do you update your browsers, editors and open-source librarys on a daily/regular-basis just for being uptodate? I guess you do not? o)

I didn't mean to boast. I think I really save hours of time by not rebooting (daily). Kudos to Windows7 btw., I would call it quite stable! o)

How often you (should) update is probably dependent on many parameters of your environment, work-load and personal taste. Running a desktop 226 days is questionable, but when sitting in a corporate network, using specialized software only, corporate malware-protection and a healthy mind, the risk is quite low to ruin the company, I hope so at least. o)

Yep, I use operas session handling (v12), it still needs to reload every tabs content after a restart, which takes time. I additionally miss to start a dedicated session for heavier web-research on a new topic, so I always end up with these millions of tabs in the current one. o) I tried different browsers over the years, delayed tab-reloading by extensions in firefox and stuff, but in the long run, that all did not work out.

If you can tell me a combination of browser/extension which just works stable, fast and fluidly with horizontal tabs and delayed tab-reloading, I surely will give that another try!

Thanks for helping, taking your time and sharing your opinion!
Have nice weekend! o)

I sense that the "reboot after update" step in Windows Updates is increasingly common.