📄 search.cpp
字号:
// Search.cpp : implementation file
//
#include "stdafx.h"
#include "Mp4Player.h"
#include "Search.h"
#include "Decode.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CSearch dialog
CSearch::CSearch(CWnd* pParent /*=NULL*/)
: CDialog(CSearch::IDD, pParent)
{
//{{AFX_DATA_INIT(CSearch)
m_Local = TRUE;
m_Remote = FALSE;
//}}AFX_DATA_INIT
}
void CSearch::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CSearch)
DDX_Control(pDX, IDC_SearchDATE, m_SearDate);
DDX_Control(pDX, IDC_LIST1, m_ListBox);
DDX_Check(pDX, IDC_LOCAL, m_Local);
DDX_Check(pDX, IDC_REMOTE, m_Remote);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CSearch, CDialog)
//{{AFX_MSG_MAP(CSearch)
ON_BN_CLICKED(IDC_LISTTODAY, OnListtoday)
ON_BN_CLICKED(IDC_SEARCH, OnSearch)
ON_BN_CLICKED(IDC_PLAY, OnPlay)
ON_LBN_DBLCLK(IDC_LIST1, OnDblclkList1)
ON_BN_CLICKED(IDC_BUTTON10, OnDeleteFile)
ON_BN_CLICKED(IDC_LOCAL, OnLocal)
ON_BN_CLICKED(IDC_REMOTE, OnRemote)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CSearch message handlers
void CSearch::OnListtoday()
{
// TODO: Add your control notification handler code here
char cmd[1];
TRANSDATE TransDate;
TRANS_SEARCH2 Trans_MarkedFile;
m_ListBox.ResetContent();
SYSTEMTIME systime;
::GetLocalTime(&systime);
::memset(&TransDate,0,sizeof(TRANSDATE));
TransDate.Camera=0;
TransDate.StartDate.m_day=systime.wDay;
TransDate.StartDate.m_hour=0;
TransDate.StartDate.m_min=0;
TransDate.StartDate.m_month=systime.wMonth;
TransDate.StartDate.m_year=systime.wYear;
TransDate.EndDate.m_day=systime.wDay;
TransDate.EndDate.m_hour=23;
TransDate.EndDate.m_min=59;
TransDate.EndDate.m_month=systime.wMonth;
TransDate.EndDate.m_year=systime.wYear;
TransDate.SearchTypeorSet=4;
::memset(&Trans_MarkedFile,0,sizeof(TRANS_SEARCH2));
InitVRTLink(ConnectIP,ConnectPort);
cmd[0]=VRTSearch;
SendVRTData(cmd,1);
Sleep(1);
SendVRTData((char *)&TransDate,sizeof(TRANSDATE));
RecvVRTData((char *)&Trans_MarkedFile,sizeof(TRANS_SEARCH2));
CloseVRTLink();
if(Trans_MarkedFile.Total==0)
{
m_ListBox.AddString(" 没有视频!");
return;
}
char buf[200];
char sz_marked[200];
int m_year;
int m_month;
int m_day;
int m_hour;
int m_min;
int m_sec;
int m_Duration;
int m_type;
int m_Camera;
m_ListBox.ResetContent();
for(int i=0;i<Trans_MarkedFile.Total;i++)
{
::memset(buf,0,sizeof(buf));
m_hour=Trans_MarkedFile.T_Search[i].TransDate.StartDate.m_hour;
m_min=Trans_MarkedFile.T_Search[i].TransDate.StartDate.m_min;
m_sec=Trans_MarkedFile.T_Search[i].TransDate.StartDate.m_sec;
m_day=Trans_MarkedFile.T_Search[i].TransDate.StartDate.m_day;
m_month=Trans_MarkedFile.T_Search[i].TransDate.StartDate.m_month;
m_year=Trans_MarkedFile.T_Search[i].TransDate.StartDate.m_year;
m_type=Trans_MarkedFile.T_Search[i].TransDate.SearchTypeorSet;
m_Camera=Trans_MarkedFile.T_Search[i].TransDate.Camera;
m_Duration=Trans_MarkedFile.T_Search[i].TransDate.Duration;
sprintf(buf,"%02d",m_hour);
strcpy(sz_marked,buf);
strcat(sz_marked,":");
sprintf(buf,"%02d",m_min);
strcat(sz_marked,buf);
strcat(sz_marked,":");
sprintf(buf,"%02d",m_sec);
strcat(sz_marked,buf);
strcat(sz_marked," ");
sprintf(buf,"%02d",m_day);
strcat(sz_marked,buf);
strcat(sz_marked,"/");
sprintf(buf,"%02d",m_month);
strcat(sz_marked,buf);
strcat(sz_marked,"/");
sprintf(buf,"%02d",m_year);
strcat(sz_marked,buf);
strcat(sz_marked," ");
m_hour=Trans_MarkedFile.T_Search[i].TransDate.EndDate.m_hour;
m_min=Trans_MarkedFile.T_Search[i].TransDate.EndDate.m_min;
m_sec=Trans_MarkedFile.T_Search[i].TransDate.EndDate.m_sec;
m_day=Trans_MarkedFile.T_Search[i].TransDate.EndDate.m_day;
m_month=Trans_MarkedFile.T_Search[i].TransDate.EndDate.m_month;
m_year=Trans_MarkedFile.T_Search[i].TransDate.EndDate.m_year;
sprintf(buf,"%02d",m_hour);
strcat(sz_marked,buf);
strcat(sz_marked,":");
sprintf(buf,"%02d",m_min);
strcat(sz_marked,buf);
strcat(sz_marked,":");
sprintf(buf,"%02d",m_sec);
strcat(sz_marked,buf);
strcat(sz_marked," ");
sprintf(buf,"%02d",m_day);
strcat(sz_marked,buf);
strcat(sz_marked,"/");
sprintf(buf,"%02d",m_month);
strcat(sz_marked,buf);
strcat(sz_marked,"/");
sprintf(buf,"%02d",m_year);
strcat(sz_marked,buf);
strcat(sz_marked," ");
if(m_type==0){
strcat(sz_marked,"****");} //Marked
else
if(m_type==1){
strcat(sz_marked,"***"); //Alaram
}
else
strcat(sz_marked,"Mpg");
strcat(sz_marked," ");
sprintf(buf,"%02d",m_Camera);
strcat(sz_marked,buf);
strcat(sz_marked," ");
int m_Duration_min=m_Duration/60;
int m_Duration_ss=m_Duration%60;
sprintf(buf,"%02d",m_Duration_min);
strcat(sz_marked,buf);
strcat(sz_marked,":");
sprintf(buf,"%02d",m_Duration_ss);
strcat(sz_marked,buf);
m_ListBox.AddString(sz_marked);
}
Trans_MarkedFile2=Trans_MarkedFile;
m_List_Flag=3; //today
// SetDlgDvrState();
}
void CSearch::OnSearch()
{
// TODO: Add your control notification handler code here
CString m_Houre;
CString m_Min;
CString m_Sec;
char cmd[1];
UpdateData(true);
GetDlgItemText(IDC_EDIT_Start_HH,m_Houre);
GetDlgItemText(IDC_EDIT_Start_MIN,m_Min);
GetDlgItemText(IDC_EDIT_Start_SS,m_Sec);
CDateTimeCtrl* pCtrl = (CDateTimeCtrl*) GetDlgItem(IDC_SearchDATE);
ASSERT(pCtrl != NULL);
// get as a CTime
CTime timeTime;
DWORD dwResult = pCtrl->GetTime(timeTime);
TRANSDATE TransDate;
TRANS_SEARCH2 Trans_MarkedFile;
SYSTEMTIME systime;
::GetLocalTime(&systime);
::memset(&TransDate,0,sizeof(TRANSDATE));
TransDate.Camera=0;
TransDate.StartDate.m_day=timeTime.GetDay();
TransDate.StartDate.m_hour=atoi((const char*)m_Houre);
TransDate.StartDate.m_min=atoi((const char*)m_Min);
TransDate.StartDate.m_sec=atoi((const char*)m_Sec);
TransDate.StartDate.m_month=timeTime.GetMonth();
TransDate.StartDate.m_year=timeTime.GetYear();
TransDate.EndDate.m_day=timeTime.GetDay();
TransDate.EndDate.m_hour=23;
TransDate.EndDate.m_min=59;
TransDate.EndDate.m_sec=59;
TransDate.EndDate.m_month=timeTime.GetMonth();
TransDate.EndDate.m_year=timeTime.GetYear();
TransDate.SearchTypeorSet=4;
m_ListBox.ResetContent();
::memset(&Trans_MarkedFile,0,sizeof(TRANS_SEARCH2));
InitVRTLink(ConnectIP,ConnectPort);
cmd[0]=VRTSearch;
SendVRTData(cmd,1);
Sleep(1);
SendVRTData((char *)&TransDate,sizeof(TRANSDATE));
RecvVRTData((char *)&Trans_MarkedFile,sizeof(TRANS_SEARCH2));
CloseVRTLink();
if(Trans_MarkedFile.Total==0)
{
m_ListBox.AddString(" 没有视频!");
return;
}
char buf[200];
char sz_marked[200];
int m_year;
int m_month;
int m_day;
int m_hour;
int m_min;
int m_sec;
int m_Duration;
int m_type;
int m_Camera;
m_ListBox.ResetContent();
for(int i=0;i<Trans_MarkedFile.Total;i++)
{
::memset(buf,0,sizeof(buf));
m_hour=Trans_MarkedFile.T_Search[i].TransDate.StartDate.m_hour;
m_min=Trans_MarkedFile.T_Search[i].TransDate.StartDate.m_min;
m_sec=Trans_MarkedFile.T_Search[i].TransDate.StartDate.m_sec;
m_day=Trans_MarkedFile.T_Search[i].TransDate.StartDate.m_day;
m_month=Trans_MarkedFile.T_Search[i].TransDate.StartDate.m_month;
m_year=Trans_MarkedFile.T_Search[i].TransDate.StartDate.m_year;
m_type=Trans_MarkedFile.T_Search[i].TransDate.SearchTypeorSet;
m_Camera=Trans_MarkedFile.T_Search[i].TransDate.Camera;
m_Duration=Trans_MarkedFile.T_Search[i].TransDate.Duration;
sprintf(buf,"%02d",m_hour);
strcpy(sz_marked,buf);
strcat(sz_marked,":");
sprintf(buf,"%02d",m_min);
strcat(sz_marked,buf);
strcat(sz_marked,":");
sprintf(buf,"%02d",m_sec);
strcat(sz_marked,buf);
strcat(sz_marked," ");
sprintf(buf,"%02d",m_day);
strcat(sz_marked,buf);
strcat(sz_marked,"/");
sprintf(buf,"%02d",m_month);
strcat(sz_marked,buf);
strcat(sz_marked,"/");
sprintf(buf,"%02d",m_year);
strcat(sz_marked,buf);
strcat(sz_marked," ");
m_hour=Trans_MarkedFile.T_Search[i].TransDate.EndDate.m_hour;
m_min=Trans_MarkedFile.T_Search[i].TransDate.EndDate.m_min;
m_sec=Trans_MarkedFile.T_Search[i].TransDate.EndDate.m_sec;
m_day=Trans_MarkedFile.T_Search[i].TransDate.EndDate.m_day;
m_month=Trans_MarkedFile.T_Search[i].TransDate.EndDate.m_month;
m_year=Trans_MarkedFile.T_Search[i].TransDate.EndDate.m_year;
sprintf(buf,"%02d",m_hour);
strcat(sz_marked,buf);
strcat(sz_marked,":");
sprintf(buf,"%02d",m_min);
strcat(sz_marked,buf);
strcat(sz_marked,":");
sprintf(buf,"%02d",m_sec);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -