Ejemplo n.º 1
0
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            //处理未捕获的异常
            Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException);

            //处理UI线程异常
            Application.ThreadException += new System.Threading.ThreadExceptionEventHandler(Application_ThreadException);

            //处理非UI线程异常
            AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);

            //ConfigManager.Instance.GetTerminalConfig();
            //var config = new CT2Configinterface();
            //int iRet = config.Load("config/t2sdk.ini");

            //if (iRet != 0)
            //{
            //    string msg = "读取连接配置对象失败!";
            //    return;
            //}

            //LoginBLL loginBLL = new LoginBLL(config);

            T2SDKWrap t2SDKWrap = new T2SDKWrap();

            t2SDKWrap.Connect();
            //LoginBLL2 loginBLL = new LoginBLL2(t2SDKWrap);

            LoginController loginController = new LoginController(new LoginForm(), t2SDKWrap);

            Application.Run(loginController.LoginForm);
            if (_s_mainfrmController != null)
            {
                Application.Run(_s_mainfrmController.MainForm);
            }

            t2SDKWrap.Close();
            glExitApp = true;
        }
Ejemplo n.º 2
0
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            var    log4net     = ConfigurationManager.AppSettings["log4net"];
            string logFilePath = Path.Combine(Application.StartupPath, log4net);

            //XmlConfigurator.Configure();
            XmlConfigurator.Configure(new Uri(logFilePath));
            logger.Info("Log4net initialize...: " + logFilePath);
            //XmlConfigurator.ConfigureAndWatch("log4net.config");

            //处理未捕获的异常
            Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException);

            //处理UI线程异常
            Application.ThreadException += new System.Threading.ThreadExceptionEventHandler(Application_ThreadException);

            //处理非UI线程异常
            AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);

            //var setting = SettingManager.Instance.Get();
            var settingConfig = ConfigManager.Instance.GetDefaultSettingConfig();
            //var buttonConfig = ConfigManager.Instance.GetButtonConfig();

            //TODO:每个交易日开始时初始化????
            //清算交易实例
            var tradeInstanceSecuBLL = new TradeInstanceSecurityBLL();

            tradeInstanceSecuBLL.SettlePosition();

            uint timeOut = (uint)settingConfig.DefaultSetting.Timeout;

            T2SDKWrap t2SDKWrap = new T2SDKWrap(timeOut);
            var       conRet    = t2SDKWrap.Connect();

            if (conRet != Model.ConnectionCode.Success)
            {
                glExitApp = true;
                return;
            }

            T2Subscriber t2Subscriber = new T2Subscriber(timeOut);

            conRet = t2Subscriber.Connect();
            if (conRet != Model.ConnectionCode.Success)
            {
                t2SDKWrap.Close();
                glExitApp = true;
                return;
            }

            UFXBLLManager.Instance.Init(t2SDKWrap);
            UFXBLLManager.Instance.Subscriber = t2Subscriber;

            //TODO: subscribe the message after getting login information
            LoginController loginController = new LoginController(new LoginForm(), t2SDKWrap);

            Application.Run(loginController.LoginForm);
            if (_s_mainfrmController != null)
            {
                Application.Run(_s_mainfrmController.MainForm);
            }

            //realloc the connection and service
            loginController.Logout();
            t2SDKWrap.Close();
            t2Subscriber.Close();

            glExitApp = true;
        }