Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用AppDomains在同一进程中运行多个WPF应用程序_C#_Appdomain - Fatal编程技术网

C# 如何使用AppDomains在同一进程中运行多个WPF应用程序

C# 如何使用AppDomains在同一进程中运行多个WPF应用程序,c#,appdomain,C#,Appdomain,我正在创建Visual Studio的插件,该插件通过引用与大型项目相连接。 主要目标是通过单击按钮运行“main”应用程序。 尝试执行此操作时,出现错误:System.InvalidOperationException:“您不能在同一AppDomain中创建多个System.Windows.Application实例。” 这是我的密码: [STAThread] [LoaderOptimization(LoaderOptimization.MultiDomainHost)]

我正在创建Visual Studio的插件,该插件通过引用与大型项目相连接。 主要目标是通过单击按钮运行“main”应用程序。 尝试执行此操作时,出现错误:System.InvalidOperationException:“您不能在同一AppDomain中创建多个System.Windows.Application实例。”

这是我的密码:

 [STAThread]
        [LoaderOptimization(LoaderOptimization.MultiDomainHost)]
        private void CreateApp(object sender, EventArgs e)
        {
            AppDomain domain = AppDomain.CreateDomain("MyProgram.WpfApp");

            CrossAppDomainDelegate action = () =>
            {
                Thread thread = new Thread(() =>
                {
                    App app = new MyProgram.WpfApp.App();
                    app.ShutdownMode = System.Windows.ShutdownMode.OnExplicitShutdown;
                    app.Run();
                });
                thread.Name = AppDomain.CurrentDomain.FriendlyName;
                thread.SetApartmentState(ApartmentState.STA);
                thread.Start();
            };
            domain.DoCallBack(action);
        }