![]() |
RAMvader
1.4
A .NET library which provides access to other processes' memory space.
|
Namespaces |
Classes | |
class | AbsoluteMemoryAddress |
A specialization for the MemoryAddress class, used to represent absolute/static/constant addresses. More... | |
class | InjectedCodeCaveMemoryAddress |
A specialization for the MemoryAddress class, used to represent addresses of code caves that get injected by the Injector<TMemoryAlterationSetID, TCodeCave, TVariable> into a target process' memory space. More... | |
class | InjectedVariableMemoryAddress |
A specialization for the MemoryAddress class, used to represent addresses of variables that get injected by the Injector<TMemoryAlterationSetID, TCodeCave, TVariable> into a target process' memory space. More... | |
class | InstanceAlreadyAttachedException |
Exception thrown when the user tries to attach a Target instance to a process, but the instance is already attached to another process. Before attaching to a process, the Target instance must be detached from any other process. More... | |
class | InstanceNotAttachedException |
Exception thrown when a method that requires the Target instance to be attached is called, while the Target is in a "not attached" state (i.e., the Target hasn't been attached to any target process yet). More... | |
class | MemoryAddress |
class | ModuleNotFoundException |
Exception thrown when the RAMvader library fails to find a module in the target process' modules list. More... | |
class | ModuleOffsetMemoryAddress |
A specialization for the MemoryAddress class, used to represent addresses that are calculated as offsets from a given module of the process to which the Target is attached. More... | |
class | NotifyPropertyChangedAdapter |
An adapter class to make the implementation of the INotifyPropertyChanged interface easier for any class willing to provide that implementation. More... | |
class | NotImplementedException |
Exception thrown whenever there is a given feature has not been implemented in the library's code. More... | |
class | PointerDataLostException |
An exception which is thrown when trying to perform an I/O operation with pointers between two processes with different pointer sizes. More... | |
class | RAMvaderException |
The base class for all exceptions from the RAMvader library. More... | |
class | RequiredIOException |
Exception that is thrown when an I/O operation that was required to succeed returns a fail state. More... | |
class | RequiredReadException |
Exception that is thrown when an input/read operation that was required to succeed returns a fail state. More... | |
class | RequiredWriteException |
Exception that is thrown when an output/write operation that was required to succeed returns a fail state. More... | |
class | Target |
RAMvader library's core class. Instances of this class are able to "attach" to processes and execute reading and writing operations in their memory spaces. More... | |
class | UnexpectedDataTypeSizeException |
Exception thrown when the compiler reports an unexpected size for a basic type handled by the RAMvader library. This exception exists for safety purposes only, and should never be thrown on standard development environments. More... | |
class | UnmatchedCodeCaveIdentifierException |
Exception thrown when the identifier given for a code cave does not match the expected enumeration type of identifiers for code caves of an CodeInjection.Injector<TMemoryAlterationSetID, TCodeCave, TVariable>. More... | |
class | UnsupportedDataTypeException |
An exception which is thrown when the user tries to perform a read or write operation using a data type that is not supported by the library. More... | |
class | UnsupportedPointerSizeException |
An exception which is thrown when the user tries to attach a 32-bits process to a 64-bits target process. More... | |
class | WinAPI |
This class is an interface that provides access to the Windows API. | |
|
strong |
Defines how errors with different pointer sizes are handled by the library.
Enumerator | |
---|---|
evThrowException | Throws an exception if the target process and the process which runs RAMvader have different pointer sizes. This is the default behaviour, for safety reasons. |
evSafeTruncation | If the target process and the process which uses RAMvader have different pointer sizes, operations with pointers truncate the pointers to 32-bits when necessary. If any data is lost during the truncation process, a PointerDataLostException is thrown. |
evUnsafeTruncation | If the target process and the process which uses RAMvader have different pointer sizes, operations with pointers truncate the pointers to 32-bits when necessary. If any data is lost during the truncation process, nothing happens. Thus, this is the less recommended option and should be used with caution. |
|
strong |
Defines the possible endianness options which RAMvader can operate on.
Enumerator | |
---|---|
evEndiannessDefault | A value indicating that RAMvader should operate in the same endianness as the process that RAMvader is running on. |
evEndiannessLittle | A value indicating that RAMvader should operate in Little-Endian byte order. |
evEndiannessBig | A value indicating that RAMvader should operate in Big-Endian byte order. |
|
strong |
Defines the supported pointer sizes for the target process.
Enumerator | |
---|---|
evPointerSizeDefault | The default pointer size configuration, where the target process' pointer size is assumed to be the same as the pointer size of the process which runs RAMvader. The pointer size can be retrieved through IntPtr.Size. |
evPointerSize32 | Explicitly identifies a 32-bit pointer. |
evPointerSize64 | Explicitly identifies a 64-bit pointer. |
|
strong |
Enumeration providing the x86 branch instruction types, used for changing the flow of execution of a target application's code. Branching can be used, for example, to make the target application execute code that you have injected in the target process' memory space. Corresponding instruction names and opcodes are listed for each enumerator, following the same conventions as seen in the Instruction Set Reference section of the document: “Intel® 64 and IA-32 Architectures Software Developer’s Manual V2” (available online free of charges code is being published).