Hi Imri

I understand you want to use the Custom Action Type 50 to specify the path 
to the executable using a property reference and then give some command 
line args.

If you edited the Custom Action table directly, you would need to insert a 
record in the following way:

Action: FirebirdUninstallAction
Type: 50 (+ additional flags)
Source: FBV1EXISTS (property with the fully qualified path to the 
executable)
Target: /SILENT (command line arguments separately)

This would translate in Wix into:
<CustomAction Id='FirebirdUninstallAction' Property='FBV1EXISTS'
ExeCommand='/SILENT' Execute='immediate' Return='check'
HideTarget='no' Impersonate='no'></CustomAction>

If you really need to remove the leading and trailing quotes, you probably 
need to code another Custom Action to format the property accordingly 
since Windows Installer has no builtin operation for this. Also 
consider using the 'directory' or 'file' type instead of 'raw' on the 
RegistrySearch element (-> RegLocator table), then Windows Installer should 
be able to interpret it as file path. (I'm not clear yet about the 
details how to implement it using Wix ...)

Hope this helps you further.

Regards

Simon

>         
> -------- Original-Nachricht --------
> Datum: Mon, 3 May 2010 08:23:22 -0700 (PDT)
> Von: SimpleFaith <[email protected]>
> An: [email protected]
> Betreff: [WiX-devs] Removing "" from UninstallString
> 
>         
> Hi,
> 
> During my Installer's Installation process I do a RegistrySearch to 
> detect
> if Firebird v1.x is installed on the client machine. If it is i want to 
> use
> the UninstallString value to uninstall Firebird. I use the following
> Property and CustomAction to accomplish it:
> 
> <Property Id="FBV1EXISTS">
> <RegistrySearch Id="FirebirdV1" Type="raw" Root="HKLM"
> 
> Key="SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\FBDBServer_1_5_is1"
> Name="UninstallString"></RegistrySearch>
> </Property>
> 
> <CustomAction Id='FirebirdUninstallAction' Property='FBV1EXISTS'
> ExeCommand='[FBV1EXISTS] /SILENT' Execute='immediate' Return='check'
> HideTarget='no' Impersonate='no'></CustomAction>
> 
> In the InstallExecuteSequence i call my CustomAction
> <InstallExecuteSequence>
> <Custom Action="FirebirdUninstallAction"
> After="InstallFinalize">FBV1EXISTS</Custom>
> </InstallExecuteSequence>
> 
> Now the problem is that the UninstallString for Firebird is saved as
> "C:\Program Files\Firebird\Firebird_1_5\unins000.exe" (the "" included)
> which causes the following error:
> 
> Error 1721. There is a problem with this Windows Installer package. A
> program required for this install to complete could not be run. Contact 
> your
> support personnel or package vendor. Action: FirebirdUninstallAction,
> location: "C:\Program Files\Firebird\Firebird_1_5\unins000.exe", command:
> "C:\Program Files\Firebird\Firebird_1_5\unins000.exe" /SILENT 
> 
> Is there any way to format the UninstallString so that I can remove the 
> "" ?
> 
> Thx,
> Imri
> -- 
> View this message in context: 
> http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Removing-from-UninstallString-tp4998365p4998365.html
> Sent from the wix-devs mailing list archive at Nabble.com.
> 
> 
> ------------------------------------------------------------------------------
> _______________________________________________
> WiX-devs mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/wix-devs
> 
    
-- 
GRATIS für alle GMX-Mitglieder: Die maxdome Movie-FLAT!
Jetzt freischalten unter http://portal.gmx.net/de/go/maxdome01
------------------------------------------------------------------------------
_______________________________________________
WiX-devs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wix-devs

Reply via email to