IDkmMemoryOperation.InvisibleWriteMemory(DkmProcess, UInt64, Byte[]) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
将内存写入目标进程,但不将对 ReadMemory 的调用隐藏。 此 API 可用于修补目标进程中的指令或数据以实现调试器功能。 在进行数据传输之前,系统将验证基址中的所有数据和指定大小的内存是否可供写入访问,如果无法访问,该函数将引发 E_INVALID_MEMORY_ADDRESS 错误。
public:
void InvisibleWriteMemory(Microsoft::VisualStudio::Debugger::DkmProcess ^ process, System::UInt64 address, cli::array <System::Byte> ^ data);
public void InvisibleWriteMemory (Microsoft.VisualStudio.Debugger.DkmProcess process, ulong address, byte[] data);
abstract member InvisibleWriteMemory : Microsoft.VisualStudio.Debugger.DkmProcess * uint64 * byte[] -> unit
Public Sub InvisibleWriteMemory (process As DkmProcess, address As ULong, data As Byte())
参数
- process
- DkmProcess
中DkmProcess 表示正在调试的目标进程。 调试器调试进程,因此这是调试的基本单元。 DkmProcess 可以表示系统进程或虚拟进程,如小型转储。
- address
- UInt64
中用于写入目标进程的内存的基址。
- data
- Byte[]
中要写入指定进程的地址空间中的数据。