RLib  5.7
RLib - an opensource, lightweight and multi-platform framework for cpp programming
System::Runtime::Marshal Class Reference

Provides a wide variety of members that support platform invoke services More...

Static Public Member Functions

static HMODULE LoadNativeModule (_In_ LPCWSTR lpModuleFileName)
 Loads the specified module More...
 
static void UnLoadNativeModule (_In_ HMODULE hModule)
 Unloads the specified module More...
 
static HMODULE GetNativeModule (_In_opt_ LPCWSTR lpModuleName=nullptr, _In_opt_ LPWSTR lpModulePath=nullptr)
 Returns the instance handle(HINSTANCE) for the specified module More...
 
static LPVOID GetNativeMethod (_In_ HMODULE hModule, _In_opt_ LPCSTR lpProcedureName, _In_opt_ ULONG nProcedureNumber=0)
 Gets the specified method pointer More...
 
template<typename func_t >
static func_t EvaluateJmp (func_t pTarget)
 
template<typename param_t = LPBYTE>
static void InstructionHotpatch (LPVOID pPatchTarget, SIZE_T patchSize, void(*pCallback)(param_t), LPCVOID pData=NULL)
 
template<typename func_t >
static func_t GetFunctionPointerForDelegate (LPCVOID __imp_func)
 Converts a delegate of a specified type to a function pointer that is callable More...
 
template<typename func_t >
static func_t Invoke (HMODULE hModule, LPSTR pName, HMODULE hModuleAlternatively=NULL)
 
template<typename func_t >
static func_t InvokeCached (HMODULE hModule, LPSTR pName, HMODULE hModuleAlternatively=NULL)
 
template<typename func_t >
static func_t Invoke (LPCTSTR szModule, LPSTR pName, LPCTSTR szModuleAlternatively=NULL)
 
template<typename func_t >
static func_t InvokeCached (LPCTSTR szModule, LPSTR pName, LPCTSTR szModuleAlternatively=NULL)
 

Detailed Description

Provides a wide variety of members that support platform invoke services

Member Function Documentation

template<typename func_t >
static func_t System::Runtime::Marshal::GetFunctionPointerForDelegate ( LPCVOID  __imp_func)
inlinestatic

Converts a delegate of a specified type to a function pointer that is callable

LPVOID Marshal::GetNativeMethod ( _In_ HMODULE  hModule,
_In_opt_ LPCSTR  lpProcedureName,
_In_opt_ ULONG  nProcedureNumber = 0 
)
static

Gets the specified method pointer

HMODULE Marshal::GetNativeModule ( _In_opt_ LPCWSTR  lpModuleName = nullptr,
_In_opt_ LPWSTR  lpModulePath = nullptr 
)
static

Returns the instance handle(HINSTANCE) for the specified module

HMODULE Marshal::LoadNativeModule ( _In_ LPCWSTR  lpModuleFileName)
static

Loads the specified module

void Marshal::UnLoadNativeModule ( _In_ HMODULE  hModule)
static

Unloads the specified module


The documentation for this class was generated from the following files: