首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ReadProcessMemory速度更快

ReadProcessMemory速度更快
EN

Stack Overflow用户
提问于 2012-05-15 05:23:25
回答 1查看 2.9K关注 0票数 1

我正在制作一个应用程序,它将使用鼠标/键盘(宏)来模拟依赖于变量值的操作。

下面是我做的反扫描代码:

代码语言:javascript
复制
void ReadMemory(int value){
        DWORD primeiroAddress = 0x000000;
        DWORD finalAddress = 0xFFFFFF;
        DWORD address=0;
        std::ostringstream ss;
        int i=0;
        TListItem *ListIt;
        int valor;
        HANDLE phandle = OpenProcess(PROCESS_VM_READ,0,TargetPID);
        if(!phandle){
                ShowMessage("Não encoutrou o processo");
        }else{
                for(address=primeiroAddress;address<=finalAddress;address+=sizeof(valor)){
                        ReadProcessMemory(phandle,(void*)address,&valor,sizeof(valor),0);
                        if(valor==value){
                                i++;
                                ss << std::hex << address;
                                Form1->Label5->Caption=i;
                                ListIt = Form1->ListView1->Items->Add();
                                ListIt->Caption = AnsiString(ss.str().c_str()).UpperCase();
                                ListIt->SubItems->Add(IntToStr(valor));
                                ss.str(std::string());
                        }
                }
        }
}

我在想我能做些什么来让扫描更快

EN

回答 1

Stack Overflow用户

发布于 2012-05-15 05:46:08

你一次只读一个int。相反,调用ReadProcessMemory一次,一下子读取16MB,然后在您自己的进程中扫描内存。这样会快很多。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10591270

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档