发布时间:2017-07-21 16:51:54
1.简单的宏定义#define 标识符 替换列表(替换列表可以是数,字符串字面量,标点符号,运算符,标识符,关键字,字符常量。注意:替换列表是可以为空的)典型错误:#define N = 100int a[N]; /*这样会成为int a[= 100],这里会处理成为一种标识记号一样*/ #define N 100;int a[N].........【阅读全文】
发布时间:2016-11-10 17:01:04
1. 基本原理使用自己写的代码, 在指定的进程里面启动一个远程线程, 从而把相关的代码注入到这个指定进程里面去, 实施操作. 通常这样做是为了拦截一些系统的 API, 或者是操控(挟持)这个进程.2. 具体实现拿到进程的句柄, 然后用 LoadLibrary 系统函数开启一个远程的线程. 从而把我们的DLL导入到这个指定的进程.(读者可以使用自己的办法, 不过套路应该都差不多)3. 样例代码#include "windows.h"int main(){ char * lpExeFile = "D:\\src-project\\testProcess......【阅读全文】
发布时间:2016-11-10 16:51:27
这里只把我的视线作为一个例子来说明一下, 读者用自己的方法去实现也没问题.关于如何把自己的DLL导入到指定的进程,请参考我的另一篇博文[windows平台] 给进程注入代码 -- 导入DLL到指定进程的地址空间1. DLL 入口函数的相关逻辑在DLL加载的时候HOOK所有我们希望追踪的系统API.在DLL卸载的时候取消所有的HOOK.#include "hooksTable.h"BOOL APIENTRY DllMain( HMODULE hModule, &nbs......【阅读全文】