Application.Run(); 报错 System.ArgumentOutOfRangeException:“索引超出范围。必须为非负值并小于集合大小。 Arg_ParamName_Name”

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图
ClientMain2 clientMain = null;
        LoginDialog dlgLogin = new LoginDialog();
        if (dlgLogin.ShowDialog() == DialogResult.OK)
        {
            clientMain = new ClientMain2();
            clientMain.Initialize();
            ZH.Dispatcher.DispatcherManager.Instance.Excute(ZH.Dispatcher.DispatcherEnum.LoginOn);
            //开启远程调度控制服务
            ZH.Dispatcher.RemoteControl.StartService();

            Application.Run(clientMain.MainWindow);
            ZH.Dispatcher.DispatcherManager.Instance.Excute(ZH.Dispatcher.DispatcherEnum.LoginOut);
        }
        dlgLogin.Dispose();
        #endregion

        //关闭实时数据上传服务
        ZH.Mis.RealTimeData.RealTimeDataHelper.CloseService();
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

使用Arg_ParamName_Name数组越界了。包含Arg_ParamName_Name数组的代码在哪?