📄 netctldvrlogdlg.cpp
字号:
// NetCtlDvrLogDlg.cpp : implementation file
//
#include "stdafx.h"
#include "Sample.h"
#include "NetCtlDvrLogDlg.h"
#include "NetRemoteCtrlDlg.h"
extern CNetRemoteCtrlDlg *pNetRemoteCtlDlg;
#define NET_OPERATION_LOG_MSG 1 //操作日志
#define NET_ALARM_LOG_MSG 2 //报警日志
#define NET_SYSTEM_LOG_MSG 3 //系统日志
#define NET_NET_LOG_MSG 4 //网络日志
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
extern BOOL ENGLISH;
//extern CNetDlg *pNetDlg;
/////////////////////////////////////////////////////////////////////////////
// CNetCtlDvrLogDlg dialog
extern char logBuf[64*1024];
CNetCtlDvrLogDlg::CNetCtlDvrLogDlg(CWnd* pParent /*=NULL*/)
: CDialog(CNetCtlDvrLogDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CNetCtlDvrLogDlg)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
}
void CNetCtlDvrLogDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CNetCtlDvrLogDlg)
DDX_Control(pDX, IDC_LIST_LOGREPORT, m_LogList);
DDX_Control(pDX, IDC_DATETIMEPICKER, m_LogDate);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CNetCtlDvrLogDlg, CDialog)
//{{AFX_MSG_MAP(CNetCtlDvrLogDlg)
ON_BN_CLICKED(IDC_BTN_GETSYSLOG, OnBtnGetsyslog)
ON_BN_CLICKED(IDC_BTN_GETNETLOG, OnBtnGetnetlog)
ON_BN_CLICKED(IDC_BTN_GETALARMLOG, OnBtnGetalarmlog)
ON_BN_CLICKED(IDC_BTN_GETOPLOG, OnBtnGetoplog)
ON_WM_TIMER()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CNetCtlDvrLogDlg message handlers
BOOL CNetCtlDvrLogDlg::OnInitDialog()
{
char * l_QueryDate;
char * l_QuerySystemLog;
char * l_QueryNetLog;
char * l_QueryAlarmLog;
char * l_QueryOpLog;
char * l_SaveLog;
char * l_time;
char * l_content;
char * l_index;
if(ENGLISH)
{
l_QueryDate = _T("Query Date:");
l_QuerySystemLog = _T("Get System Log");
l_QueryNetLog = _T("Get Network Log");
l_QueryAlarmLog = _T("Get Alarm Log");
l_QueryOpLog = _T("Get Operation Log");
l_SaveLog = _T("Save Log");
l_time = _T("Time");
l_content = _T("Content");
l_index = _T("Index");
}
else
{
l_QueryDate = _T("查询日期 :");
l_QuerySystemLog = _T("查询系统日志");
l_QueryNetLog = _T("查询网络日志");
l_QueryAlarmLog = _T("查询报警日志");
l_QueryOpLog = _T("查询操作日志");
l_SaveLog = _T("保存日志");
l_time = _T("时间");
l_content = _T("内容");
l_index = _T("序号");
}
GetDlgItem(IDC_BTN_GETSYSLOG)->SetWindowText(l_QuerySystemLog);
GetDlgItem(IDC_BTN_GETNETLOG)->SetWindowText(l_QueryNetLog);
GetDlgItem(IDC_BTN_GETALARMLOG)->SetWindowText(l_QueryAlarmLog);
GetDlgItem(IDC_BTN_GETOPLOG)->SetWindowText(l_QueryOpLog);
CDialog::OnInitDialog();
// TODO: Add extra initialization here
m_LogList.InsertColumn(0,l_index,LVCFMT_LEFT ,50);
m_LogList.InsertColumn(1,l_time,LVCFMT_LEFT ,150);
m_LogList.InsertColumn(2,l_content ,LVCFMT_LEFT,300);
m_LogList.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_TRACKSELECT|LVS_EX_GRIDLINES);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CNetCtlDvrLogDlg::OnBtnGetsyslog()
{
// TODO: Add your control notification handler code here
m_LogList.DeleteAllItems();
SendQueryCommand(NET_SYSTEM_LOG_MSG);
}
void CNetCtlDvrLogDlg::OnBtnGetnetlog()
{
// TODO: Add your control notification handler code here
m_LogList.DeleteAllItems();
SendQueryCommand(NET_NET_LOG_MSG);
}
void CNetCtlDvrLogDlg::OnBtnGetalarmlog()
{
// TODO: Add your control notification handler code here
m_LogList.DeleteAllItems();
SendQueryCommand(NET_ALARM_LOG_MSG);
}
void CNetCtlDvrLogDlg::OnBtnGetoplog()
{
// TODO: Add your control notification handler code here
m_LogList.DeleteAllItems();
SendQueryCommand(NET_OPERATION_LOG_MSG);
}
void CNetCtlDvrLogDlg::SendQueryCommand(unsigned char nType)
{
char * l_Err;
if(ENGLISH)
{
l_Err = _T("The Year you Can selected is between 2000 - 2099");
}
else
l_Err = _T("选择的年份只能在2000年至2099年之间");
UpdateData();
memset(logBuf,0,64*1024);
m_LogList.DeleteAllItems();
m_LogList.UpdateData(FALSE);
CTime timeTime;
DWORD dwerr = m_LogDate.GetTime(timeTime);
if(timeTime.GetYear() > 2099 || timeTime.GetYear() < 2000)
{
AfxMessageBox(l_Err);
}
if (dwerr == GDT_VALID)
{
pNetRemoteCtlDlg->GetDvrLog(nType,timeTime);
GetDlgItem(IDC_BTN_GETSYSLOG)->EnableWindow(FALSE);
GetDlgItem(IDC_BTN_GETNETLOG)->EnableWindow(FALSE);
GetDlgItem(IDC_BTN_GETALARMLOG)->EnableWindow(FALSE);
GetDlgItem(IDC_BTN_GETOPLOG)->EnableWindow(FALSE);
SetTimer(1,10000,NULL);
}
else
{
// The user cleared the "none" box.
AfxMessageBox(_T("Time not set!"));
}
}
void CNetCtlDvrLogDlg::OnTimer(UINT nIDEvent)
{
// TODO: Add your message handler code here and/or call default
switch(nIDEvent)
{
case 1:
KillTimer(1);
GetDlgItem(IDC_BTN_GETSYSLOG)->EnableWindow(TRUE);
GetDlgItem(IDC_BTN_GETNETLOG)->EnableWindow(TRUE);
GetDlgItem(IDC_BTN_GETALARMLOG)->EnableWindow(TRUE);
GetDlgItem(IDC_BTN_GETOPLOG)->EnableWindow(TRUE);
break;
default:
break;
}
CDialog::OnTimer(nIDEvent);
}
BOOL CNetCtlDvrLogDlg::PreTranslateMessage(MSG* pMsg)
{
// TODO: Add your specialized code here and/or call the base class
DWORD t1=0;
DWORD t2=0;
t1=pMsg->message;
t2=(DWORD)pMsg->wParam;
if(t1==WM_KEYDOWN&&(t2==VK_RETURN||t2==VK_ESCAPE))
return true;
return CDialog::PreTranslateMessage(pMsg);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -