Re: [WiX-users] EXE custom action cannot run because DLLs are removed

2013-06-11 Thread Sharon Pierson
Try moving it sooner.  You could run ProDriverRemove after InstallInitialize.  
Running it before RemoveFiles means it is likely scheduled after 
RemoveRegistryValues which might be the real problem.  Look at the 
InstallExecuteSequence table using Orca to help with the ordering.  Also, you 
might want to add some additional conditions to ensure that it only runs when 
the product is being removed, such as REMOVE~=ALL.

-Original Message-
From: kurt.jen...@us.ophiropt.com [mailto:kurt.jen...@us.ophiropt.com] 
Sent: Tuesday, June 11, 2013 7:10 AM
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] EXE custom action cannot run because DLLs are removed

Did not get any responses and was out on Friday.  

I am running an installed EXE during the uninstall. This EXE requires DLLs that 
were also installed.  But the EXE is not running.  From the log I can see the 
custom action is scheduled, some DLLs are removed, then the EXE starts.  The 
EXE will not run without those DLLs. The EXE uninstalls a driver so must run 
deferred in order to get elevated privileges. I have tried various Before and 
After in the InstallExecuteSequence without any luck. I've also searched the 
archive with no luck.

Here is a snippet of the WXS

  CustomAction
Id=ProDriverInstall
Directory=APPLICATIONDIRECTORY
ExeCommand=[APPLICATIONDIRECTORY]$(var.ProDriverInstallation.TargetName)
Execute=deferred
Impersonate=no
Return=asyncWait /

  CustomAction
Id=ProDriverRemove
Directory=APPLICATIONDIRECTORY
ExeCommand=[APPLICATIONDIRECTORY]ProDriverRemoval.exe
Execute=deferred
Impersonate=no
Return=asyncWait /

  InstallExecuteSequence
Custom Action=ProDriverInstall After=InstallFilesNOT 
Installed/Custom
Custom Action=ProDriverRemove Before=RemoveFilesInstalled/Custom
  /InstallExecuteSequence

Any idea how I can get this to work?


Kurt Jensen
Senior Software Engineer
Ophir-Spiricon LLC
kurt.jen...@us.ophiropt.com
www.ophiropt.com/photonics
The True Measurement of Laser Performance TM





--
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] EXE custom action cannot run because DLLs are removed

2013-06-11 Thread kurt.jen...@us.ophiropt.com
Thank you for the ideas.  

-Original Message-
From: Sharon Pierson [mailto:sharon.pier...@netiq.com] 
Sent: Tuesday, June 11, 2013 10:34 AM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] EXE custom action cannot run because DLLs are removed

Try moving it sooner.  You could run ProDriverRemove after InstallInitialize.  
Running it before RemoveFiles means it is likely scheduled after 
RemoveRegistryValues which might be the real problem.  Look at the 
InstallExecuteSequence table using Orca to help with the ordering.  Also, you 
might want to add some additional conditions to ensure that it only runs when 
the product is being removed, such as REMOVE~=ALL.

-Original Message-
From: kurt.jen...@us.ophiropt.com [mailto:kurt.jen...@us.ophiropt.com] 
Sent: Tuesday, June 11, 2013 7:10 AM
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] EXE custom action cannot run because DLLs are removed

Did not get any responses and was out on Friday.  

I am running an installed EXE during the uninstall. This EXE requires DLLs that 
were also installed.  But the EXE is not running.  From the log I can see the 
custom action is scheduled, some DLLs are removed, then the EXE starts.  The 
EXE will not run without those DLLs. The EXE uninstalls a driver so must run 
deferred in order to get elevated privileges. I have tried various Before and 
After in the InstallExecuteSequence without any luck. I've also searched the 
archive with no luck.

Here is a snippet of the WXS

  CustomAction
Id=ProDriverInstall
Directory=APPLICATIONDIRECTORY
ExeCommand=[APPLICATIONDIRECTORY]$(var.ProDriverInstallation.TargetName)
Execute=deferred
Impersonate=no
Return=asyncWait /

  CustomAction
Id=ProDriverRemove
Directory=APPLICATIONDIRECTORY
ExeCommand=[APPLICATIONDIRECTORY]ProDriverRemoval.exe
Execute=deferred
Impersonate=no
Return=asyncWait /

  InstallExecuteSequence
Custom Action=ProDriverInstall After=InstallFilesNOT 
Installed/Custom
Custom Action=ProDriverRemove Before=RemoveFilesInstalled/Custom
  /InstallExecuteSequence

Any idea how I can get this to work?


Kurt Jensen
Senior Software Engineer
Ophir-Spiricon LLC
kurt.jen...@us.ophiropt.com
www.ophiropt.com/photonics
The True Measurement of Laser Performance TM





--
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

--
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] EXE custom action cannot run because DLLs are removed

2013-06-11 Thread kurt.jen...@us.ophiropt.com
Sorry, I did not see this response.  Thank you.

I have been pulled off this task... again... I will try some of your and 
Sharon's ideas when I get back to it. Will post new questions if they come up.

Thanks again.

Kurt

-Original Message-
From: Phil Wilson [mailto:phil.wil...@mvps.org] 
Sent: Thursday, June 06, 2013 8:55 AM
To: 'General discussion for Windows Installer XML toolset.'
Subject: Re: [WiX-users] EXE custom action cannot run because DLLs are removed

Just a few comments:

Deferred and before RemoveFiles makes sense, but what action is removing the 
Dlls that the exe needs? 

Is APPLICATIONDIRECTORY recovered and is it correct at uninstall time?

Your condition on the uninstall is incorrect. Use REMOVE=ALL as a condition 
for an uninstall. The problem with using Installed as your condition on the 
remove is that it is set in several situations where you don't want it to be 
called. If you do a repair, add or remove features, then your remove will be 
called because the Installed condition is met. 

Phil 

-Original Message-
From: kurt.jen...@us.ophiropt.com [mailto:kurt.jen...@us.ophiropt.com]
Sent: Thursday, June 06, 2013 7:18 AM
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] EXE custom action cannot run because DLLs are removed

I am running an installed EXE during the uninstall. This EXE requires DLLs that 
were also installed.  But the EXE is not running.  From the log I can see the 
custom action is scheduled, some DLLs are removed, then it starts running.  The 
EXE will not run without those DLL. The EXE uninstalls a driver so must run 
deferred in order to get elevated privileges. I have tried various Before and 
After in the InstallExecuteSequence without any luck. I've also searched the 
archive with no luck.

Here is a snippet of the WXS

  CustomAction
Id=ProDriverInstall
Directory=APPLICATIONDIRECTORY
 
ExeCommand=[APPLICATIONDIRECTORY]$(var.ProDriverInstallation.TargetName)
Execute=deferred
Impersonate=no
Return=asyncWait /

  CustomAction
Id=ProDriverRemove
Directory=APPLICATIONDIRECTORY
ExeCommand=[APPLICATIONDIRECTORY]ProDriverRemoval.exe
Execute=deferred
Impersonate=no
Return=asyncWait /

  InstallExecuteSequence
Custom Action=ProDriverInstall After=InstallFilesNOT 
Installed/Custom
Custom Action=ProDriverRemove Before=RemoveFilesInstalled/Custom
  /InstallExecuteSequence

Any idea how I can get this to work?

Kurt Jensen
Senior Software Engineer
Ophir-Spiricon LLC
www.ophiropt.com/photonicshttp://www.ophiropt.com/photonics
The True Measurement of Laser Performance TM


--
How ServiceNow helps IT people transform IT departments:
1. A cloud service to automate IT design, transition and operations 2.
Dashboards that offer high-level views of enterprise services 3. A single 
system of record for all IT processes http://p.sf.net/sfu/servicenow-d2d-j
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users




--
How ServiceNow helps IT people transform IT departments:
1. A cloud service to automate IT design, transition and operations 2. 
Dashboards that offer high-level views of enterprise services 3. A single 
system of record for all IT processes http://p.sf.net/sfu/servicenow-d2d-j
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

--
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] EXE custom action cannot run because DLLs are removed

2013-06-06 Thread Phil Wilson
Just a few comments:

Deferred and before RemoveFiles makes sense, but what action is removing the
Dlls that the exe needs? 

Is APPLICATIONDIRECTORY recovered and is it correct at uninstall time?

Your condition on the uninstall is incorrect. Use REMOVE=ALL as a
condition for an uninstall. The problem with using Installed as your
condition on the remove is that it is set in several situations where you
don't want it to be called. If you do a repair, add or remove features, then
your remove will be called because the Installed condition is met. 

Phil 

-Original Message-
From: kurt.jen...@us.ophiropt.com [mailto:kurt.jen...@us.ophiropt.com] 
Sent: Thursday, June 06, 2013 7:18 AM
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] EXE custom action cannot run because DLLs are removed

I am running an installed EXE during the uninstall. This EXE requires DLLs
that were also installed.  But the EXE is not running.  From the log I can
see the custom action is scheduled, some DLLs are removed, then it starts
running.  The EXE will not run without those DLL. The EXE uninstalls a
driver so must run deferred in order to get elevated privileges. I have
tried various Before and After in the InstallExecuteSequence without any
luck. I've also searched the archive with no luck.

Here is a snippet of the WXS

  CustomAction
Id=ProDriverInstall
Directory=APPLICATIONDIRECTORY
 
ExeCommand=[APPLICATIONDIRECTORY]$(var.ProDriverInstallation.TargetName)
Execute=deferred
Impersonate=no
Return=asyncWait /

  CustomAction
Id=ProDriverRemove
Directory=APPLICATIONDIRECTORY
ExeCommand=[APPLICATIONDIRECTORY]ProDriverRemoval.exe
Execute=deferred
Impersonate=no
Return=asyncWait /

  InstallExecuteSequence
Custom Action=ProDriverInstall After=InstallFilesNOT
Installed/Custom
Custom Action=ProDriverRemove Before=RemoveFilesInstalled/Custom
  /InstallExecuteSequence

Any idea how I can get this to work?

Kurt Jensen
Senior Software Engineer
Ophir-Spiricon LLC
www.ophiropt.com/photonicshttp://www.ophiropt.com/photonics
The True Measurement of Laser Performance TM


--
How ServiceNow helps IT people transform IT departments:
1. A cloud service to automate IT design, transition and operations 2.
Dashboards that offer high-level views of enterprise services 3. A single
system of record for all IT processes http://p.sf.net/sfu/servicenow-d2d-j
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users



--
How ServiceNow helps IT people transform IT departments:
1. A cloud service to automate IT design, transition and operations
2. Dashboards that offer high-level views of enterprise services
3. A single system of record for all IT processes
http://p.sf.net/sfu/servicenow-d2d-j
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users