public static extern bool StackWalk64 ( int MachineType, //In IntPtr hProcess, //In IntPtr hThread, //In IntPtr StackFrame, //In_Out IntPtr ContextRecord, //In_Out ReadProcessMemoryDelegate ReadMemoryRoutine, //_In_opt_ SymFunctionTableAccess64Delegate FunctionTableAccessRoutine, //_In_opt_ SymGetModuleBase64Delegate GetModuleBaseRoutine, //_In_opt_ TranslateAddressProc64Delegate TranslateAddress //_In_opt_ );
protected override LoadLibraryResult LoadMethods() { var closeHandleResult = this.LoadMethod <CloseHandleDelegate>("CloseHandle"); if (closeHandleResult.Success) { this._closeHandle = closeHandleResult.Delegate; } else { return(new LoadLibraryResult(false, closeHandleResult.Error)); } var openProcessResult = this.LoadMethod <OpenProcessDelegate>("OpenProcess"); if (openProcessResult.Success) { this._openProcess = openProcessResult.Delegate; } else { return(new LoadLibraryResult(false, openProcessResult.Error)); } var readProcessMemoryResult = this.LoadMethod <ReadProcessMemoryDelegate>("ReadProcessMemory"); if (readProcessMemoryResult.Success) { this._readProcessMemory = readProcessMemoryResult.Delegate; } else { return(new LoadLibraryResult(false, readProcessMemoryResult.Error)); } var writeProcessMemoryResult = this.LoadMethod <WriteProcessMemoryDelegate>("WriteProcessMemory"); if (writeProcessMemoryResult.Success) { this._writeProcessMemory = writeProcessMemoryResult.Delegate; } else { return(new LoadLibraryResult(false, writeProcessMemoryResult.Error)); } return(new LoadLibraryResult(true)); }
public static extern bool StackWalk64( int MachineType, //In IntPtr hProcess, //In IntPtr hThread, //In IntPtr StackFrame, //In_Out IntPtr ContextRecord, //In_Out ReadProcessMemoryDelegate ReadMemoryRoutine, //_In_opt_ SymFunctionTableAccess64Delegate FunctionTableAccessRoutine, //_In_opt_ SymGetModuleBase64Delegate GetModuleBaseRoutine, //_In_opt_ TranslateAddressProc64Delegate TranslateAddress //_In_opt_ );