-
Notifications
You must be signed in to change notification settings - Fork 0
Image Resource Directory
AFP edited this page Mar 31, 2023
·
1 revision
after initialize the PE class you can get access the Image Resource Directory structure by calling GetImageResourceDirectory() method. by calling this function, you get the object of ImageResourceDirectory
class, so you can retrieve the fields, change or modify them.
#include <iostream>
#include <POEX.h> // include POEX header
int main()
{
auto pe = POEX::PE(L"1.exe");
// Access to Image Resource Directory
auto resourceDirectory = pe.GetImageResourceDirectory();
// other stuff in here
return 0;
}
With calling GetImageResourceDirectory
method, you can access the structure and method in bellow:
/// <summary>
/// Array with the different directory entries.
/// </summary>
/// <returns>List of directory entries</returns>
auto ImageResourceDirectoryEntries() -> std::vector<std::shared_ptr<ImageResourceDirectoryEntry>>;
/// <summary>
/// Get Characteristics
/// </summary>
/// <returns></returns>
auto Characteristics() const -> unsigned int;
/// <summary>
/// Set Characteristics
/// </summary>
/// <param name="characteristics">Characteristics value</param>
/// <returns></returns>
auto Characteristics(const unsigned int& characteristics) -> void;
/// <summary>
/// Get TimeDateStamp
/// </summary>
/// <returns></returns>
auto TimeDateStamp() const -> unsigned int;
/// <summary>
/// Set TimeDateStamp
/// </summary>
/// <param name="time">TimeDateStamp value</param>
/// <returns></returns>
auto TimeDateStamp(const unsigned int& time) -> void;
/// <summary>
/// Get MajorVersion
/// </summary>
/// <returns></returns>
auto MajorVersion() const -> unsigned short;
/// <summary>
/// Set MajorVersion
/// </summary>
/// <param name="majorVersion">MajorVersion value</param>
/// <returns></returns>
auto MajorVersion(const unsigned short& majorVersion) -> void;
/// <summary>
/// Get MinorVersion
/// </summary>
/// <returns></returns>
auto MinorVersion() const -> unsigned short;
/// <summary>
/// Set MinorVersion
/// </summary>
/// <param name="minorVersion">MinorVersion value</param>
/// <returns></returns>
auto MinorVersion(const unsigned short& minorVersion) -> void;
/// <summary>
/// Get NumberOfNameEntries
/// </summary>
/// <returns></returns>
auto NumberOfNameEntries() const -> unsigned short;
/// <summary>
/// Set NumberOfNameEntries
/// </summary>
/// <param name="nameEntires">NumberOfNameEntries value</param>
/// <returns></returns>
auto NumberOfNameEntries(const unsigned short& nameEntires) -> void;
/// <summary>
/// Get NumberOfIdEntries
/// </summary>
/// <returns></returns>
auto NumberOfIdEntries() const -> unsigned short;
/// <summary>
/// Set NumberOfIdEntries
/// </summary>
/// <param name="idEntires">NumberOfIdEntries value</param>
/// <returns></returns>
auto NumberOfIdEntries(const unsigned short& idEntires) -> void;