const PCHAR gameCaption="QQ游戏 - 连连看角色版";
byte chessdata[11][19];//a[y][x]
void CLlkwgDlg::OnButton1()
{
// TODO: Add your control notification handler code here
//获取窗口句柄
HWND gameh=::FindWindow(NULL,gameCaption);
//获取窗口进程ID
DWORD processid;
::GetWindowThreadProcessId(gameh,&processid);
//打开指定进程
HANDLE processH=::OpenProcess(PROCESS_ALL_ACCESS,FALSE,processid);
//读指定进程 内存数据
DWORD byread;
LPCVOID pbase;
pbase=(LPCVOID)0x0012A1F8;//棋盘数据基址
LPVOID nbuffer=(LPVOID)byread;//存放棋盘数据
::ReadProcessMemory(processH,pbase,nbuffer,11*19,&byread);
char buf;
m_chessdata="";
for(int y=0;y<11;y++)
{
for(int x=0;x<19;x++)
{
itoa(chessdata[y][x],&buf,16);//转换成字串
m_chessdata+=buf;
m_chessdata+=" ";
}
m_chessdata+="\r\n";
}
UpdateData(FALSE);
}
显示出来的全是0 而不是棋盘数据 搞了2天还没有明白游戏
byte chessdata[11][19];//a[y][x]
void CLlkwgDlg::OnButton1()
{
// TODO: Add your control notification handler code here
//获取窗口句柄
HWND gameh=::FindWindow(NULL,gameCaption);
//获取窗口进程ID
DWORD processid;
::GetWindowThreadProcessId(gameh,&processid);
//打开指定进程
HANDLE processH=::OpenProcess(PROCESS_ALL_ACCESS,FALSE,processid);
//读指定进程 内存数据
DWORD byread;
LPCVOID pbase;
pbase=(LPCVOID)0x0012A1F8;//棋盘数据基址
LPVOID nbuffer=(LPVOID)byread;//存放棋盘数据
::ReadProcessMemory(processH,pbase,nbuffer,11*19,&byread);
char buf;
m_chessdata="";
for(int y=0;y<11;y++)
{
for(int x=0;x<19;x++)
{
itoa(chessdata[y][x],&buf,16);//转换成字串
m_chessdata+=buf;
m_chessdata+=" ";
}
m_chessdata+="\r\n";
}
UpdateData(FALSE);
}
显示出来的全是0 而不是棋盘数据 搞了2天还没有明白游戏
解决方案 »
- 我在PreTranslateMessage中成功响应了alt+a,大家看看测试下
- 多表查询为什么失败?“该特定字段 'Product' 可以参考 SQL 语句中 FROM 子句列表中的多个表。”
- ado+access,插入四万多条记录,花了37秒左右,正常吗?
- 用sdk编程时怎样保存窗口私有数据?(不使用static变量)
- 如何获得使用CreateDispatch创建的新进程的句柄?
- 求助 关于COMBOBOX
- 请教一个关于OpenGL图形结点坐标的问题
- 哪里有数据库编程的例程下载
- 怎样在菜单项前加一图标 ?
- 有关CreateFile的问题
- QQ连连看无法以读内存数据 请大大帮忙看看哪里出错了
- 个人发一贴,怀念即将逝去的、充满收获的2012年,期待充满希望的2013年.
If the function succeeds, the return value is nonzero.If the function fails, the return value is 0 (zero). To get extended error information, call GetLastError. The function fails if the requested read operation crosses into an area of the process that is inaccessible.调用系统API要检查返回值