https://www.cnblogs.com/iBinary/p/7898189.html
/*5.调用WriteProcessMemory,给进程写入DLL的路径*/
char szBuf[MAX_PATH] = {NULL};
GetCurrentDirectory(sizeof(szBuf),szBuf); //这三行代码主要是拼接我们的DLL,DLL是我们自己写的
strcat(szBuf,"StaticDll.dll"); //DLL这里就不写了,用我的吧,我会发上去的
BOOL bRet = WriteProcessMemory(hProHandle,lpAddr,szBuf,strlen(szBuf)+1,NULL);
if(!bRet)
{
return;
}
WriteProcessMemory讲解:
第一个参数: 进程的句柄,可以用我们上面的OpenProcess返回的
第二个参数: 你要写入的地址,地址使我们VirtualAllocEx申请之后返回的(就是你要往哪个地址写内容)
第三个参数: 你写入的内容是什么,写入的内容使我们的Dll路径,上面已经拼接好了
第四个参数: 你写入的内容的大小是多大,这里我们用strlen求出来了
第五个参数: 实际写入的个数,我们不关心,如果你想知道,则定义一个变量,然后 取地址传入即可,因为是个指针
没有评论:
发表评论