C# 클래스 Emul8.Utilities.SharedLibraries

파일 보기 프로젝트 열기: emul8/emul8 1 사용 예제들

공개 메소드들

메소드 설명
GetAllSymbols ( string path ) : IEnumerable

Gets all exported symbol names for a given library.

Currently it works only with ELF files.

GetSymbolAddress ( IntPtr libraryAddress, string name ) : IntPtr

Gets the address of the symbol with a given name.

LoadLibrary ( string path ) : IntPtr

Loads the given library to memory.

TryLoadLibrary ( string path, IntPtr &address ) : bool
UnloadLibrary ( IntPtr address ) : void

Unloads the library and frees memory taken by it.

비공개 메소드들

메소드 설명
HandleError ( string operation ) : void
WindowsCloseLibrary ( IntPtr hModule ) : bool
WindowsGetLastError ( ) : UInt32
WindowsGetSymbolAddress ( IntPtr hModule, string symbolName ) : IntPtr
WindowsLoadLibrary ( [ lpFileName ) : IntPtr
dlclose ( IntPtr handle ) : int
dlerror ( ) : IntPtr
dlopen ( string file, int mode ) : IntPtr
dlsym ( IntPtr handle, string name ) : IntPtr

메소드 상세

GetAllSymbols() 공개 정적인 메소드

Gets all exported symbol names for a given library.
Currently it works only with ELF files.
public static GetAllSymbols ( string path ) : IEnumerable
path string /// Path to a library file. ///
리턴 IEnumerable

GetSymbolAddress() 공개 정적인 메소드

Gets the address of the symbol with a given name.
public static GetSymbolAddress ( IntPtr libraryAddress, string name ) : IntPtr
libraryAddress System.IntPtr /// Address to library returned by the function. ///
name string /// Name of the symbol to retrieve. ///
리턴 System.IntPtr

LoadLibrary() 공개 정적인 메소드

Loads the given library to memory.
public static LoadLibrary ( string path ) : IntPtr
path string /// Path to the library file. ///
리턴 System.IntPtr

TryLoadLibrary() 공개 정적인 메소드

public static TryLoadLibrary ( string path, IntPtr &address ) : bool
path string
address System.IntPtr
리턴 bool

UnloadLibrary() 공개 정적인 메소드

Unloads the library and frees memory taken by it.
public static UnloadLibrary ( IntPtr address ) : void
address System.IntPtr /// Address of the library, returned by the function. ///
리턴 void