My Project
+ 80db3
|
Minimal NE/LE/PE parser that can find resources by ID in binary (exe/dll) files. More...
#include "loader/exereader.hpp"
Classes | |
struct | resource |
Position and size of a resource entry. More... | |
Public Types | |
enum | resource_id { NameVersionInfo = 1, TypeCursor = 1, TypeBitmap = 2, TypeIcon = 3, TypeMenu = 4, TypeDialog = 5, TypeString = 6, TypeFontDir = 7, TypeFont = 8, TypeAccelerator = 9, TypeData = 10, TypeMessageTable = 11, TypeGroupCursor = 12, TypeGroupIcon = 14, TypeVersion = 16, TypeDlgInclude = 17, TypePlugPlay = 19, TypeVXD = 20, TypeAniCursor = 21, TypeAniIcon = 22, TypeHTML = 23, Default = boost::uint32_t(-1) } |
enum | file_version { FileVersionUnknown = boost::uint64_t(-1) } |
Static Public Member Functions | |
static resource | find_resource (std::istream &is, boost::uint32_t name, boost::uint32_t type=TypeData, boost::uint32_t language=Default) |
Find where a resource with a given ID is stored in a NE or PE binary. More... | |
static boost::uint64_t | get_file_version (std::istream &is) |
Get the file version number of a NE, LE or PE binary. More... | |
Minimal NE/LE/PE parser that can find resources by ID in binary (exe/dll) files.
This implementation is optimized to look for exactly one resource.
Definition at line 40 of file exereader.hpp.
Definition at line 56 of file exereader.hpp.
Enumerator | |
---|---|
FileVersionUnknown |
Definition at line 97 of file exereader.hpp.
|
static |
Find where a resource with a given ID is stored in a NE or PE binary.
Resources are addressed using a (name, type, language) tuple.
is | a seekable stream of the binary containing the resource |
name | the user-defined name of the resource |
type | the type of the resource |
language | the localised variant of the resource |
(0, 0)
if the requested resource does not exist. Definition at line 481 of file exereader.cpp.
|
static |
Get the file version number of a NE, LE or PE binary.
is | a seekable stream of the binary file containing the resource |
Definition at line 498 of file exereader.cpp.