16#ifndef LIEF_RUNTIME_WIN_MODULE_H
17#define LIEF_RUNTIME_WIN_MODULE_H
52 std::unique_ptr<PE::Binary>
56 std::unique_ptr<PE::Binary>
Class which represents a PE binary This is the main interface to manage and modify a PE executable.
Definition PE/Binary.hpp:57
This class represents an in-memory module which can be an executable or a library.
Definition Module.hpp:42
std::string name() const
Name of the module (e.g. libc.so.6, kernel32.dll, libsystem_c.dylib).
std::unique_ptr< PE::Binary > parse_from_memory() const
Parse the PE module from memory.
std::unique_ptr< PE::Binary > parse_from_path() const
Parse the PE module from its path on the filesystem.
std::unique_ptr< PE::Binary > parse_from_memory(const PE::ParserConfig &config) const
Parse the PE module from memory with the given configuration.
~Module() override=default
static std::unique_ptr< Module > from_handle(void *H)
void * handle() const
Return the HMODULE handle as an opaque pointer.
static constexpr bool classof(const runtime::Module *)
Definition windows/Module.hpp:64
std::unique_ptr< PE::Binary > parse_from_path(const PE::ParserConfig &config) const
Parse the PE module from its path on the filesystem and given the parser configuration.
void * dlsym(const std::string &name) const
Resolve the symbol with the given name for the current module.
Namespace related to the LIEF's PE module.
Definition Abstract/Header.hpp:32
Definition windows/Host.hpp:25
std::unique_ptr< Module > find_module(const std::string &name)
Try to get the Module with the given name.
std::unique_ptr< Module > dlopen(const std::string &name)
Load the windows library with the given path or name.
Definition android/Host.hpp:24
@ WINDOWS
Definition runtime/utils.hpp:31
LIEF namespace.
Definition Abstract/Binary.hpp:41
This structure is used to configure the behavior of the PE Parser (PE::Parser).
Definition PE/ParserConfig.hpp:27
#define LIEF_API
Definition visibility.h:45