[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

RE: Potential installation bug in TortoiseSVN 1.9.4 64 bit edition

From: Edward Tippelt <edward.tippelt_at_it.ox.ac.uk>
Date: Wed, 21 Sep 2016 08:06:59 +0000

Hi Stefan,
Yours is not the first application that does this.
My workaround has been to use the IBM utility "runascurrentuser" to restart explorer in the context of the currently logged on user.
There are plenty of code samples on the internet that show how this can be done, but as I'm not a programmer I have avoided trying to code my own solution.
Cheers
Ed

-----Original Message-----
From: Stefan Küng [mailto:tortoisesvn_at_gmail.com]
Sent: 19 September 2016 18:47
To: users_at_tortoisesvn.tigris.org
Subject: Re: Potential installation bug in TortoiseSVN 1.9.4 64 bit edition

On 19.09.2016 15:04, Edward Tippelt wrote:
> Dear Volunteer,
>
>
>
> Running on Windows 7 SP1 Enterprise Edition, 64 bit.
>
>
>
> I have encountered an installation problem with TortoiseSVN 1.9.4 64
> bit that I have tracked down to the MSI action “InstallValidate”.
> When this action runs, Windows Explorer is closed, but fails to
> re-open at the end of the install. The section in the verbose
> installation log that refers to the probable cause of the explorer closure is shown below:
>
>
>
> MSI (s) (14:90) [13:42:45:466]: RESTART MANAGER: Will attempt to shut
> down and restart applications because the UI does not display any
> modal dialogs.
>
> MSI (c) (1C:0C) [13:42:45:466]: RESTART MANAGER: Session opened.
>
> MSI (s) (14:90) [13:42:45:513]: RESTART MANAGER: Successfully shut
> down all applications in the service's session that held files in use.
>
> MSI (c) (1C:0C) [13:42:45:513]: RESTART MANAGER: Successfully shut
> down all applications that held files in use.
>
>
>
> The time coincides exactly with the point at which Explorer closes,
> verified by placing Type 38 custom actions each side of
> InstallValidate in the InstallExecute sequence to show messages
> immediately before and immediately after InstallValidate.
>
>
>
> Looking at the end of the log, the entries suggest that all previously
> closed applications have been restarted:
>
>
>
> MSI (c) (1C:0C) [13:43:38:399]: RESTART MANAGER: Previously shut down
> applications have been restarted.
>
> MSI (c) (1C:0C) [13:43:38:399]: RESTART MANAGER: Session closed.
>
> === Verbose logging stopped: 19/09/2016 13:43:38 ===
>
>
>
> In our case, this is not happening.
>
>
>
> We used PAExec (a redistributable application that mimics the
> operation of Sysinternal’s PSExec utility) to run the install locally,
> as the install is triggered by the user from a menu of available apps,
> but run in an elevated context via PAExec.
>
> If I run the install from an elevated command prompt, Explorer is
> restarted at the end of the install. However, in this scenario, the
> install is being run from a user account. In the PAExec scenario, the
> install is being run in a system context I suspect this is why the
> explorer session is not being restarted, or it is being restarted in a
> system context (eg Session 1) that is not visible to user accounts of
> any description in Session 2.
>
>
>
> In order to be able to deploy this software to users, I need to find a
> solution to this problem. It would of course be ideal if this could be
> fixed within the TortoiseSVN package, as it is bad practice to just
> nuke running applications when a silent or basic UI installation is
> taking place. In our case, the average user would need to force a
> power off to restart the machine, or if more familiar with IT
> processes, start task manager and run Explorer.exe to get Windows Explorer running again.
>
> Programmatically, the installer needs to identify the currently logged
> on user and restart any processes that were stopped in the context of
> that user, as you cannot assume that the install is being done by an
> actual user. Most corporates use a distribution system such as SCCM or
> Symantec DS/NS which all run installs using a local system account.
> With XP. Interaction with the desktop was simple, but with Win 7 and
> later, the system and user processes run in different sessions and
> interaction with desktop is no longer straightforward.

As you're probably aware, when using msi we rely mostly on the msiexec for installing everything. We only have custom actions to open the changelog.txt file at the end on a click on the dialog button.
Everything else is standard msi (well, we use WiX to create the msi).

I have no idea why this happens for you, but searching the web showed that this happens for others as well:
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Restart-Resource-via-Elevated-Silent-SCCM-Install-td7595339.html

unfortunately, no solution there either.

So I'm sorry, but I have no idea on how to 'fix' this in TSVN.

Stefan

-- 
        ___
   oo  // \\      "De Chelonian Mobile"
  (_,\/ \_/ \     TortoiseSVN
    \ \_/_\_/>    The coolest interface to (Sub)version control
    /_/   \_\     http://tortoisesvn.net
------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=4061&dsMessageId=3186393
To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_tortoisesvn.tigris.org].
------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=4061&dsMessageId=3186546
To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_tortoisesvn.tigris.org].
Received on 2016-09-21 10:07:42 CEST

This is an archived mail posted to the TortoiseSVN Users mailing list.