所以發生的是我的控制檯程序打開,然後從文本文件運行外部c#程序/代碼。這一切都運行良好,但是當我關閉原始窗體窗口時,它所執行的程序/代碼也會關閉。有沒有辦法阻止我正在運行的文本文件代碼關閉?當控制檯窗口關閉時阻止程序關閉
這是它的調用運行程序
static void MemExe(byte[] buffer)
{
Assembly asm = Assembly.Load(buffer);
if (asm.EntryPoint == null)
throw new ApplicationException("No entry point found!");
MethodInfo ePoint = asm.EntryPoint;
ePoint.Invoke(null, null);
}
在緩衝區以字節爲單位
代碼/程序的代碼,這是我的主要
static void Main(string[] args)
{
var data = File.ReadAllText(@"program.txt");
MemExe(data);
}
你爲什麼不簡單地創建一個新的過程? https://msdn.microsoft.com/en-us/library/system.diagnostics.process.start(v=vs.110).aspx – Benj
@Benj我不能做它作爲它從一個文本文件的運行代碼,而不是.exe程序本身 – jLynx
然後代碼託管在執行過程中。一旦進程終止,就沒有框架來託管/運行代碼...爲什麼你需要終止主機進程? – Benj