0
(可能是一個愚蠢的問題)從一個不同的進程
// Program_1.exe:
int num = 1;
using (Process process = new Process())
{
process.StartInfo.FileName = "Program_2.exe";
if (process.Start())
{
process.WaitForExit();
}
}
Console.WriteLine(num.ToString()); // num should now equal 2
僞代碼
// Program_2.exe:
// I want this program to change the value of a variable in Program_1.exe
Program_1.exe->num = 2;
這是可能的改變包含在一個過程中的變量?
如果是這樣,我該怎麼辦呢?
詳細說明一下,Program_1需要刻意暴露一些設施以允許Program_2影響其狀態。如果有一個標準的方式來自由修改任意程序的私有狀態,那將是一件非常非常糟糕的事情! – twon33 2010-10-20 00:04:02
好的,所以沒有辦法將指向'num'的指針從* Program_1.exe *傳遞到* Program_2.exe *,以便* Program_2.exe *可以更改該指針指向的值?我只是想確認一下。謝謝twon33,你說得很好。 – JohnB 2010-10-20 17:10:12
@John:對;你不能在託管代碼中這樣做。你可以看看共享內存,但這可能不是一個好主意。 – SLaks 2010-10-20 17:16:57