MSI custom actions

Custom action:

Description:

WiseAltStartup

Saves current state of properties for use by the custom actions running in deferred mode.
uses an executable (dll)
occurs during: Install,Uninstall

WiseCleanup

This action is called to clean up any temporary files left over from the custom action.
uses an executable (dll)
occurs during: Install,Uninstall

WiseStartup

This action enables parameter passing for actions that call a .DLL file and extracts the necessary Wisescript .EXE and .DLL files.
uses an executable (dll)
occurs during: Install,Uninstall

WiseUpgradeCheck

This action is called to work around issues where the Windows Installer runtime does not detect previous versions of the application.
uses an executable (dll)
occurs during: Install

WiseUpgradeCheckEx

This action is added to work around issues where the Windows Installer runtime does not detect previous versions of the application.
uses an executable (dll)
occurs during: Install

WiseGetIISVersion

Set a property with the major IIS version (IISVERSION).
uses an executable (dll)
occurs during: Install

RegisterFilterInMetabase

This action adds global ISAPI filter with the name ISAPI_Rewrite3 to IIS metabase.
IIS5, IIS6 metabase path:  IIS:/LM/W3SVC/Filters/ add key ISAPI_Rewrite3
IIS:/LM/W3SVC/Filters/FilterLoadOrder append "ISAPI_Rewrite3"
uses an executable (dll)
occurs during: Install

RemoveFilterFromMetabase

This action removes global ISAPI filter with the name ISAPI_Rewrite3 from IIS metabase.
IIS5, IIS6 metabase:  IIS://localhost/W3SVC/LM/W3SVC/Filters/ delete key ISAPI_Rewrite3
IIS:/LM/W3SVC/Filters/FilterLoadOrder remove"ISAPI_Rewrite3"
uses an executable (dll)
occurs during: Uninstall, Rollback

AddApplicationExtension

Only for Windows 2003 machines adds ISAPI_RewriteProxy.dll to ISAPI extensions and enables this ISAPI extension in Web Service Extensions list.
IS6 metabase:  IIS:/LM/W3SVC/
adds entry to the WebSvcExtRestrictionList metabase property "ISAPI_Rewrite3 proxy";
adds an entry to the ApplicationDependencies metabase property "ISAPI_Rewrite3 proxy;ISAPI_Rewrite3"
uses an executable (dll)
occurs during: Install

RemoveApplicationExtension

Only for Windows 2003 machines removes ISAPI_RewriteProxy.dll from ISAPI extensions and removes this ISAPI extension from Web Service Extensions list.
IS6 metabase:  IIS:/LM/W3SVC/
1. delete "ISAPI_Rewrite3 proxy" entry from WebSvcExtRestrictionList metabase property;
2.delete "ISAPI_Rewrite3 proxy;ISAPI_Rewrite3" from ApplicationDependencies metabase property;
uses an executable (dll)
occurs during: Uninstall, Rollback

RegisterExtensionInScriptMap

Register ISAPI_RewriteProxy.dll as ISAPI extension to handle "*.rwhlp" file extension in IIS metabase.
IIS5,IIS6 metabase:  IIS://LM/W3SVC/
uses an executable (dll)
occurs during: Install

RemoveExtensionFromScriptMap

Remove ISAPI_RewriteProxy.dll registration as ISAPI extension to handle "*.rwhlp" file extension from IIS metabase.
IIS5, IIS6 metabase:  IIS://LM/W3SVC/
uses an executable (dll)
occurs during: Uninstall, Rollback

GetServisesStatus

Saves current status of IISADMIN, W2WC, NNTP, SMTP and FTP services.
creates msi property [SERVICES_STATUS]
uses an executable (dll)
occurs during: Install,Uninstall

StartServicesEx

Starts ISADMIN, W2WC, NNTP, SMTP and FTP services according to their initial state.
uses msi property [SERVICES_STATUS]
uses an executable (dll)
occurs during: Install,Uninstall

 

SaveProductID

Saves REGISTRATIONNAME and REGISTRATIONCODE properties values if specified to register product.
uses msi property: [REGISTRATIONNAME] , [REGISTRATIONCODE];
uses file: [INSTALLDIR]\ISAPI_Rewrite3\httpd.conf
uses an executable (dll)
occurs during: Install

Check32bitMode

Checks whether 32-bit IIS compatibility mode enabled on 64-bit system to install correct version of ISAPI filter. IIS6, IIS7
uses metabase path: IIS://LM/W3SVC/AppPools  property Enable32bitAppOnWin64;
uses msi property:[ENABLE32BITAPPONWIN64]
Checks whether to enable a 32-bit application to run on a computer that has a 64-bit version of Windows.
uses an javascript
occurs during: Install

CheckIISModules

Checks whether required IsapiFilterModule and IsapiModule modules installed on IIS7 machines.
IIS7 metabase path:

<system.webServer>

<globalModules>

 <add name="IsapiModule" image="%windir%\System32\inetsrv\isapi.dll" />

<add name="IsapiFilterModule" image="%windir%\System32\inetsrv\filter.dll" />
</globalModules>

</system.webServer>

uses javascript;
occurs during: Install

AddGlobalIsapiFilter

Only for IIS7 machines this action adds global ISAPI filter with the name ISAPI_Rewrite3 to IIS metabase.
IIS7 metabase path:

<configuration>
   <system.webServer>
     <isapiFilters>
      <filters>
        <filter
         name="ISAPI_Rewrite3"
         path="C:\Program Files\Helicon\ISAPI_Rewrite3\ISAPI_Rewrite.dll"
         enabled="true"
         enableCache="false"
        >
        </filter>
      </filters>
     </isapiFilters>
   </system.webServer>
</configuration>

uses javascript;
occurs during: Install

DeleteGlobalIsapiFilter

Only for IIS7 machines this action removes global ISAPI filter with the name ISAPI_Rewrite3 from IIS metabase.

IIS7 metabase path:

<configuration>
   <system.webServer>
     <isapiFilters>
      <filters>
        <filter
         name="ISAPI_Rewrite3"
         path="C:\Program Files\Helicon\ISAPI_Rewrite3\ISAPI_Rewrite.dll"
         enabled="true"
         enableCache="false"
        >
        </filter>
      </filters>
     </isapiFilters>
   </system.webServer>
</configuration>

uses javascript;
occurs during: Uninstall, Rollback

AddIsapiCgiRestriction

Only for IIS7 machines register ISAPI_RewriteProxy.dll as ISAPI extension in IIS metabase.
IIS7 metabase path

<configuration>
<system.webServer>
<security>
<isapiCgiRestriction>

<add
path="C:\Program Files\Helicon\ISAPI_Rewrite3\ISAPI_RewriteProxy.dll"
allowed="true"
description="Helicon Proxy" />
</isapiCgiRestriction>
</security>

</system.webServer>
</configuration>

uses javascript;
occurs during: Install

DeleteIsapiCgiRestriction

Only for IIS7 machines remove ISAPI_RewriteProxy.dll registration as ISAPI extension form IIS metabase.
IIS7 metabase path:

<configuration>
   <system.webServer>
<security>
<isapiCgiRestriction>
<add
path="C:\Program Files\Helicon\ISAPI_Rewrite3\ISAPI_RewriteProxy.dll"
allowed="true"
description="Helicon Proxy" />
</isapiCgiRestriction>
</security>

uses an javascript;
occurs during: Uninstall, Rollback

 

 

AddScriptMap

Only for IIS7 machines register ISAPI_RewriteProxy.dll as ISAPI extension to handle *.rwhlp file extension in IIS metabase.
IIS7 metabase path:

<configuration>
<system.webServer>
<handlers>
<add name="Helicon Proxy" path="*.rwhlp" verb="*" modules="IsapiModule" scriptProcessor="C:\Program
Files\Helicon\ISAPI_Rewrite3\ISAPI_RewriteProxy.dll" resourceType="Unspecified"
/>

</handlers>

</system.webServer>
</configuration>

uses an javascript
occurs during: Install

 

DeleteScriptMap

Only for IIS7 machines remove ISAPI_RewriteProxy.dll registration as ISAPI extension to handle *.rwhlp file extension from IIS metabase.
IIS7 metabase path:

<configuration>
<system.webServer>
<handlers>
<add name="Helicon Proxy" path="*.rwhlp" verb="*" modules="IsapiModule" scriptProcessor="C:\Program
Files\Helicon\ISAPI_Rewrite3\ISAPI_RewriteProxy.dll" resourceType="Unspecified"
/>
</handlers>
</system.webServer>
</configuration>

uses an javascript;
occurs during: Uninstall, Rollback