/// <summary> /// Записывает Double по указанному адресу. /// </summary> /// <param name="address"></param> /// <param name="value"></param> /// <returns></returns> public static bool WriteDouble(Int32 address, Double value) { int tmpInt; return(WinApi.WriteProcessMemory(OpenProcessHandle, address, BitConverter.GetBytes(value), 8, out tmpInt)); }
/// <summary> /// Записывает массив Byte по указанному адресу. /// </summary> /// <param name="address"></param> /// <param name="value"></param> /// <returns></returns> public static bool WriteBytes(Int32 address, byte[] value) { int tmpInt; return(WinApi.WriteProcessMemory(OpenProcessHandle, address, value, value.Length, out tmpInt)); }
/// <summary> /// Закрывает дескриптор открытого процесса. /// </summary> public static void CloseProcess() { WinApi.CloseHandle(OpenProcessHandle); }
/// <summary> /// Записывает Byte по указанному адресу. /// </summary> /// <param name="address"></param> /// <param name="value"></param> /// <returns></returns> public static bool WriteByte(Int32 address, byte value) { int tmpInt; return(WinApi.WriteProcessMemory(OpenProcessHandle, address, new[] { value }, 1, out tmpInt)); }
/// <summary> /// Открывает объект процесса, возвращая дескриптор процесса. /// Так же, дескриптор сохранится в свойстве класса: OpenProcessHandle. /// </summary> /// <param name="processId">PID процесса, который мы хотитм открыть.</param> /// <returns></returns> public static void OpenProcess(int processId) { OpenProcessHandle = WinApi.OpenProcess(WinApi.ProcessAccessFlags.All, false, processId); }