易语言问题小菜求解,
本帖最后由 Just_Like_Fire 于 2017-9-4 19:00 编辑求教一下,怎么判断某个地址后面的二进制是多少,就比如上图 那里 的401339的55和40133A的8BEC,
或者得到该地址后取出后面的二进制是多少,
如果可以,最好有个例子,谢谢!
Just_Like_Fire 发表于 2017-9-5 15:05
我试过你说的读内存字节集,读出来以后再转换成二进制发现跟该地址不一样,
才发的帖子来问的,
二进制只有0和1,这个明显也不是二进制啊,这个叫十六进制,所以你读出来的是字节集,直接用命令,字节集转16进制就可以了 内存读字节集 读内存,然后再把读到的字节集转换成想要的进制(2,8,10,16) 楼主加油 楼主辛苦 千里冰封 发表于 2017-9-5 00:12
读内存,然后再把读到的字节集转换成想要的进制(2,8,10,16)
我读出来的字节集转换过来跟该地址的二进制不一样,所以才愁, heiheidz 发表于 2017-9-5 08:21
0040133955这行55可以拆分两个8位二进制 01010101 这是最基础知识,但其实这个东西你知道原理即 ...
我就想读出来该内存地址后面的二进制数据,
我试过读内存字节集,开始读出来以后再转换成二进制发现跟该地址不一样, Shy 发表于 2017-9-4 19:29
内存读字节集
我试过你说的读内存字节集,读出来以后再转换成二进制发现跟该地址不一样,
才发的帖子来问的, 代码给你了,。不过易语言就不知道怎么写了
//修改些数据
DWORD dwTemp=0;
DWORD dwOldProtect;
if (IsBadReadPtr((LPVOID)401339,5))
{
return 0;
}
while(TRUE)
{
Sleep(50);
if ((char)0xC3 == *(char *)(OldDbgBreakPoint))
{
VirtualProtectEx(GetCurrentProcess(),(LPVOID)401339,5,PAGE_READWRITE,&dwOldProtect);
WriteProcessMemory(GetCurrentProcess(),(LPVOID)401339,5,NewCode,5,0);
VirtualProtectEx(GetCurrentProcess(),(LPVOID)401339,5,5,dwOldProtect,&dwTemp);
return 0;
}
}
页:
[1]
2