Esempio n. 1
0
        public static DataTable QueryData(String vSQL)
        {
            String cWebUrl = INIConfig.ReadString("Config", "WEB_URL");
            String cUrl    = "http://" + cWebUrl + "/api/rest.ashx";

            try
            {
                String cActionType   = "SQLDB";
                String cActionMethod = "QueryData";
                cUrl = cUrl + "?action_type=" + cActionType + "&action_method=" + cActionMethod;
                HttpUtil vPost = new HttpUtil();
                Dictionary <String, String> vData = new Dictionary <string, string>();
                vData.Add("SQL", vSQL);
                String       cStr = vPost.HttpPost(cUrl, vData);
                ActiveResult vret = JsonLib.ToObject <ActiveResult>(cStr);
                if (vret.result == AppConfig.SUCCESS)
                {
                    cStr = StringEx.getString(vret.info);
                    DataTable dtRows = JsonLib.ToObject <DataTable>(cStr);
                    return(dtRows);
                }
                else
                {
                    return(null);
                }
            }
            catch (Exception ex)
            {
                return(null);
            }
        }
Esempio n. 2
0
 static void Main()
 {
     Application.EnableVisualStyles();
     Application.SetCompatibleTextRenderingDefault(false);
     INIConfig.setConfigFile(Application.StartupPath + @"\Config.ini");
     Application.Run(new frmCut());
 }
Esempio n. 3
0
 private void frmConfig_Load(object sender, EventArgs e)
 {
     this.txtVIDEO_HOST.Text = INIConfig.ReadString("Config", "VIDEO_HOST");
     this.txtVIDEO_PORT.Text = INIConfig.ReadString("Config", "VIDEO_PORT");
     this.txtVIDEO_USER.Text = INIConfig.ReadString("Config", "VIDEO_USER");
     this.txtVIDEO_PASS.Text = INIConfig.ReadString("Config", "VIDEO_PASS");
 }
Esempio n. 4
0
 private void btnApply_Click(object sender, EventArgs e)
 {
     INIConfig.Write("Config", "VIDEO_HOST", this.txtVIDEO_HOST.Text);
     INIConfig.Write("Config", "VIDEO_PORT", this.txtVIDEO_PORT.Text);
     INIConfig.Write("Config", "VIDEO_USER", this.txtVIDEO_USER.Text);
     INIConfig.Write("Config", "VIDEO_PASS", this.txtVIDEO_PASS.Text);
 }
Esempio n. 5
0
 public SftpClient getAnalyseClient()
 {
     if (AnalyseClient == null)
     {
         String cDFSType  = "ANALYSE";
         String cDFS_HOST = INIConfig.ReadString(cDFSType, "DFS_HOST", "");
         String cDFS_PORT = INIConfig.ReadString(cDFSType, "DFS_PORT", "22");
         int    iDFS_PORT = StringEx.getInt(cDFS_PORT);
         String cDFS_USER = INIConfig.ReadString(cDFSType, "DFS_USER", "root");
         String cDFS_PASS = INIConfig.ReadString(cDFSType, "DFS_PASS", "");
         AnalyseClient = new SftpClient(cDFS_HOST, iDFS_PORT, cDFS_USER, cDFS_PASS);
     }
     if (!AnalyseClient.IsConnected)
     {
         try
         {
             AnalyseClient.Connect();
             return(AnalyseClient);
         }
         catch (Exception ex)
         {
             log4net.WriteLogFile(ex.Message);
             AnalyseClient = null;
             return(null);
         }
     }
     else
     {
         return(AnalyseClient);
     }
 }
Esempio n. 6
0
        public static int ExecSQL(List <String> sqlList, List <Object[]> parmList)
        {
            String cWebUrl = INIConfig.ReadString("Config", "WEB_URL");
            String cUrl    = "http://" + cWebUrl + "/api/rest.ashx";

            try
            {
                String cActionType   = "SQLDB";
                String cActionMethod = "ExecSQL";
                cUrl = cUrl + "?action_type=" + cActionType + "&action_method=" + cActionMethod;
                HttpUtil vPost = new HttpUtil();
                Dictionary <String, String> vData = new Dictionary <string, string>();
                for (int i = 0; i < sqlList.Count; i++)
                {
                    String vSQL = sqlList[i];
                    vData.Add("SQL_" + (i + 1), vSQL);
                    if (parmList != null)
                    {
                        String cParm = JsonLib.ToJSON(parmList[i]);
                        vData.Add("PARM_" + (i + 1), cParm);
                    }
                }
                String       cStr = vPost.HttpPost(cUrl, vData);
                ActiveResult vret = JsonLib.ToObject <ActiveResult>(cStr);
                return(vret.result);
            }
            catch (Exception ex)
            {
                return(AppConfig.FAILURE);
            }
        }
Esempio n. 7
0
        private void geckoWebBrowser1_DocumentCompleted(object sender, Gecko.Events.GeckoDocumentCompletedEventArgs e)
        {
            String cUrl = geckoWebBrowser1.Url.AbsoluteUri;

            if (!LOAD_LAST_FLAG)
            {
                if (cUrl.IndexOf("login") > 0)
                {
                    WebJS js = new WebJS(geckoWebBrowser1.Document);
                    js.setFieldValue("user_id", INIConfig.ReadString("System", "UserID"));
                    js.setFieldValue("user_pass", INIConfig.ReadString("System", "UserPass"));
                    LOAD_LAST_FLAG = true;
                }
            }

            if ((LOAD_LAST_FLAG) && (!LOAD_TOKEN_FLAG))
            {
                if (cUrl.IndexOf("index") > 0)
                {
                    WebJS  js        = new WebJS(geckoWebBrowser1.Document);
                    string cUserCode = js.getFieldValue("usercode");
                    ApplicationEvent.setUserCode(cUserCode);
                    // ApplicationEvent.UserInfo.USER_CODE = cUserCode;

                    string cOrgID = js.getFieldValue("orgid");
                    //ApplicationEvent.UserInfo.ORG_ID = cOrgID;

                    string cToken = js.getFieldValue("token");
                    ApplicationEvent.Token = cToken;
                    LOAD_TOKEN_FLAG        = true;
                }
            }
        }
Esempio n. 8
0
        public static List<KeyValue> getImageList(String cFileName)
        {
            int iMinVal = StringEx.getInt(INIConfig.ReadString("Config", AppConfig.IMAGE_MIN, "0"));
            int iMaxVal = StringEx.getInt(INIConfig.ReadString("Config", AppConfig.IMAGE_MAX, "0"));

            int iGrayMinVal = StringEx.getInt(INIConfig.ReadString("Config", AppConfig.GRAY_MIN, "0"));
            int iGrayMaxVal = StringEx.getInt(INIConfig.ReadString("Config", AppConfig.GRAY_MAX, "0"));
            int iEXPORT_IMAGE = StringEx.getInt(INIConfig.ReadString("Config", AppConfig.EXPORT_IMAGE, "0"));
            return getImageList(cFileName, iMinVal, iMaxVal, iGrayMinVal, iGrayMaxVal);
        }
Esempio n. 9
0
 /// <summary>
 /// 应用程序的主入口点。
 /// </summary>
 static void Main()
 {
     INIConfig.setConfigFile(Application.StartupPath + @"\Config.ini");
     ServiceBase[] ServicesToRun;
     ServicesToRun = new ServiceBase[]
     {
         new Service1()
     };
     ServiceBase.Run(ServicesToRun);
 }
Esempio n. 10
0
        public static List <Rectangle> getImageRect(String cFileName)
        {
            try
            {
                Image <Bgr, Byte>  BgrImage  = null;
                Image <Gray, Byte> GrayImage = null;

                List <Rectangle> ImageList = new List <Rectangle>();

                int iMinVal = StringEx.getInt(INIConfig.ReadString("Config", AppConfig.IMAGE_MIN, "0"));
                int iMaxVal = StringEx.getInt(INIConfig.ReadString("Config", AppConfig.IMAGE_MAX, "0"));

                int iGrayMinVal = StringEx.getInt(INIConfig.ReadString("Config", AppConfig.GRAY_MIN, "0"));
                int iGrayMaxVal = StringEx.getInt(INIConfig.ReadString("Config", AppConfig.GRAY_MAX, "0"));

                //调取图片
                BgrImage  = new Image <Bgr, byte>(cFileName);
                GrayImage = new Image <Gray, byte>(BgrImage.Width, BgrImage.Height);

                //转灰度
                CvInvoke.CvtColor(BgrImage, GrayImage, Emgu.CV.CvEnum.ColorConversion.Rgb2Gray);

                //转黑白
                Image <Gray, byte> BinaryImage = GrayImage.ThresholdToZeroInv(new Gray(iGrayMinVal));

                VectorOfVectorOfPoint rvs = new VectorOfVectorOfPoint();
                CvInvoke.FindContours(BinaryImage, rvs, null, RetrType.List, ChainApproxMethod.ChainApproxSimple);

                int j = 10001;
                for (int i = 0; i < rvs.Size; i++)
                {
                    var       contour     = rvs[i];
                    Rectangle BoundingBox = CvInvoke.BoundingRectangle(contour);
                    ImageList.Add(BoundingBox);
                    if ((BoundingBox.Width < iMinVal) || (BoundingBox.Height < iMinVal))
                    {
                        continue;
                    }
                    if ((BoundingBox.Width > iMaxVal) || (BoundingBox.Height > iMaxVal))
                    {
                        continue;
                    }
                    j++;
                    CvInvoke.Rectangle(BgrImage, BoundingBox, new MCvScalar(255, 0, 0, 0), 3);
                }
                BgrImage.Save(cFileName.Replace("01.jpg", "02.jpg"));
                return(ImageList);
            }
            catch (Exception ex)
            {
                log4net.WriteLogFile("报错,原因为:" + ex);
                return(null);
            }
        }
Esempio n. 11
0
        public static void Execute()
        {
            AnalyseTask Task           = AnalyseTask.getInstance();
            int         iANALYSE_ALLOW = INIConfig.ReadInt("ANALYSE", "DFS_ALLOW");

            while (!ApplicationEvent.isUploadAbort)
            {
                Boolean Find_File_Flag = false;
                log4net.WriteLogFile("UploadTask.Execute..", LogType.DEBUG);
                String cFileName = null;

                if (iANALYSE_ALLOW > 0)
                {
                    cFileName = Task.getAnalyseFile();
                    if (String.IsNullOrWhiteSpace(cFileName))
                    {
                        log4net.WriteLogFile("UploadTask.Execute..未发现图片", LogType.DEBUG);
                    }
                    else
                    {
                        Task.UpdateAnalyseFile(cFileName);
                        if (!Find_File_Flag)
                        {
                            Find_File_Flag = true;
                        }
                    }
                }

                if (Find_File_Flag)
                {
                    try
                    {
                        Thread.Sleep(500);
                    }
                    catch (Exception ex)
                    {
                        log4net.WriteLogFile("UploadTask.Sleep." + ex.Message);
                    }
                }
                else
                {
                    try
                    {
                        Thread.Sleep(1000 * 3);
                    }
                    catch (Exception ex)
                    {
                        log4net.WriteLogFile("UploadTask.Sleep." + ex.Message);
                    }
                }
            }
        }
Esempio n. 12
0
        private void frmTask_Load(object sender, EventArgs e)
        {
            iskin.SkinFile = "skins/PageColor2.ssk";
            btnLoad_Click(null, null);
            String cORG_ID    = INIConfig.ReadString("Config", AppConfig.ORG_ID);
            String cLeftCount = WebSQL.GetStrValue("SELECT COUNT(1) FROM XT_TASK_LIST WHERE ORG_ID LIKE '" + cORG_ID + "%' ");
            int    iLeftCount = StringEx.getInt(cLeftCount);

            if (iLeftCount > 0)
            {
                this.timAfter.Enabled = true;
            }
        }
Esempio n. 13
0
        private ActiveMQ_Producer()
        {
            try
            {
                string cHost = INIConfig.ReadString("ACTIVE_MQ", AppConfig.ACTIVE_MQ_HOST);
                string cPort = INIConfig.ReadString("ACTIVE_MQ", AppConfig.ACTIVE_MQ_PORT);

                //初始化工厂,这里默认的URL是不需要修改的
                factory = new ConnectionFactory("tcp://" + cHost + ":" + cPort);
            }
            catch
            {
                log4net.WriteLogFile("ActiveMQ:初始化失败!!");
            }
        }
Esempio n. 14
0
        public void btnAutoTake_Click(object sender, EventArgs e)
        {
            String cORG_ID    = INIConfig.ReadString("Config", AppConfig.ORG_ID);
            String cLeftCount = WebSQL.GetStrValue("SELECT COUNT(1) FROM XT_TASK_LIST WHERE ORG_ID LIKE '" + cORG_ID + "%' ");
            int    iLeftCount = StringEx.getInt(cLeftCount);

            if (iLeftCount == 0)
            {
                int iCode = WebSQL.ExecSQL("INSERT INTO XT_TASK_LIST(DEVICE_ID,ORG_ID) "
                                           + " SELECT DEVICE_ID,ORG_ID "
                                           + " FROM XT_CAMERA WHERE ORG_ID like '" + cORG_ID + "%' "
                                           + " AND NOT EXISTS(SELECT 1 FROM XT_TASK_LIST X WHERE X.DEVICE_ID=XT_CAMERA.DEVICE_ID AND X.ORG_ID='" + cORG_ID + "') ");
            }
            this.timAfter.Enabled = true;
        }
Esempio n. 15
0
        private ActiveMQ_Consumer()
        {
            try
            {
                string cHost = INIConfig.ReadString("ACTIVE_MQ", AppConfig.ACTIVE_MQ_HOST);
                string cPort = INIConfig.ReadString("ACTIVE_MQ", AppConfig.ACTIVE_MQ_PORT);

                //初始化工厂,这里默认的URL是不需要修改的
                factory = new ConnectionFactory("tcp://" + cHost + ":" + cPort);
            }
            catch (Exception ex)
            {
                log4net.WriteLogFile("ActiveMQ:初始化失败--" + ex.Message);
            }
        }
Esempio n. 16
0
        private void frmWebKit_Load(object sender, EventArgs e)
        {
            String cWeb    = Config.GetAppSettings("WEB_URL");
            String cUrl    = cWeb + "Admin/login.aspx";
            String cORG_ID = INIConfig.ReadString("Config", "ORG_ID");

            if (cUrl.IndexOf("?") > -1)
            {
                cUrl = cUrl + "&ORG_ID=" + cORG_ID;
            }
            else
            {
                cUrl = cUrl + "?ORG_ID=" + cORG_ID;
            }
            this.browser.Load(cUrl);
        }
Esempio n. 17
0
        private AnalyseTask()
        {
            iMinVal = StringEx.getInt(INIConfig.ReadString("Config", AppConfig.IMAGE_MIN, "0"));
            iMaxVal = StringEx.getInt(INIConfig.ReadString("Config", AppConfig.IMAGE_MAX, "0"));

            iGrayMinVal = StringEx.getInt(INIConfig.ReadString("Config", AppConfig.GRAY_MIN, "0"));
            iGrayMaxVal = StringEx.getInt(INIConfig.ReadString("Config", AppConfig.GRAY_MAX, "0"));

            iALARM_ALLOW = INIConfig.ReadInt("ALARM", "DFS_ALLOW");
            cALARM_PATH  = INIConfig.ReadString("ALARM", "DFS_PATH", "");

            iANALYSE_ALLOW = INIConfig.ReadInt("ANALYSE", "DFS_ALLOW");
            cANALYSE_PATH  = INIConfig.ReadString("ANALYSE", "DFS_PATH", "");

            cAppDir = Application.StartupPath;
        }
Esempio n. 18
0
        private void btnLoad_Click(object sender, EventArgs e)
        {
            InitCameraLogin();
            int iCameraCount = Camera_GetCount();
            int iCameraNum   = StringEx.getInt(INIConfig.ReadString("Config", "VIDEO_MAX", "100"));

            if (iCameraCount > iCameraNum)
            {
                iCameraCount = iCameraNum;
            }
            if (iCameraCount > 0)
            {
                InitCamearaList(iCameraCount);
            }
            TASK_VAL_LIST = CAMEAR_INF_LIST;
        }
Esempio n. 19
0
        private void button1_Click(object sender, EventArgs e)
        {
            int iMinVal = StringEx.getInt(INIConfig.ReadString("Config", AppConfig.IMAGE_MIN, "0"));
            int iMaxVal = StringEx.getInt(INIConfig.ReadString("Config", AppConfig.IMAGE_MAX, "0"));

            int iGrayMinVal   = StringEx.getInt(INIConfig.ReadString("Config", AppConfig.GRAY_MIN, "0"));
            int iGrayMaxVal   = StringEx.getInt(INIConfig.ReadString("Config", AppConfig.GRAY_MAX, "0"));
            int iEXPORT_IMAGE = StringEx.getInt(INIConfig.ReadString("Config", AppConfig.EXPORT_IMAGE, "0"));

            String cDFS_PATH = INIConfig.ReadString("UPLOAD", "DFS_PATH", "0");

            String       cAppDir  = Application.StartupPath;
            Boolean      isUpload = false;
            JActiveTable aMaster  = new JActiveTable();
            JActiveTable aSlave   = new JActiveTable();

            aSlave.TableName  = "XT_IMG_LIST";
            aMaster.TableName = "XT_IMG_REC";
        }
Esempio n. 20
0
        public static Boolean SSH_Upload(SftpClient sftp, String cFileName, String cDFSType)
        {
            if (sftp == null)
            {
                return(false);
            }
            FileStream fs = null;

            try
            {
                String cDFS_PATH = INIConfig.ReadString(cDFSType, "DFS_PATH", "");
                fs = new FileStream(cFileName, FileMode.Open);
                String cStr     = Path.GetFileName(cFileName);
                String cDFSPath = cDFS_PATH;
                if (!cDFSPath.EndsWith("/"))
                {
                    cDFSPath = cDFSPath + "/";
                }
                sftp.UploadFile(fs, cDFSPath + cStr);
                return(true);
            }
            catch (Exception ex)
            {
                log4net.WriteLogFile("CopyUnit..UploadFile." + ex.Message, LogType.ERROR);
                sftp = null;
                return(false);
            }
            finally
            {
                if (fs != null)
                {
                    try
                    {
                        fs.Close();
                        fs = null;
                    }
                    catch (Exception ex)
                    {
                        log4net.WriteLogFile("CopyUnit.." + ex.Message, LogType.ERROR);
                    }
                }
            }
        }
Esempio n. 21
0
        private void onIdle_Event(object sender, EventArgs e)
        {
            if (!LOAD_FLAG)
            {
                LOAD_FLAG = true;
                InitCameraLogin();
                dtInfo    = WebSQL.QueryData("SELECT * FROM XT_CAMERA WHERE DEVICE_ID='" + ActiveCameraCode + "'");
                this.Text = StringEx.getString(dtInfo, 0, "CAMERA_NAME");

                X = StringEx.GetDouble(dtInfo, 0, "X");
                Y = StringEx.GetDouble(dtInfo, 0, "Y");
                if (X > 0 && Y > 0)
                {
                    String cWebUrl = INIConfig.ReadString("Config", AppConfig.WEB_URL, "");
                    String cUrl    = "http://" + cWebUrl + "/pages/webgis.aspx?TOKEN=" + ApplicationEvent.Token + "&TYPE_ID=2&X=" + X.ToString() + "&Y=" + Y.ToString();
                    //geckoWeb.Navigate(cUrl);
                }
                btnStartReal_Click(null, null);
            }
        }
Esempio n. 22
0
        public int InitCameraLogin()
        {
            //VIDEO_HOST=111.6.99.50
            //VIDEO_PORT=9900
            //VIDEO_USER=13569364016
            //VIDEO_PASS=13569364016

            //String VIDEO_HOST = "111.6.99.50";
            //String VIDEO_PORT = "9900";
            //String VIDEO_USER = "******";
            //String VIDEO_PASS = "******";

            String VIDEO_HOST = INIConfig.ReadString("Config", "VIDEO_HOST", "111.6.99.50");
            String VIDEO_PORT = INIConfig.ReadString("Config", "VIDEO_PORT", "9900");
            String VIDEO_USER = INIConfig.ReadString("Config", "VIDEO_USER", "15090669997");
            String VIDEO_PASS = INIConfig.ReadString("Config", "VIDEO_PASS", "15090669997");

            IVS_LOGIN_INFO info = new IVS_LOGIN_INFO();

            info.stIP.cIP = VIDEO_HOST;
            info.uiPort   = (UInt32)StringEx.getInt(VIDEO_PORT);

            info.cUserName     = VIDEO_USER;
            info.pPWD          = VIDEO_PASS;
            info.stIP.uiIPType = 0;

            info.uiClientType = 0;
            info.uiLoginType  = 0;
            int iCode = IVS_API.IVS_SDK_Init();

            iCode = IVS_API.IVS_SDK_Login(ref info, ref ApplicationEvent.iSession);
            if (iCode == 0)
            {
                log4net.WriteLogFile("用户登录视频服务器成功!");
            }
            else
            {
                log4net.WriteLogFile("IVS_SDK_Login:"******" 调用失败");
            }
            return(iCode);
        }
Esempio n. 23
0
        public String getAlarmFile()
        {
            if (cAppDir == null)
            {
                cAppDir = Application.StartupPath;
            }
            if (AlarmFileList == null)
            {
                AlarmFileList = new Queue <string>();
            }

            if (AlarmFileList.Count == 0)
            {
                String cFILE_PATH = INIConfig.ReadString("ALARM", "FILE_PATH", @"\images\");
                String cDFS_PATH  = cAppDir + cFILE_PATH;
                if (!Directory.Exists(cDFS_PATH))
                {
                    return(null);
                }
                String[] FileList = Directory.GetFiles(cDFS_PATH);
                for (int i = 0; i < FileList.Length; i++)
                {
                    String cFileName = FileList[i];
                    AlarmFileList.Enqueue(cFileName);
                    if (i > 10)
                    {
                        break;
                    }
                }
            }
            if (AlarmFileList.Count > 0)
            {
                String cFileName = AlarmFileList.Dequeue();
                return(cFileName);
            }
            else
            {
                return(null);
            }
        }
Esempio n. 24
0
        public static DBResult Query(String cFileList, String cTableName, String cWhereParm, String cOrderBy, int iPageNo, int iPageSize)
        {
            String cWebUrl = INIConfig.ReadString("Config", "WEB_URL");
            String cUrl    = "http://" + cWebUrl + "/api/rest.ashx";

            try
            {
                String cActionType   = "SQLDB";
                String cActionMethod = "Query";
                cUrl = cUrl + "?action_type=" + cActionType + "&action_method=" + cActionMethod;
                HttpUtil vPost = new HttpUtil();
                Dictionary <String, String> vData = new Dictionary <string, string>();
                vData.Add("FILELIST", cFileList);
                vData.Add("TABLENAME", cTableName);
                vData.Add("WHEREPARM", cWhereParm);
                vData.Add("ORDERBY", cOrderBy);
                vData.Add("PAGENO", StringEx.getString(iPageNo));
                vData.Add("PAGESIZE", StringEx.getString(iPageSize));

                String       cStr = vPost.HttpPost(cUrl, vData);
                ActiveResult vret = JsonLib.ToObject <ActiveResult>(cStr);
                if (vret.result == AppConfig.SUCCESS)
                {
                    cStr = StringEx.getString(vret.info);
                    DataTable dtRows = JsonLib.ToObject <DataTable>(cStr);
                    DBResult  rs     = new DBResult();
                    rs.dtrows    = dtRows;
                    rs.ROW_COUNT = vret.total;
                    return(rs);
                }
                else
                {
                    return(null);
                }
            }
            catch (Exception ex)
            {
                return(null);
            }
        }
Esempio n. 25
0
        private void frmWeb_Load(object sender, EventArgs e)
        {
            geckoWebBrowser1.Dock = DockStyle.Fill;

            geckoWebBrowser1.AddMessageEventListener("OpenWinUrl", OpenWinUrl);

            String cWeb    = Config.GetAppSettings("WEB_URL");
            String cUrl    = cWeb + "Admin/login.aspx";
            String cORG_ID = INIConfig.ReadString("Config", "ORG_ID");

            if (cUrl.IndexOf("?") > -1)
            {
                cUrl = cUrl + "&ORG_ID=" + cORG_ID;
            }
            else
            {
                cUrl = cUrl + "?ORG_ID=" + cORG_ID;
            }
            this.geckoWebBrowser1.Navigate(cUrl);

            JQueryExecutor ctx = new Gecko.JQuery.JQueryExecutor(geckoWebBrowser1.Window);  //先获取到jquery对象
        }
Esempio n. 26
0
        public Boolean CheckTask(String cTaskID)
        {
            Boolean AllowTask = INIConfig.ReadInt("TASK", cTaskID + "_FLAG") > 0;
            String  cDayHour  = DateTime.Now.ToString("HHmm");
            String  cDay      = DateTime.Now.ToString("yyyyMMdd");
            String  cORG_ID   = INIConfig.ReadString("Config", AppConfig.ORG_ID);

            if (AllowTask)
            {
                String cTASK = INIConfig.ReadString("TASK", cTaskID);
                if (cTASK.Equals(cDayHour))
                {
                    String cTASK_DAY = INIConfig.ReadString("TASK", cTaskID + "_DAY");
                    if (!cTASK_DAY.Equals(cDay))
                    {
                        JActiveTable aTable = new JActiveTable();
                        aTable.TableName = "XT_TASK";
                        aTable.AddField("TASK_ID", cTaskID);
                        aTable.AddField("TASK_TIME", cTASK);
                        aTable.AddField("TASK_DAY", cDay);
                        aTable.AddField("ORG_ID", cORG_ID);
                        String sql   = aTable.getUpdateSQL(" ORG_ID='" + cORG_ID + "' AND TASK_ID='" + cTaskID + "'");
                        int    iCode = WebSQL.ExecSQL(sql);
                        if (iCode == 0)
                        {
                            sql   = aTable.getInsertSQL();
                            iCode = WebSQL.ExecSQL(sql);
                        }
                        INIConfig.Write("TASK", cTaskID + "_DAY", cDay);
                        return(iCode > 0);
                    }
                }
                return(false);
            }
            else
            {
                return(false);
            }
        }
Esempio n. 27
0
        static void Main()
        { //是否可以打开新进程
            bool runOne = false;

            //获取程序集Guid作为唯一标识
            Attribute AttGuid  = Attribute.GetCustomAttribute(Assembly.GetExecutingAssembly(), typeof(GuidAttribute));
            string    cKeyGuid = ((GuidAttribute)AttGuid).Value;

            mux = new System.Threading.Mutex(true, cKeyGuid, out runOne);
            if (!runOne)
            {
                Environment.Exit(1);
            }
            else
            {
                INIConfig.setConfigFile(Application.StartupPath + @"\Config.ini");
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                Application.Run(new frmMain());
                mux.ReleaseMutex();
            }
        }
Esempio n. 28
0
        private bool UpdateAlarmFile(String cFileName)
        {
            JActiveTable aMaster = new JActiveTable();

            aMaster.TableName = "XT_IMG_REC";

            String  cFileExt   = Path.GetExtension(cFileName);
            String  cREC_ID    = Path.GetFileName(cFileName).Replace(cFileExt, "");
            String  cWebUrl    = INIConfig.ReadString("Config", AppConfig.WEB_URL);
            String  cUrl       = "http://" + cWebUrl + "/api/dfs.ashx?UPLOAD_FIELD=UPLOAD_FLAG";
            Boolean UploadFlag = CopyUnit.PostFile(cFileName, cWebUrl);

            if (UploadFlag)
            {
                log4net.WriteLogFile("REC_ID为:" + cREC_ID + "的图片,已上传!");
                aMaster.ClearField();
                aMaster.AddField("UPLOAD_FLAG", 1);
                aMaster.AddField("UPDATE_TIME", DateUtils.getDayTimeNum());
                int iCode = WebSQL.ExecSQL(aMaster.getUpdateSQL(" REC_ID='" + cREC_ID + "' "));

                try
                {
                    File.Delete(cFileName);
                }
                catch (Exception ex)
                {
                    log4net.WriteLogFile("UploadTask.Execute." + ex.Message);
                }
                log4net.WriteLogFile("REC_ID为:" + cREC_ID + "的图片,本删除成功!");
                return(true);
            }
            else
            {
                return(false);
            }
        }
Esempio n. 29
0
        private void timAfter_Tick(object sender, EventArgs e)
        {
            timAfter.Enabled = false;
            int iCode = 0;

            try
            {
                iCode = IVS_API.IVS_SDK_StopRealPlay(ApplicationEvent.iSession, (UInt32)ulRealPlayHandle);
            }
            catch (Exception ex)
            {
                log4net.WriteLogFile("IVS_SDK_StopRealPlay失败!");
            }

            try
            {
                String cORG_ID = INIConfig.ReadString("Config", AppConfig.ORG_ID);
                if (getTaskCameraCode(cORG_ID))
                {
                    log4net.WriteLogFile("剩余任务:" + ActiveLeftCount + ",当前任务:" + ActiveDevice_ID);
                    int idx = CAMEAR_CODE_LIST.IndexOf(ActiveDevice_ID);
                    if (idx == -1)
                    {
                        log4net.WriteLogFile("未找到匹配的摄像机!");
                    }
                    else
                    {
                        Object objInfo = CAMEAR_INF_LIST[idx];

                        IVS_CAMERA_BRIEF_INFO rowKey = (IVS_CAMERA_BRIEF_INFO)objInfo;

                        IVS_REALPLAY_PARAM para = new IVS_REALPLAY_PARAM();
                        para.bDirectFirst   = false;
                        para.bMultiCast     = false;
                        para.uiProtocolType = 2;
                        para.uiStreamType   = 1;
                        ActiveCameraCode    = rowKey.cCode;
                        ActiveCameraName    = rowKey.cName;

                        this.txtCameraName.Text = ActiveCameraName;
                        this.btnStartReal_Click(null, null);

                        ArrayList YWZList = Camera_YZW_List(ActiveCameraCode);
                        YWZ_TXT_LIST.Items.Clear();
                        YWZ_VAL_LIST.Clear();
                        //  for (int i = 0; (YWZList != null) && (i < YWZList.Count); i++)
                        if (YWZList.Count > 0)
                        {
                            for (int i = YWZList.Count - 1; i >= 0; i--)
                            {
                                IVS_PTZ_PRESET vPreset = (IVS_PTZ_PRESET)YWZList[i];
                                YWZ_TXT_LIST.Items.Add(vPreset.uiPresetIndex + ":" + vPreset.cPresetName);
                                YWZ_VAL_LIST.Add(vPreset);
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                log4net.WriteLogFile(ActiveCameraName + "[" + ActiveCameraCode + "]" + ":" + ex.Message);
            }
            finally
            {
                timPreset.Enabled = true;
            }
        }
Esempio n. 30
0
        private void timPreset_Tick(object sender, EventArgs e)
        {
            timPreset.Enabled = false;
            int iCode = 0;

            try
            {
                Boolean AllowWait = false;
                int     idx       = -1;
                if (YWZ_VAL_LIST.Count > 0)
                {
                    idx = YWZ_VAL_LIST.Count - 1;

                    IVS_PTZ_PRESET vPreset = (IVS_PTZ_PRESET)YWZ_VAL_LIST[idx];
                    YWZ_VAL_LIST.RemoveAt(idx);
                    YWZ_TXT_LIST.Items.RemoveAt(idx);
                    int pLockStatus = 0;
                    iCode = IVS_API.IVS_SDK_PtzControl(ApplicationEvent.iSession, ActiveCameraCode, 11, vPreset.cPresetName, "3", ref pLockStatus);
                    if (iCode > 0)
                    {
                        log4net.WriteLogFile("调用预置位失败");
                        return;
                    }
                    else
                    {
                        AllowWait = true;
                    }
                }
                if (AllowWait)
                {
                    Boolean isAbort = false;
                    int     iORD    = 0;
                    while (!isAbort)
                    {
                        Application.DoEvents();
                        Thread.Sleep(200);
                        iORD++;
                        if (iORD > 15)
                        {
                            isAbort = true;
                        }
                    }
                }
                isPlay = true;
                String cAppDir = INIConfig.ReadString("ALARM", "FILE_PATH", "");
                if (Directory.Exists(cAppDir))
                {
                    Directory.CreateDirectory(cAppDir);
                }

                int    iPRESET_ID = 9999;
                String cKeyID     = "";
                string cKeyGuid   = "";
                if (idx != -1)
                {
                    cKeyID     = AutoID.getAutoID() + "_" + String.Format("{0:0#00}", idx);
                    cKeyGuid   = ActiveCameraCode + "X" + String.Format("{0:0#00}", idx);
                    iPRESET_ID = idx;
                }
                else
                {
                    cKeyID     = AutoID.getAutoID() + "_0000";
                    cKeyGuid   = ActiveCameraCode + "X" + "0000";
                    iPRESET_ID = 9999;
                }

                cAppDir = cAppDir + cKeyID.Substring(0, 8);
                if (Directory.Exists(cAppDir))
                {
                    Directory.CreateDirectory(cAppDir);
                }

                String cFileName = cAppDir + "\\" + cKeyID + ".jpg";
                Application.DoEvents();
                iCode = IVS_API.IVS_SDK_LocalSnapshot(ApplicationEvent.iSession, (UInt32)ulRealPlayHandle, 1, cFileName);

                if (iCode == 0)
                {
                    cAppDir = INIConfig.ReadString("ANALYSE", "FILE_PATH", "");
                    String cAnalyseFile = cAppDir + cKeyID + ".jpg";
                    try
                    {
                        String cFilePath = Path.GetDirectoryName(cAnalyseFile);
                        if (!Directory.Exists(cFilePath))
                        {
                            Directory.CreateDirectory(cFilePath);
                        }
                        File.Copy(cFileName, cAnalyseFile);
                    }
                    catch (Exception ex)
                    {
                        log4net.WriteLogFile(ex.Message);
                    }

                    log4net.WriteLogFile("IVS_SDK_LocalSnapshot成功!" + cFileName);
                    String cKeyText = IMGAI.getImageText(cFileName);

                    List <String> sqls     = new List <string>();
                    String        cDayTime = DateTime.Now.ToString("yyyyMMddHHmmss");
                    JActiveTable  aMaster  = new JActiveTable();
                    aMaster.TableName = "XT_IMG_REC";
                    aMaster.AddField("REC_ID", cKeyID);
                    aMaster.AddField("CAMERA_ID", ActiveCameraCode);
                    aMaster.AddField("PRESET_ID", iPRESET_ID);

                    aMaster.AddField("AI_FLAG", 0);
                    aMaster.AddField("ALARM_FLAG", 0);
                    aMaster.AddField("ALARM_CHECKED", 0);
                    aMaster.AddField("IMAGE_REDRAW", 0);


                    if (!String.IsNullOrEmpty(cKeyText))
                    {
                        aMaster.AddField("P", IMGAI.getP(cKeyText));
                        aMaster.AddField("T", IMGAI.getT(cKeyText));
                        aMaster.AddField("X", IMGAI.getX(cKeyText));
                    }
                    aMaster.AddField("FILE_URL", "/dfs/" + cKeyID.Substring(0, 8) + "/" + cKeyID + ".jpg");
                    aMaster.AddField("CREATE_TIME", cDayTime);
                    aMaster.AddField("UPLOAD_FLAG", 1);

                    String       cMasterSQL = aMaster.getInsertSQL();
                    JActiveTable aSlave     = new JActiveTable();
                    aSlave.TableName = "XT_CAMERA_STATUS";
                    aSlave.AddField("UPDATE_TIME", cDayTime);
                    String cSlaveSQL = aSlave.getUpdateSQL("CAMERA_ID = '" + ActiveCameraCode + "' ");

                    sqls.Add(cMasterSQL);
                    sqls.Add(cSlaveSQL);
                    iCode = WebSQL.ExecSQL(sqls);
                    if (iCode > 0)
                    {
                        log4net.WriteLogFile(cKeyID + "插入数据库成功");
                    }
                }
                Application.DoEvents();
            }
            catch (Exception ex)
            {
                log4net.WriteLogFile("Camera_YZW_List失败!" + ex.Message);
            }
            finally
            {
                if (YWZ_VAL_LIST.Count > 0)
                {
                    timPreset.Enabled = true;
                }
                else if (YWZ_VAL_LIST.Count == 0)
                {
                    timAfter.Enabled = true;
                }
            }
        }