| |
|
Objectives
It was required to design and implement the set of C++ classes getting Version
Info data from the Windows executable files.
|
|
Results
The required functionality was implemented using MS Visual Studio 6.0. Rather
than use the standard Win API to work with the Version Info, special classes
had to be designed because of the following reasons: Win API allows to get the
property by its name, but the properties with unknown names stay inaccessible.
Also, Win API fails to get the Version Info from some files (as a rule, from
those storing the Version Info in ANSI format), though this data can be viewed
with the help of Windows Explorer. These were the shortcomings to eliminate.
|
| |
|
Technical peculiarities
To access the Version Info data, two parsers were implemented providing
complete access to the ANSI or UNICODE-formatted Version Info stored in a
binary dump. The parsers were designed on the basis of the format description
taken from
|
|
MSDN (which may not be called exhaustive), as well as the investigation of
Version Info binary dumps of different files (first of all, this concerns those
files that caused the problems when the Win API approach was used).
|