对不起,我的英语不好,我不是本地人。 我试图在互联网上找到有关我的问题的信息,但我不知道任何线索。
我目前正在使用C#开发非常规程序。 像许多公司一样,他们的历史代码中有很大一部分都使用旧技术。这项技术的局限性迫使我不得不将C#用于许多功能。
最近有个主意是慢慢删除主要的许多小IHM并进行C#技术的新开发。
基本上,它以模态属性启动C#程序,并将旧技术中的IHM的句柄分配给IHM(通过以下代码)
效果很好。
问题是,如果我通过杀死他或停止调试残酷地离开了新的模态程序。旧的IHM可以继续工作,但是仍然无法访问,因为模态程序仍然处于活动状态。我无法集中精力。 ->单击该按钮会发出背景模态窗口的传统声音
我的问题是,有没有办法删除在此“模式”下阻止我的窗户的属性
我的代码:
Process hostProcess = Process.GetProcessesByName("myoldihm").FirstOrDefault();
FormModalBox contenu = new FormModalBox();
NativeWindow nativeWindow = new NativeWindow();
nativeWindow.AssignHandle(hostProcess.MainWindowHandle);
contenu.ShowDialog(nativeWindow);
contenu.Dispose();
contenu = null;
nativeWindow = null;
GC.Collect();
GC.WaitForPendingFinalizers();