On Sun, Aug 9, 2009 at 8:43 PM, Zero3<zero3 at zerosplayground.dk> wrote:
> I just realized that we have a slight problem with offering to install
> the tray manager through update.cmd.
>
> Users who install the tray manager in this way will have problems
> uninstalling. Their uninstaller won't be aware of the tray manager, and
> will therefore not shut it down before trying to delete the installation
> directory. As the tray manager is executed from within that directory
> and Windows doesn't allow deletion of a running executable, the
> uninstaller will throw an "could not delete files" error.
>
> The error box will offer to retry, but the user probably won't realize
> that he needs to manually shut down the tray manager first.
>
> Possible solutions:
>
> 1) Don't install the tray manager through update.cmd. Users will have to
> reinstall to get the tray icon. Cons: We are leaving our current user
> base behind (IMHO: very bad idea)
>
> 2) Warn user (upon update.cmd installation) to manually close it down
> before uninstalling. Cons: The user will probably forget about it and be
> just as lost when he finally uninstalls. (IMHO: not a proper fix)
>
> 3) Update the uninstaller in update.cmd as well. This raises the core
> issue: That Windows installations soon will have different layout
> because of the recent change from running the service under a custom
> user to running under a standardized service user. That gives us 2
> possibilities:
>
> 3.a) Add backward compatibility to the uninstaller. Cons: Will be a hell
> to maintain an uninstaller that has to support all previous installation
> layouts. The recent service user change has resulted in significant
> changes to it already. (IMHO: an acceptable work-around, but is a PITA
> to maintain in the long run)
>
> 3.b) Update the whole installation in update.cmd. This mainly involves
> moving current installations away from the custom user and cleaning up
> after the mess. Cons: Will require some work, and will require either an
> UAC escalation helper executable for update.cmd or porting update.cmd to
> real code that can escalate itself. (IMHO: the optimal solution long-term)
>
> Anyone?
>
> Juiceman, what are your thoughts on this? You are the update.cmd wiz.
>
> - Zero3

There is no easy answer.  We don't want to leave users behind but we
can't maintain backwards compatibility.
3a)  and I can have update.cmd download a version for these older installs.

As far as migrating older installs, UAC does present problems.  I
guess if you could make an UAC escalation helper to boost update.cmd
that could work.

Regarding porting update.cmd to real code, I could try to learn AHK

Reply via email to