예제 #1
0
        private static void fillPool(String ip)
        {
            // заполняем пул подключениями
            //for (int poolIndex = 0; poolIndex < pool.Length; poolIndex++)
            {
                // Номер клиента в имени пользователя соответствует номеру подключения.
                //cnString = (new Regex(@"клиент_\d*")).Replace(cnString, "клиент_" + (poolIndex + 1).ToString());

                // Номер клиента в имени пользователя временно соответствует ip. Для 77 - 1, а для 14 - 2
                switch (ip)
                {
                case "192.168.135.14":
                    cnString = (new Regex(@"клиент_\d*")).Replace(cnString, "клиент_2");
                    break;

                case "192.168.135.77":
                default:
                    cnString = (new Regex(@"клиент_\d*")).Replace(cnString, "клиент_1");     //  + (poolIndex + 1).ToString()
                    break;
                }
                // Запускаем процесс 1с, но подключения пока нет.
                pool[0] = new V77Connection(cnString);
            }
            isReady = true;
        }
예제 #2
0
        public static V77Connection GetV77Connection(String ip)
        {
            V77Connection v77cn = null;

            if (!isReady)
            {
                fillPool(ip);
            }
            if (pool.Length > 0)
            {
                v77cn = pool[0];
                // Процесс 1с уже запущен теперь надо подключиться.
                v77cn.Open();
            }
            return(v77cn);
        }