예제 #1
0
        //инициализируем запрашивалку
        private bool InitSend()
        {
            //читаем конфиг сети
            netSettings = new NetSettings(CommonFunctions.SettingsPath +
                                          CommonFunctions.NetSettingsFile);
            if (netSettings.LoadConfig() == NetConfigStatus.Error)
            {
                ErrorMessage = netSettings.ConfigError;
                return(false);
            }

            //создаем список для хранения текущих ip и детекции новых
            CurrentIPs = new List <string>();

            //конфиг программы
            appsettings = new appSettings(CommonFunctions.SettingsPath +
                                          CommonFunctions.AppSettingsFile);
            if (!appsettings.LoadConfig())
            {
                ErrorMessage = appsettings.ConfigError;
                return(false);
            }

            ScriptAddr = appsettings.CurrentScriptAddr;

            //Проверяем БД SxGeo
            if (!CommonFunctions.ValidateSxGeo())
            {
                ErrorMessage = "SxGeo files missed or invalid!";
                return(false);
            }

            //получаем стоп-лист
            stoplist = appsettings.GetStopList();

            //подгатавливаем анализатор данных
            ipData = new IPData();

            //устанавливаем параметры запроса
            sendReq = new SendRequest(ScriptAddr);

            sendReq.ConnectionType    = netSettings.ConnectionType;
            sendReq.ProxyAddress      = netSettings.ProxyAddress;
            sendReq.ProxyPort         = netSettings.ProxyPort;
            sendReq.ProxyUser         = netSettings.ProxyUser;
            sendReq.ProxyPassword     = netSettings.ProxyPassword;
            sendReq.ConnectionTimeout = netSettings.ConnectionTimeout;

            return(true);
        }
예제 #2
0
        public System.Data.DataView GetIPInfo(string IP)
        {
            IPData ipManData = new IPData();

            string IPRawData = "IPINF031\n---START-DATA---\n" +
                               IP + "|MANUAL\n" + "---END-DATA---\n";

            //заполняем таблицы с данными
            if (!ipManData.FillIPTable(IPRawData))
            {
                ErrorMessage = ipData.ErrorMessage;
                return(null);
            }

            ipManData.FillInfoTable();
            return(ipManData.dsIP.Tables["Info"].DefaultView);
        }