2011-03-21 131 views

回答

4

在大多數操作系統中(我認爲你在這裏討論的是Microsoft Windows?),你不能在兩個進程之間進行函數調用。每個進程都有自己的內存空間,並且它們彼此隔離。

您可以使用進程間通信機制(如管道)在兩個進程之間進行通信。在Windows中,您還可以在進程之間使用同步對象,例如事件或信號量。如果你詳細說明你正在嘗試做什麼,我可以提供一些建議。

+0

是的謝謝蓋伊,我知道這一切。但這就是SetThreadContext()和其他類似代碼注入的原因。我需要相對可見的點,我怎麼能在ms窗口中做到這一點。 – Sergey 2011-03-21 05:20:34

+0

@Sergey:使用SetThreadContext,您可以設置另一個線程的指令指針,但這不是函數調用。它更像是一個分支。你能解釋一下你在這裏做什麼嗎? – 2011-03-21 05:29:32

+0

調試功能在這裏解釋:http://msdn.microsoft.com/en-us/library/ms679303%28v=VS.85%29.aspx如果你正在調試另一個進程,你幾乎可以做任何你想做的事情。也許你正在尋找在內存中創建一些指令,然後執行它們? – 2011-03-21 05:34:33

相關問題