TEventLog.RegisterMessageFile function
Register message file.
Declaration
function RegisterMessageFile(AFileName: string): Boolean; virtualArguments
AFileName | Filename with messages as resource strings. |
Function result
True if the call was successful,
False if not.Description
RegisterMessageFile is used on Windows to register the file
AFileName containing the formatting strings for the system
messages. This should be a file containing resource strings. If
AFileName is empty, the filename of the application binary is
substituted.
When a message is logged to the windows system log, Windows looks for a formatting string in the file registered with this call.
There are 2 kinds of formatting strings:
Category strings these should be numbered from 1 to 4
- 1
- Should contain the description of the
etInfoevent type. - 2
- Should contain the description of the
etWarningevent type. - 4
- Should contain the description of the
etErrorevent type. - 4
- Should contain the description of the
etDebugevent type.
None of these strings should have a string substitution placeholder.
The second type of strings are the message definitions. Their number starts at EventIDOffset (default is 1000) and each string should have 1 placeholder.
Free Pascal comes with a fclel.res resource file which contains
default values for the 8 strings, in English. It can be linked in the
application binary with the statement
{$R fclel.res}
This file is generated from the fclel.mc and fclel.rc
files that are distributed with the Free Pascal sources.
If the strings are not registered, windows will still display the event messages, but they will not be formatted nicely.
Note that while any messages logged with the event logger are displayed in the event viewer in Windows locks the file registered here. This usually means that the binary is locked.
On non-windows operating systems, this call is ignored.
Errors
If
AFileName is invalid, false is returned.
An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.
