How to write a specific event in the log
Answer
Logging an event using a vbscript custom action
In case an event is needed to appear in the log file, this can be done by using a Custom Action. For this we will use a custom vbscript.
In order to do this, the following steps must be taken :
1. Create a vbscript file with any editor,
like Notepad.
2. In the newly created file, copy the following
code:
Function WriteToLog Const MsgType = &H04000000 Set rec = Installer.CreateRecord(1) rec.StringData(1) = CStr(Session.Property("APPDIR")) 'rec.StringData(1) = CStr("Any type of message can be wrote here") Session.Message MsgType, rec WriteToLog = 0 End Function
3. Attach the vbscript file to your project
as a new attached custom action. To do this, go to Custom Actions and
select "Launch attached file" without sequence from the "Add Custom
Actions" pane. Write "WriteToLog" without the quotes in the "Function
Name" field. Rename the newly added Custom Action to
"Event_Logging".
4. Trigger the custom action in the project as
an "Execute custom action" published event, from a button you choose on
the MSI dialogs, with the argument set to: "WriteToLog".
5. Run
the installation package with logging
enabled.
6. The messages written by your custom action
should appear in the installation log.