运行时访问应用程序变量

时间:2012-06-21 11:43:45

标签: c++ winapi

我的Win32应用程序的代码是这样的:

class Foo {
public: 
    string mystring;    
    __declspec(dllexport) void foo();
};

void Foo::foo(){

    printf("foo called");

}

int _tmain(int argc, _TCHAR* argv[])
{
    Foo foo;
    foo.mystring =  "all your base are belong to us";

    return 0;
}

如果我知道在内存中有这个Win32的图像基地址:

  • 鉴于我有图像基地址,我怎样才能获得Foo类 实例偏移
  • 鉴于我拥有win32应用程序的映像基址 内存,如何获取变量mystring
  • 的偏移地址
  • 获取函数foo()的函数地址是公平的 很容易,我能够做到这一点,甚至从另一个调用该功能 处理。但是,我不知道如何获得(至少阅读) 变量地址。

我的想法是我将执行这个程序,然后其他一些程序获取该应用程序的图像基地址,然后尝试读取所述应用程序内的变量。

0 个答案:

没有答案