TixHandler entry point

The TixHandler entry point is the communication channnel from InstallMate to the extension DLL. It is called by InstallMate at various points during the installation, registration, and uninstallation process. It must be implemented by clients in their extension DLL and exported to make it available to InstallMate.

BOOL TIXAPI TixHandler(
    TixMessage *pMessage,
    iTixRuntime *pTixRuntime,
    void *pExtra
);

In general, your TixHandler implementation need only deal with those messages that it is interested in. However, the following messages need special attention (see Extension DLL messages for detailed descriptions of each message):

TIXMSG_GETVERSION
Must be handled by all extension DLLs in all session types.
TIXMSG_INITIALIZE
TIXMSG_TERMINATE
If either one is implemented then so should the other, unless there is no need to clean up whatever your extension DLL initialized. Note that initialization and termination may be different for each of the InstallMate session types (installation, registration, and uninstallation).

Note: The default extension DLL implementation contains a TixHandler implementation that implements all required functionality and calls message-specific handler stubs where you can add your own code.

Parameters

pMessage
Points to the message parameter block. This block contains the message ID, the result code, and various other parameters that apply to all messages.
pTixRuntime
Pointer to the installer's runtime engine interface. You can use this interface to communicate with the installer in the message handlers.
pExtra
Points to a message-dependent additional parameter block. Refer to the individual message descriptions for more information. If the message has no additional parameters, this parameter is NULL.

Return value

The handler must return FALSE (zero) if it does not handle the passed-in message, or TRUE (or any nonzero value) if it does. The actual result code should be set in pMessage->lResult if the handler returns nonzero. This result code is ignored if the handler returns FALSE.