This unit contains classes that encapsulate Windows 32 bit binary resource files and the resources contained in them. The main functionality is provided by two classes:
-
TPJResourceFile
-
Encapsulates the contents of a whole resource file and provides methods and properties for reading, finding, editing, adding and deleting resources. Resource file content can be read from and written to files or streams.
-
TPJResourceEntry
-
Encapsulates a single resource within the file and provides properties to access its header record and its raw data. The class also has methods to check the identity of the resource. The resource's raw data is accessible both as an array of bytes and via a TStream interface.
This class has no knowledge of resource data formats and sees the data simply as a raw sequence of bytes. It is for the user of the class to interpret the data correctly.
In addition to the two main classes, some helper functions are also provided that assist in working with resource identifiers.
An exception class – EPJResourceFile – is also defined. Exceptions of this class are raised by both the main classes when errors are encountered.
Some constants are defined for use with the memory flags field of resource header records. The RT_HTML and RT_MANIFEST resource types are also defined since they are not defined by Delphi.
Demo code
No demo programs are included in the download. However the online documentation contains numerous worked examples.