Fyi, there's an immediate CA that extracts a binary stream into a file in 
http://msiext.codeplex.com/. 

CA_API UINT __stdcall BinaryWrite  ( MSIHANDLE  hInstall  )   

Saves a binary stream into a file. 

Parameters:
 BINARYWRITE_PROPERTYNAME  The name of the Binary property that contains the 
data.  
 BINARYWRITE_TARGETFILENAME  The output filename 

Example:
<Binary Id="TestData" SourceFile="TestData.txt" />
<Binary Id="MsiTools" SourceFile="$(var.BinDir)\MsiTools.dll" />
<CustomAction Id="BinaryWrite" BinaryKey="MsiTools" DllEntry="BinaryWrite" 
Execute="immediate" Return="check" />
<CustomAction Id="SetBinaryWrite_PropertyName" 
Property="BINARYWRITE_PROPERTYNAME" Value="TestData" />
<CustomAction Id="SetBinaryWrite_TargetFileName" 
Property="BINARYWRITE_TARGETFILENAME" Value="[SourceDir]TestData.txt" />
<InstallUISequence>
 <Custom Action="SetBinaryWrite_PropertyName" After="CostInitialize">1</Custom>
 <Custom Action="SetBinaryWrite_TargetFileName" 
After="SetBinaryWrite_PropertyName">1</Custom>
 <Custom Action="BinaryWrite" After="SetBinaryWrite_TargetFileName">1</Custom>
</InstallUISequence>


dB. @ dblock.org 
Moscow|Geneva|Seattle|New York


-----Original Message-----
From: Blair [mailto:os...@live.com] 
Sent: Wednesday, December 09, 2009 2:26 AM
To: 'General discussion for Windows Installer XML toolset.'
Subject: Re: [WiX-users] Quiet Execution Custom Action - run a temporary 
executable

You would need code (in a custom action, most likely) that would extract the
EXE from the Binary table so that you could execute it.

-----Original Message-----
From: Vladimir Iahnenco [mailto:vladimir.iahne...@gmail.com] 
Sent: Monday, December 07, 2009 6:41 PM
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] Quiet Execution Custom Action - run a temporary
executable

Hi All,

I have an executable which has to be launched as a custom action. It is a
temporary one, I have to run and delete it after that.

When I add it as a Binary and Custom action it works.

 

<Binary Id="SetConfigExe"
SourceFile="$(var.SetConfig.TargetDir)SetConfig.exe" />

<CustomAction Id="RunSetConfig" PAR1=[SOMEPAR1]" />

 

Now I want to execute it silently, I added an action  to set RunSetConfig
property and another CAQuietExec custom action to execute.

 

<CustomAction Id="RunSetConfig" BinaryKey="WixCA" DllEntry="CAQuietExec"
Execute="deferred" Return="check" Impersonate="no"/>

 

>From the log file I see that exe name and parameters are assigned properly
but with no path to the exe and installer seems cannot find that exe. Any
way to point the action on a binary? I don't want to include that exe as a
component.

 

Thanks,

Vladimir

 

----------------------------------------------------------------------------
--
Return on Information:
Google Enterprise Search pays you back
Get the facts.
http://p.sf.net/sfu/google-dev2dev
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
Return on Information:
Google Enterprise Search pays you back
Get the facts.
http://p.sf.net/sfu/google-dev2dev
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

------------------------------------------------------------------------------
Return on Information:
Google Enterprise Search pays you back
Get the facts.
http://p.sf.net/sfu/google-dev2dev
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to