/// <summary> /// Reads bytes from the Processes Memory /// </summary> /// <param name="address">The address of the data to be read.</param> /// <param name="numBytes">The number of bytes to be read.</param> /// <returns>Bytes read</returns> public byte[] ReadBytes(long address, int numBytes) { return(MemoryUtil.ReadBytes(Handle, address, numBytes)); }
/// <summary> /// Reads 64Bit Integer from the Processes Memory /// </summary> /// <param name="address">The address of the data to be read.</param> /// <returns>Resulting Data</returns> public long ReadInt64(long address) { return(MemoryUtil.ReadInt64(Handle, address)); }
/// <summary> /// Reads a struct from the Processes Memory /// </summary> /// <typeparam name="T">Struct Type</typeparam> /// <param name="address">Memory Address</param> /// <returns>Resulting Struct</returns> public T ReadStruct <T>(long address) { return(MemoryUtil.ReadStruct <T>(Handle, address)); }
/// <summary> /// Searches for bytes in the Processes Memory /// </summary> /// <param name="needle">Byte Sequence to scan for.</param> /// <param name="startAddress">Address to start the search at.</param> /// <param name="endAddress">Address to end the search at.</param> /// <param name="firstMatch">If we should stop the search at the first result.</param> /// <param name="bufferSize">Byte Buffer Size</param> /// <returns>Results<returns> public long[] FindBytes(byte?[] needle, long startAddress, long endAddress, bool firstMatch = false, int bufferSize = 0xFFFF) { return(MemoryUtil.FindBytes(Handle, needle, startAddress, endAddress, firstMatch, bufferSize)); }
/// <summary> /// Reads a string from the processes' memory terminated by a null byte. /// </summary> /// <param name="address">Memory Address</param> /// <param name="bufferSize">Buffer Read Size</param> /// <returns>Resulting String</returns> public string ReadNullTerminatedString(long address, int bufferSize = 0xFF) { return(MemoryUtil.ReadNullTerminatedString(Handle, address, bufferSize)); }
/// <summary> /// Reads an 8 byte double precision floating point number from the Processes Memory /// </summary> /// <param name="address">The address of the data to be read.</param> /// <returns>Resulting Data</returns> public double ReadDouble(long address) { return(MemoryUtil.ReadDouble(Handle, address)); }
/// <summary> /// Reads a 4 byte single precision floating point number from the Processes Memory /// </summary> /// <param name="address">The address of the data to be read.</param> /// <returns>Resulting Data</returns> public float ReadSingle(long address) { return(MemoryUtil.ReadSingle(Handle, address)); }
/// <summary> /// Reads an unsigned 16Bit Integer from the Processes Memory /// </summary> /// <param name="address">The address of the data to be read.</param> /// <returns>Resulting Data</returns> public ushort ReadUInt16(long address) { return(MemoryUtil.ReadUInt16(Handle, address)); }
/// <summary> /// Reads 32Bit Integer from the Processes Memory /// </summary> /// <param name="address">The address of the data to be read.</param> /// <returns>Resulting Data</returns> public uint ReadUInt32(long address) { return(MemoryUtil.ReadUInt32(Handle, address)); }