private void timAuto_Tick(object sender, EventArgs e) { String cAppDir = Path.GetDirectoryName(Application.ExecutablePath) + "\\AI\\"; if (Directory.Exists(cAppDir)) { Directory.CreateDirectory(cAppDir); } String cImageFileName = cAppDir + "01.jpg"; ActiveImageName = cImageFileName; int iCode = IVS_API.IVS_SDK_LocalSnapshot(ApplicationEvent.iSession, (UInt32)ulRealPlayHandle, 1, cImageFileName); if (iCode == 0) { Stream s = new FileStream(cImageFileName, FileMode.Open, FileAccess.Read, FileShare.Read); Image img = new Bitmap(s); s.Close(); picBox.Image = img; RectList = IMGAI.getImageRect(cImageFileName); String cStr = IMGAI.getImageText(ActiveImageName); if (!String.IsNullOrWhiteSpace(cStr)) { this.txtPTX.Text = cStr; } picBox.Image = IMGAI.getImage(cImageFileName.Replace("01.jpg", "02.jpg")); } else { log4net.WriteLogFile("IVS_SDK_LocalSnapshot:" + iCode); } }
private void btnTake_Click(object sender, EventArgs e) { String cAppDir = Path.GetDirectoryName(Application.ExecutablePath) + "\\Images\\"; if (Directory.Exists(cAppDir)) { Directory.CreateDirectory(cAppDir); } String cKeyID = AutoID.getAutoID(); String cImageFileName = cAppDir + cKeyID + ".jpg"; int iCode = IVS_API.IVS_SDK_LocalSnapshot(ApplicationEvent.iSession, (UInt32)ulRealPlayHandle, 1, cImageFileName); if (iCode == 0) { } else { log4net.WriteLogFile("IVS_SDK_LocalSnapshot:" + iCode); } }
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; } } }