0

考虑以下:

int pointer = 0x0066D378;

我将如何在另一个程序的内存中检索该指针地址指向的地址?请记住,不是“指针”变量的地址,该指针地址属于另一个程序,我怎样才能从它的当前上下文中获取地址(从上述程序的内存中)?

干杯!

4

2 回答 2

0

对于进程间通信(这似乎是您解决问题所需要的),您可以使用匿名管道或命名管道:

匿名管道: http: //msdn.microsoft.com/en-us/library/bb546102.aspx
命名管道:http: //msdn.microsoft.com/en-us/library/bb546085.aspx

操作系统负责将消息从一个进程发送到另一个进程。如果两个进程都在同一台机器上运行,我建议使用匿名管道,因为它们是轻量级的。如果它们位于同一网络上的不同机器上,则命名管道是可行的方法。

于 2013-11-04T10:38:13.850 回答
0

测试这个。p 值将是 testT 字符串的地址,首先分配给 int i,然后分配给 p 作为 i 的值。

    private static string testT = "test line to have an address";

     static void Main(string[] args)
    {

        Test(testT);
    }

    static unsafe void Test(string str)
    {
        fixed (char* pfixed = str)
        {

            int i = (int)pfixed;
            int* p = (int*)i;
            int* c = p;
        }
    }
于 2013-11-04T10:27:19.590 回答