/// <summary> /// Записывает UnicodeString по указанному адресу. /// </summary> /// <param name="address"></param> /// <param name="str"></param> /// <returns></returns> public static bool WriteString(Int32 address, string str) { int tmpInt; var strBytes = new List <byte>(); strBytes.AddRange(Encoding.Unicode.GetBytes(str)); strBytes.AddRange(Encoding.Unicode.GetBytes("\0")); return(WinApi.WriteProcessMemory(OpenProcessHandle, address, strBytes.ToArray(), strBytes.Count, 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> /// Записывает 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 WriteByte(Int32 address, byte value) { int tmpInt; return(WinApi.WriteProcessMemory(OpenProcessHandle, address, new[] { value }, 1, out tmpInt)); }