創建一個Windows應用程序,新建一個Form,添加一個Button,Button的Click事件代碼如下:C#版本代碼 private void button1_Click(object sender, EventArgs e)
{
AppDomain domain = AppDomain.CreateDomain("newdomain");
domain.ExecuteAssemblyByName(Assembly.GetExecutingAssembly().FullName);
}
VB版本代碼 Private Sub Button1_Click(ByVal sender As Object ,ByVal e As EventArgs)
Dim domain As AppDomain= AppDomain.CreateDomain("newdomain")
domain.ExecuteAssemblyByName(Assembly.GetExecutingAssembly().FullName)
End Sub
編譯,運行,在窗口上連續點擊按鈕,會彈出幾個新的窗體(創建了新的應用程序域)。
關閉某個先打開的窗體,會發現在該窗體之後打開的窗體都會關閉!如果把後打開的窗體先關閉,就不會有這個問題。是何原因?如何解決?
歡迎參與討論,如果問題能夠解決,再加100分.
{
AppDomain domain = AppDomain.CreateDomain("newdomain");
domain.ExecuteAssemblyByName(Assembly.GetExecutingAssembly().FullName);
}
VB版本代碼 Private Sub Button1_Click(ByVal sender As Object ,ByVal e As EventArgs)
Dim domain As AppDomain= AppDomain.CreateDomain("newdomain")
domain.ExecuteAssemblyByName(Assembly.GetExecutingAssembly().FullName)
End Sub
編譯,運行,在窗口上連續點擊按鈕,會彈出幾個新的窗體(創建了新的應用程序域)。
關閉某個先打開的窗體,會發現在該窗體之後打開的窗體都會關閉!如果把後打開的窗體先關閉,就不會有這個問題。是何原因?如何解決?
歡迎參與討論,如果問題能夠解決,再加100分.
楼主最好把exe文件发上来,给俺们观摩观摩
也好找出纰漏
private void button1_Click(object sender, EventArgs e)
{
Thread t = new Thread(new ThreadStart(tt));
t.Start();
} private static void tt()
{ AppDomain domain = AppDomain.CreateDomain("newdomain");
domain.ExecuteAssemblyByName(Assembly.GetExecutingAssembly().FullName);
}