Example #1
0
        static void Main(string[] args)
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            // проверка существования папки C:\FlyDoc\Logs и создать логгер приложения
            if (checkLogDir())
            {
                string msg = null;
                msg = AppFuncs.LoggerInit();
            }

            AppFuncs.WriteLogInfoMessage("**** НАЧАЛО работы FlyDoc ****");
            AppFuncs.WriteLogInfoMessage($"{AppFuncs.GetFullName()}, ver. {AppFuncs.GetVersion()}");

            // делегаты для DBContext-а
            DBContext.BeforeDBCallAction = new Action <string>(dbBeforeCallAction);
            DBContext.DBErrorAction      = new Action <string>(dbErrorAction);

            // загрузить аргументы приложения и получить имя компьютера и пользователя
            AppArgsHelper.LoadAppArgs(args);
            string argValue = AppArgsHelper.GetAppArgValue("machine");

            MachineName = (argValue.IsNull() ? System.Environment.MachineName : argValue);
            argValue    = AppArgsHelper.GetAppArgValue("user");
            UserName    = (argValue.IsNull() ? System.Environment.UserName : argValue);
            AppFuncs.WriteLogInfoMessage($"Авторизация: компьютер '{MachineName}', юзер '{UserName}'");
            if (MachineName.ToUpper() == "LENOVO-Z710")
            {
                DBContext.ConfigConnectionStringName = "FlyDocOnCAV";
            }

            _user = new User(MachineName, UserName);
            // если не найдено в табл.Access, то доступ только к телефонному справочнику
            if (_user.Id == 0)
            {
                _user.Phone = true;
            }


            // в режиме отладки вывести аргументы приложения
#if DEBUG
            if (AppArgsHelper.GetAppArgs.Count > 0)
            {
                System.Diagnostics.Debug.Print("** Application arguments:");
                int i = 0;
                foreach (KeyValuePair <string, string> kvp in AppArgsHelper.GetAppArgs)
                {
                    System.Diagnostics.Debug.Print("  {0}. {1} = '{2}'", ++i, kvp.Key, kvp.Value);
                }
            }
            if ((MachineName.ToUpper() == "KC-500-07") || (MachineName.ToUpper() == "LENOVO-Z710"))
            {
                // -machine KC-500-07 -user d.chernov
                //MachineName = "KC-106-31"; UserName = "******";
                MachineName = "KC-500-07"; UserName = "******";
                //MachineName = "KC-127-01"; UserName = "******";
                //MachineName = "KC-114-06"; UserName = "******";
                //MachineName = "KC-114-06"; UserName = "******";
                // MachineName = "KC-500-01"; UserName = "******";
                _user = new User(MachineName, UserName);
            }
#endif

            // открытие главного окна приложения
            FlyDoc.Forms.MainForm mainForm = new FlyDoc.Forms.MainForm();
            Application.Run(mainForm);

            AppFuncs.WriteLogInfoMessage("**** ОКОНЧАНИЕ работы FlyDoc ****" + Environment.NewLine);
        }