# 外部主界面兼容层 这个目录只为旧 `.NET Framework 4.0` 启动流程提供一个可选扩展点,不引用 WPF 或 DevExpress 25.2。 ## 默认路线 直接运行 `Ls_ERP.exe` 时,`Manager.ExternalMainShell` 为 `null`: ```text Program.Main -> Manager.StartForm -> FrmLogin -> Manager.RunMainForm -> FrmMain ``` 这条路线不加载任何 WPF 程序集,并保持 DevExpress WinForms 15.2。 ## 外部宿主路线 `.NET Framework 4.8` 的独立启动程序通过 `LegacyApplicationHost.Run` 注入 `IExternalMainShell`。旧程序仍负责 CEF、全局异常、配置、数据库、登录和子系统选择,只在 `RunMainForm` 位置回调外部主界面。 `IExternalMainShell` 当前承担: - 同步显示外部主窗口; - 返回普通关闭或重新登录结果; - 处理旧插件发起的重新登录; - 在强制下线时通知外部主窗口退出。 ## 修改规则 - 此层必须继续可以在 .NET Framework 4.0 下编译。 - 禁止引用 `Lserp.Wpf.*`、WPF 类型或 DevExpress 25.2。 - 新界面特有实现放在独立 WPF 解决方案的 `Lserp.Wpf.Legacy.WinForms`。 - 新增兼容能力时优先扩展中立接口,不要在旧工程中直接调用 WPF。