一动对话框就停止录像以及保存初始化文件名问题
想停止录像时,本应该按一下制定的按钮结束录像,但现在的问题是当你一移动对话框或者任意按一下一个按钮(只有一个按钮是有结束录像命令响应的),他都会终止录像,这个让我纠结了。还有就是一按下开始录像的按钮时,会弹出个视频文件保存对话框,其构造函数为 CFileDialog savevideodlg(FALSE,_T("avi"),_T("*.avi"));其中第三个参数为对话框中初始文件名。单单这样没问题,但当我吧第三个参数设为_T(strCurTime+".avi")时(strCurTime为得到系统时间的字符串),另存为对话框就不会弹出,因此if语句就不能判断了,也无法开始录像。去掉这个字符串又可以的,不知道为什么?
CString strCurTime;
CTime time=CTime::GetCurrentTime();
strCurTime.Format("D:\\%d-%d-%d_%d:%d:%d",time.GetYear(),time.GetMonth(),
time.GetDay(),time.GetHour(),time.GetMinute(),time.GetSecond());//得到系统时间,默认存放在D盘
CString strfilename;
CFileDialog savevideodlg(FALSE,_T("avi"),_T("*.avi"));//设置FALSE为文件另存为,TRUE为文件打开对话框
savevideodlg.m_ofn.lpstrTitle= _T("选择录像存储位置");
if(IDOK==savevideodlg.DoModal())
{
strfilename=savevideodlg.GetPathName();//得到文件存放的完整路径
capFileSetCaptureFile(m_hCapWnd,strfilename.GetBuffer(strfilename.GetLength()+1));
CAPTUREPARMS CapParms;
capCaptureGetSetup(m_hCapWnd, &CapParms,sizeof(CAPTUREPARMS));
CapParms.fYield=TRUE;
if(capCaptureSetSetup(m_hCapWnd, &CapParms, sizeof(CAPTUREPARMS)))
{
capCaptureSequence(m_hCapWnd);
}
[解决办法]
:,\这种都不能作文件名的,因此打不开,去掉即可。调试成功