MAKEMSI quickly and reliably creates MSI files in a non-programmatic way
Have your say! Join the MAKEMSI discussion list or view archive! Suggest improvements. No question too simple or too complex.
[Bottom][Contents][Prev]: Directory Tree Specification[Next]: DllCa-C
Have your say! Join the MAKEMSI discussion list or view archive! Suggest improvements. No question too simple or too complex.
\->Source Code->Commands->DllCa

The "DllCa" Command

This command is used to define and schedule a pre-existing DLL based custom action. It also sets up the "Action Text" which gets displayed in the progress bar.

Note that you can use the "DllCa-C" command to create the source for a C/C++ based DLL, compile, link and add to the MSI if you wish.

This command takes these parameters:

EXAMPLE - INSTALLED FILE

The DLL used in this example can be obtained from "http://www.codeproject.com/tips/msicustomaction.aspLink failed validation at 24 Jun 2008.
#404 - URL NOT FOUND

This appears to be a recent problem as I am not yet monitoring the URL.".

This example executes a DLL installed by this package:

;--- Add the file to the "File" Table ---
<$File RowKey="DllAsInstalledFile" SOURCE="C:\DBAREIS\Projects\Win32\MAKEMSI_SAMPLE_DLL\CodeProject Sample.dll" Destination="[INSTALLDIR]\TestDll.DLL">

;--- Now call "SampleFunction()" --------
<$DllCa File="DllAsInstalledFile" Seq="InstallFiles-" Entry="SampleFunction" Condition="<$DLLCA_CONDITION_INSTALL_ONLY>">

Obviously the custom action must be sequenced after the file is installed and before it is removed otherwise the DLL (or a copy) should be put into the binary table instead (see below).

EXAMPLE - BINARY TABLE

The DLL used in this example can be obtained from "http://www.codeproject.com/tips/msicustomaction.aspLink failed validation at 24 Jun 2008.
#404 - URL NOT FOUND

This appears to be a recent problem as I am not yet monitoring the URL.".

;--- Run 2 different DLL Entry Points ---
<$DllCa Binary="DllInBinaryTable" SEQ="DeleteServices-" Entry="SampleFunction"  Condition="<$DLLCA_CONDITION_INSTALL_ONLY>" DLL=^..\MAKEMSI_SAMPLE_DLL\CodeProject Sample.dll^>
<$DllCa Binary="DllInBinaryTable" SEQ="DeleteServices-" Entry="SampleFunction3" Condition="<$DLLCA_CONDITION_INSTALL_ONLY>">


Microsoft awarded me an MVP (Most Valuable Professional award) in 2004, 2005, 2006 & 2007 for the Windows SDK (Windows Installer) area.This external link was OK when tested at 12 Jun 2008Please email me any feedback, additional information or corrections.
See this page online (look for updates)

[Top][Contents][Prev]: Directory Tree Specification[Next]: DllCa-C


MAKEMSI© is (C)opyright Dennis Bareis 2003-2008 (All rights reserved).
Wednesday June 25 2008 at 7:16pm
Visit MAKEMSI's Home PageThis external link was OK when tested at 21 Jun 2008

HTML page dated Mon, 29 Jan 2007 00:11:11 GMT
Microsoft awarded me an MVP (Most Valuable Professional award) in 2004, 2005, 2006 & 2007 for the Windows SDK (Windows Installer) area.This external link was OK when tested at 12 Jun 2008