亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? newclientdlg.cpp

?? 監(jiān)控開發(fā)資料,提供二次開發(fā)源碼和使用說明書
?? CPP
?? 第 1 頁 / 共 5 頁
字號(hào):
{
	int itemp,i;

	if(numberpos <= WINDOWNUM)
		return;

	for(i = 0; i < MAXVIEWNUM; i++)
	{
		if( (myoutput[i].m_iPlayhandle >= 0) || (myoutput[i].m_bFileSave) )
			F_StopClientRecord(i);
	}
	if( (hikClientParam.m_bEnlarged) || (hikClientParam.m_bFullScreen) )
	{
		ArrayWindow(0, WINDOWNUM);	//窗口放大狀態(tài)時(shí),循環(huán)到下一畫面,恢復(fù)原窗口數(shù);					
		MoveCurWin(WINDOWNUM,0);
		hikClientParam.m_bEnlarged = FALSE;
		hikClientParam.m_bFullScreen = FALSE;
	}

	if(numberpos > WINDOWNUM)
	{
		if(numberpos < 2*WINDOWNUM)
		{
			itemp = 0;
		}
		else
		{
			i = numberpos % WINDOWNUM;
			if (i == 0)
				itemp = numberpos - 2*WINDOWNUM ;
			else
				itemp = numberpos - WINDOWNUM -i;

		}
		if(!hikClientParam.m_bUseCard)
		{
			if(!g_bShareSound)
				NET_DVR_CloseSound();
		}
//itemp:確定上一頁要播放監(jiān)控點(diǎn)的起始編號(hào);
		for(i=0;i<WINDOWNUM;i++)
		{
			if(g_bShareSound)
				NET_DVR_CloseSoundShare(myoutput[i].m_iPlayhandle);
			myoutput[i].StopNet();
		}

		for(i=0;i<WINDOWNUM;i++)
		{
			if(itemp+i < MAXNUMBER)
			{
				if(hikClientParam.m_bUseCard)
					myoutput[i].StartCard(&selipinfo[i+itemp]);
				else
				{
					myoutput[i].StartNet(&selipinfo[i+itemp]);
					if(g_bShareSound && (myoutput[i].m_iPlayhandle >= 0))
					{
						hikClientParam.m_bPlaySound[i] = TRUE;
					}
				}
				Sleep(100);
			}
		}

		if (numberpos <= 2*WINDOWNUM)
		{
			numberpos = WINDOWNUM;
			hikClientParam.m_bFrontPage = FALSE;		//沒有上一頁
		}
		else
		{
			i = numberpos % WINDOWNUM;
			if(i == 0)
				numberpos -= WINDOWNUM;
			else
				numberpos -= i;
		}
	}
	
	hikClientParam.m_bNextPage = TRUE;
	UpdateData(FALSE);
}

void CNewclientDlg::F_CyclePause()
{
	if(!hikClientParam.m_bPaused)
	{	
		hikClientParam.m_bPaused = TRUE;
		if(cycletimer)
		{
			KillTimer(CYCLE_TIMER);
			cycletimer = 0;
		}
	}
	else
	{
		m_bChangePage = TRUE;
		F_CyclePlay();
		if(cycletimer == 0)
			cycletimer = SetTimer(CYCLE_TIMER,hikClientParam.m_iCycleTime*1000+3000,NULL);
		hikClientParam.m_bPaused = FALSE;
	}
}

void CNewclientDlg::F_CyclePlay()
{
	int itemp,i,j;
	TRACE("F_CyclePlay");
	if (iSurveillanceNumber <= WINDOWNUM)
		return;	
	m_bChangePage = FALSE; 
	
	if( (hikClientParam.m_bEnlarged) || (hikClientParam.m_bFullScreen) )
	{
		if(hikClientParam.m_bFullScreen) 
		{
			F_EndFullScreen();
		}		
		ArrayWindow(0, WINDOWNUM);	//窗口放大狀態(tài)時(shí),循環(huán)到下一畫面,恢復(fù)原窗口數(shù);					
		MoveCurWin(WINDOWNUM,0);
		hikClientParam.m_bEnlarged = FALSE;
		hikClientParam.m_bFullScreen = FALSE;
	}
	if (iSurveillanceNumber == numberpos)		//循環(huán)已到了最后一頁,又開始第一頁;
		itemp = WINDOWNUM;
	else
	{
		itemp = iSurveillanceNumber - numberpos;
		
		if (itemp > WINDOWNUM)
			itemp = WINDOWNUM;
	}
	
	if (iSurveillanceNumber == numberpos)
		j = 0;
	else
		j = numberpos;
	
	if(!hikClientParam.m_bUseCard)
	{
		if(!g_bShareSound)
			NET_DVR_CloseSound();
	}
	//如果一個(gè)循環(huán)結(jié)束,可能不是從9->9,或許是9->i,所以需要對(duì)對(duì)(9-i)做ClientStop
	//循環(huán)到最后一個(gè)畫面,要播放的窗口數(shù)可能小于WINDOWNUM,所以在播放最后一個(gè)畫面時(shí),關(guān)閉多余的播放窗口;
	for(i=0;i<WINDOWNUM;i++)
	{
//		TRACE("cycle stopplay %d", myoutput[i].m_iPlayhandle);
		if(g_bShareSound)
			NET_DVR_CloseSoundShare(myoutput[i].m_iPlayhandle);
		myoutput[i].StopNet();
//		TRACE("StopNet");
	}
	
	for(i=0;i<itemp;i++)
	{
		if (i+j < MAXNUMBER)
		{	
//			TRACE("play sel = %d", i+j);
			if(hikClientParam.m_bUseCard)
				myoutput[i].StartCard(&selipinfo[i+j]);
			else
			{
				myoutput[i].StartNet(&selipinfo[i+j]);
				if(g_bShareSound && (myoutput[i].m_iPlayhandle >= 0))
				{
					hikClientParam.m_bPlaySound[i] = TRUE;
				}
			}
			Sleep(100);
//			TRACE("cycle startplay %d", myoutput[i].m_iPlayhandle);
		}
	}
	
	//	MyInvalidate();
	itemp = iSurveillanceNumber - numberpos;
	if(itemp ==0)
	{
		numberpos = WINDOWNUM;
	}
	else if(itemp <= WINDOWNUM)
	{
		numberpos = iSurveillanceNumber;
	}	
	else
	{
		numberpos += WINDOWNUM;
	}
	
	m_bChangePage = TRUE;
	
	UpdateData(FALSE);
}

void CNewclientDlg::OnGetpicture() 
{
	// TODO: Add your control notification handler code here
	int i;
	char cFilename[256];
	
	i = iActiveWndNumber;
	CTime time = CTime::GetCurrentTime();
	if(myoutput[i].m_iPlayhandle >= 0)
	{
		sprintf(cFilename, "%s\\Picture_%s_%02d_%4d%02d%02d_%02d%02d%02d_%d.bmp", hikClientParam.m_csPictureSavePath, myoutput[i].m_csIP, myoutput[i].m_iChannel,	\
			time.GetYear(), time.GetMonth(), time.GetDay(), time.GetHour(), time.GetMinute(), time.GetSecond(), GetTickCount());
		TRACE("Picture save file name : %s", cFilename);
		if(hikClientParam.m_bUseCard)
		{
			//新SDK中暫時(shí)無此接口
		//	MP4_ClientCapPicFile_Card(myoutput[i].m_iPlayhandle, cFilename);
		}
		else
		{
			if(NET_DVR_CapturePicture(myoutput[i].m_iPlayhandle, cFilename))
			{
				CString sTemp;	
				sTemp.Format("抓圖成功 %s!",cFilename);
				AfxMessageBox(sTemp);
				return;
			}
			else
			{
				AfxMessageBox("抓圖失敗!");
			}
		}
	}
}

void CNewclientDlg::OnRecord() 
{
	// TODO: Add your control notification handler code here
	int i;
	
	if(hikClientParam.m_bAutoRecord)
		return;
	i = iActiveWndNumber;
	if( (myoutput[i].m_iPlayhandle >= 0) && (!myoutput[i].m_bFileSave) )
	{
		//AfxMessageBox("111");
		if(F_MakeDir())
			F_StartClientRecord(i);	
	}
	else if(myoutput[i].m_bFileSave)
		F_StopClientRecord(i);
}

BOOL CNewclientDlg::F_MakeDir()
{
	CString sTemp;
	DWORD dirattr;
	CTime time;
	
	time = CTime::GetCurrentTime();
	sTemp.Format("%c:\\mpeg4record\\", m_cCurrentRecordDriver);
	dirattr = GetFileAttributes(sTemp);
	if(dirattr == FILE_ATTRIBUTE_DIRECTORY)
	{
		sTemp.Format("%c:\\mpeg4record\\%4d-%02d-%02d\\", m_cCurrentRecordDriver, time.GetYear(), time.GetMonth(), time.GetDay());
		dirattr=GetFileAttributes(sTemp);
		if(dirattr == FILE_ATTRIBUTE_DIRECTORY)
		{
			hikClientParam.m_csClientRecordPath.Format("%s",sTemp);
			TRACE("已經(jīng)創(chuàng)建了目錄%s", sTemp);
			return TRUE;
		}
		else
		{
			if(!CreateDirectory(sTemp, NULL))
			{
				AfxMessageBox("創(chuàng)建年月日目錄失敗!");
				return FALSE;
			}
			else
			{
				hikClientParam.m_csClientRecordPath.Format("%s",sTemp);
				TRACE("在已有的目錄%c:\\mpeg4record下創(chuàng)建子目錄%4d-%02d-%02d", m_cCurrentRecordDriver, time.GetYear(), time.GetMonth(), time.GetDay());
				return TRUE;
			}
		}	
	}
	if(!CreateDirectory(sTemp, NULL))
	{
		TRACE("創(chuàng)建mpeg4record目錄失敗!");
		return FALSE;
	}
	sTemp.Format("%c:\\mpeg4record\\%4d-%02d-%02d\\",m_cCurrentRecordDriver, time.GetYear(), time.GetMonth(), time.GetDay());
	if(!CreateDirectory(sTemp, NULL))
	{
		return FALSE;
	}
	hikClientParam.m_csClientRecordPath.Format("%s",sTemp);
	TRACE("先創(chuàng)建%c:\\mpeg4record目錄,再創(chuàng)建子目錄%4d-%02d-%02d", m_cCurrentRecordDriver, time.GetYear(), time.GetMonth(), time.GetDay());
	return TRUE;
}

void CNewclientDlg::F_StartClientRecord(int iRecordWndIndex)
{
	int i;
	char cFilename[256];
	
	i = iRecordWndIndex;
	TRACE("Start myoutput[%d] Client Record", i);
	CTime time = CTime::GetCurrentTime();
	sprintf(cFilename, "%s%s_%02d_%4d%02d%02d_%02d%02d%02d.mp4", hikClientParam.m_csClientRecordPath, myoutput[i].m_csIP, myoutput[i].m_iChannel,		\
		time.GetYear(), time.GetMonth(), time.GetDay(), time.GetHour(), time.GetMinute(), time.GetSecond() );
	if(!NET_DVR_SaveRealData(myoutput[i].m_iPlayhandle, cFilename))
	{
		AfxMessageBox("錄像失敗!");
		return;
	}
	TRACE("Client Record Filename = %s", cFilename);
	myoutput[i].m_lChangeFileNameTime = time.GetTime() + hikClientParam.m_iRecordFileInterval * 60;
	myoutput[i].m_bFileSave = TRUE;
	m_pCapLed[i]->SetLed(CLed::LED_COLOR_RED,CLed::LED_ON,CLed::LED_ROUND);	
}

void CNewclientDlg::F_StopClientRecord(int iRecordWndIndex)
{
	int i;
	
	i = iRecordWndIndex;
	TRACE("Stop myoutput[%d] Client Record", i);
	NET_DVR_StopSaveRealData(myoutput[i].m_iPlayhandle);
	myoutput[i].m_bFileSave = FALSE;
	m_pCapLed[i]->SetLed(CLed::LED_COLOR_RED,CLed::LED_DISABLED,CLed::LED_ROUND);
}
/*
void CNewclientDlg::OnHide() 
{
	// TODO: Add your control notification handler code here
	ShowWindow(SW_MINIMIZE);
}
*/

void CNewclientDlg::OnEventlist() 
{
	// TODO: Add your control notification handler code here
	int i;
	CEventLog	EventLogDlg;
	EventLogDlg.DoModal();
	SetEvent(hVideoBeeper);	
	for(i = 0; i < MAXVIEWNUM; i++)
	{
		if(hikClientParam.m_iAlarmHandle[i] >= 0)
		{
			m_pAlarmLed[i]->SetLed(CLed::LED_COLOR_GREEN,CLed::LED_ON,CLed::LED_ROUND);
		}
		else
			m_pAlarmLed[i]->SetLed(CLed::LED_COLOR_RED,CLed::LED_DISABLED,CLed::LED_ROUND);
	}
	for(i = 0; i < MAXALARMIN; i++)
	{
		alarminfo[i].m_csIP.Format(_T(""));
		alarminfo[i].m_csUsername.Format(_T(""));
		alarminfo[i].m_csPassword.Format(_T(""));
		alarminfo[i].m_iChannel = -1;
		alarminfo[i].m_iAlarmLevel = -1;
		alarminfo[i].m_iAlarmType = -1;
		alarminfo[i].m_iPortIndex = -1;
		alarminfo[i].m_wServerPort = 8000;
	}
	m_iAlarmNumber = 0;
}

void CNewclientDlg::OnButtonalarmset() 
{
	// TODO: Add your control notification handler code here
	int i;
	
	CSetAlarm	SetAlarmDlg;
	SetAlarmDlg.DoModal();
	if(SetAlarmDlg.m_bOK)
	{
		for(i = 0; i < MAXVIEWNUM; i++)
		{
			if(hikClientParam.m_iAlarmHandle[i] >= 0)
			{
				m_pAlarmLed[i]->SetLed(CLed::LED_COLOR_GREEN,CLed::LED_ON,CLed::LED_ROUND);
			}
			else
			{
				m_pAlarmLed[i]->SetLed(CLed::LED_COLOR_RED,CLed::LED_DISABLED,CLed::LED_ROUND);
			}
		}
	}
}

void CNewclientDlg::OnVideofileplay() 
{
	// TODO: Add your control notification handler code here
	CPlayBack	PlayBackDlg;
	PlayBackDlg.DoModal();
}

BOOL CNewclientDlg::F_JudgeDiskFull()
{
	int i;
	ULARGE_INTEGER FreeSpace,CallerSpace,TotalSpace;
	CString csRootPath;	
	
	for(i = hikClientParam.m_iStartRecordDriver; i < hikClientParam.m_iEndRecordDriver + 1; i++)
	{	
		csRootPath.Format("%c%s",m_cHardDriver[i],":\\");	//從錄像起始驅(qū)動(dòng)器開始	
		GetDiskFreeSpaceEx(csRootPath,&CallerSpace,&TotalSpace,&FreeSpace);
		if(CallerSpace.QuadPart > MINSPACE)
		{
			m_cCurrentRecordDriver = m_cHardDriver[i];
//			TRACE("m_cCurrentRecordDriver = %c:\\", m_cCurrentRecordDriver);
			hikClientParam.m_bAllDiskFull = FALSE;
			return	TRUE;
		}
	}
	hikClientParam.m_bAllDiskFull = TRUE;
	return FALSE;
}

void CNewclientDlg::OnTimer(UINT nIDEvent) 
{
	// TODO: Add your message handler code here and/or call default
	time_t	lCurrentTime;
	CString	csRootPath;
	CString csTemp;
	int i,j;
	CTime time1 = CTime::GetCurrentTime();
	int iWeekday = time1.GetDayOfWeek() - 1;
	WORD	iNowTime = time1.GetHour() * 100 + time1.GetMinute();
	NET_DVR_TIME CurTime;
	CurTime.dwYear = time1.GetYear();
	CurTime.dwMonth = time1.GetMonth();
	CurTime.dwDay = time1.GetDay();
	CurTime.dwHour = time1.GetHour();
	CurTime.dwMinute = time1.GetMinute();
	CurTime.dwSecond = time1.GetSecond();
	switch(nIDEvent)
	{
	case CYCLE_TIMER:
		if(m_bChangePage)
			F_CyclePlay();
		break;
	case FREESPACE_TIMER:
		csRootPath.Format("%c:\\", m_cCurrentRecordDriver);	
		ULARGE_INTEGER FreeSpace,CallerSpace,TotalSpace;
		GetDiskFreeSpaceEx(csRootPath,&CallerSpace,&TotalSpace,&FreeSpace);
		hikClientParam.m_bAllDiskFull = FALSE;
		if(CallerSpace.QuadPart < MINSPACE)
		{
			csTemp.Format("%4d-%02d-%02d %02d:%02d:%02d 硬盤驅(qū)動(dòng)器%c已滿", CurTime.dwYear, CurTime.dwMonth, CurTime.dwDay, CurTime.dwHour, CurTime.dwMinute, CurTime.dwSecond, m_cCurrentRecordDriver);
			TRACE(csTemp);
			//AfxMessageBox(csTemp);
			if(!F_JudgeDiskFull())		//所有硬盤都滿,刪除8個(gè)最早的錄像文件
			{
				if(hikClientParam.m_bCycleRecord)
					F_DeleteClientRecordFile();
				else
				{
					for(i = 0; i < MAXVIEWNUM; i++)
					{
						if( 

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美艳星brazzers| 欧美一区二区视频在线观看2022| 成人av免费在线| 91豆麻精品91久久久久久| 色哟哟一区二区在线观看| 99r国产精品| 欧洲av在线精品| 欧美一激情一区二区三区| 国产欧美一区二区在线| 久久久午夜精品理论片中文字幕| xnxx国产精品| 亚洲男人天堂一区| 国产综合色产在线精品| 国产suv一区二区三区88区| 91一区二区三区在线播放| 欧美日韩精品三区| 欧美日韩国产一级二级| 日韩欧美国产一区二区三区| 日韩丝袜美女视频| 中文av字幕一区| 五月天一区二区| 色视频欧美一区二区三区| 69精品人人人人| 中文字幕高清不卡| 美女被吸乳得到大胸91| 99精品偷自拍| 精品久久久久久久久久久久包黑料 | 一区二区三区免费看视频| 成人性生交大合| 久久久久国产一区二区三区四区| 亚洲精品视频免费观看| 床上的激情91.| 91精品国产高清一区二区三区 | 99视频国产精品| 欧美国产欧美亚州国产日韩mv天天看完整 | 久久久久久久久久久久久夜| 国产精品免费看片| 高清不卡在线观看| 欧美日韩综合一区| 亚洲另类色综合网站| 麻豆极品一区二区三区| 欧美电影免费观看高清完整版在线 | 欧美日韩国产中文| 亚洲电影你懂得| 欧美日韩免费一区二区三区视频| 日韩欧美国产精品一区| 日韩制服丝袜先锋影音| 91精品国产91久久久久久一区二区 | 一本色道久久加勒比精品| 国产偷国产偷亚洲高清人白洁| 国产伦精一区二区三区| 欧美成人一区二区三区在线观看| 亚洲一区二区在线免费看| 欧美日韩色一区| 久久久不卡网国产精品一区| 国产成人免费视频一区| 亚洲精品成人少妇| 欧美一a一片一级一片| 亚洲视频在线一区| 色欧美日韩亚洲| 激情文学综合丁香| 日欧美一区二区| 91精品国产91久久综合桃花 | 亚洲精品中文字幕乱码三区| 欧美日本一区二区在线观看| 国产成人亚洲综合a∨婷婷图片 | 粉嫩av亚洲一区二区图片| 日韩伦理免费电影| 一本久久a久久精品亚洲| 免费视频一区二区| 国产清纯美女被跳蛋高潮一区二区久久w | 91浏览器入口在线观看| 日韩不卡一二三区| 天天操天天干天天综合网| 国产精品毛片久久久久久久| 日韩一区二区精品葵司在线| 国产精品一区二区久久不卡| 亚洲精品国产第一综合99久久| 欧美私人免费视频| 成人在线一区二区三区| 亚洲成a人在线观看| 午夜精品123| 一区二区三国产精华液| 日韩码欧中文字| 91福利精品视频| 九九精品一区二区| 亚洲午夜一二三区视频| 中文一区二区在线观看| 久久久亚洲国产美女国产盗摄| 欧美精品国产精品| 99精品欧美一区二区三区小说| 精品亚洲免费视频| 激情国产一区二区| 精品一区二区在线播放| 久久99精品国产麻豆婷婷| 日本不卡在线视频| 欧美aaa在线| 国产在线一区二区综合免费视频| 美女视频一区在线观看| 蜜臀久久久99精品久久久久久| 日日夜夜一区二区| 日韩成人av影视| 国产成人午夜视频| av一区二区三区黑人| 91最新地址在线播放| 欧美性猛交一区二区三区精品| 欧美老年两性高潮| 欧美日本精品一区二区三区| 正在播放亚洲一区| 久久久久久久久久久久久久久99 | 91精品啪在线观看国产60岁| 精品久久久久99| 欧美精品在线观看播放| 久久无码av三级| 亚洲毛片av在线| 国产精品一区二区视频| 91豆麻精品91久久久久久| 亚洲精品一线二线三线无人区| 中文字幕第一区综合| 亚洲少妇中出一区| 国产在线播放一区二区三区| 欧美曰成人黄网| 久久一二三国产| 日本一不卡视频| 欧美电影免费观看高清完整版在线观看| 亚洲一级不卡视频| 欧美日韩二区三区| 精品一区二区三区香蕉蜜桃| 欧美色偷偷大香| 奇米一区二区三区av| 精品久久久影院| 不卡一卡二卡三乱码免费网站| 亚洲欧美日韩综合aⅴ视频| 欧美日精品一区视频| 捆绑调教美女网站视频一区| 国产午夜精品一区二区三区视频 | 精品国偷自产国产一区| 国产精品亚洲午夜一区二区三区| 国产亚洲午夜高清国产拍精品| 色琪琪一区二区三区亚洲区| 精品国产乱码久久久久久久 | 婷婷综合另类小说色区| 中文字幕精品一区二区三区精品| 色婷婷综合久久久中文一区二区 | 91蜜桃免费观看视频| 亚洲国产岛国毛片在线| 国产成人精品免费| 国产精品欧美综合在线| 99在线精品免费| 三级欧美韩日大片在线看| 91精品国产综合久久福利| 蜜桃久久精品一区二区| 欧美成人激情免费网| k8久久久一区二区三区 | 亚洲久草在线视频| 久久影院午夜片一区| 欧美少妇一区二区| 成人短视频下载| 国产精选一区二区三区| 亚洲国产精品久久人人爱| 国产精品毛片高清在线完整版| 日韩精品一区二区在线| 欧美日韩精品二区第二页| 色视频一区二区| 日本丶国产丶欧美色综合| 国产99久久久久久免费看农村| 国内精品伊人久久久久av影院| 亚洲成人精品一区二区| 亚洲一区在线观看免费观看电影高清 | 综合色中文字幕| 亚洲福利视频一区| 亚洲欧洲国产日韩| 91精品国产福利在线观看| 在线免费精品视频| 日本视频一区二区| 国产精品丝袜久久久久久app| 在线亚洲高清视频| 亚洲成人自拍偷拍| 亚洲一二三专区| 亚洲欧美成人一区二区三区| 91麻豆精品国产91久久久久久久久 | 首页国产欧美日韩丝袜| 亚洲狠狠丁香婷婷综合久久久| 亚洲精品视频在线看| 亚洲午夜成aⅴ人片| 免费一级片91| 国内成人免费视频| 北岛玲一区二区三区四区| 91视频一区二区| 欧美大黄免费观看| 国产精品免费人成网站| 亚洲自拍偷拍九九九| 国产一区二区h| 99精品视频一区二区三区| 欧美日免费三级在线| 国产目拍亚洲精品99久久精品| 亚洲欧美二区三区| 国产精品一区一区三区| 欧美在线不卡一区| 国产精品久久精品日日|