各位高手,我的一段程序如下:
void CXXPage::GenXXHTML(LPCTSTR lpTimeString,CString strPath)
{
CString strFileName("报告");
strFileName=strFileName+lpTimeString+".htm";//lpTimeString为当前时间 TRY
{
/*产生保存文件的对话框*/
CFileDialog dlg(FALSE,"htm",strFileName,OFN_OVERWRITEPROMPT|OFN_HIDEREADONLY,"网页文件(*.htm)(*.html)|*.htm;*.html||",this);
dlg.m_ofn.lpstrTitle=_T("保存报告");
if(dlg.DoModal()==IDOK)
{
CString userFileName=dlg.GetPathName(); //userFileName为用户保存的包含路径的新文件
CString templateFileName=strPath+"\\报告.htm"; //templateFileName为包含路径的模板文件 HANDLE handle;
handle=CreateFile(userFileName,GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);
if(INVALID_HANDLE_VALUE!=handle)
{
BOOL bCopy=CopyFile(templateFileName,userFileName,FALSE);//从模板文件“报告.htm”中复制文件内容
}
CloseHandle(handle);
}
} CATCH( CFileException, e )
{
#ifdef _DEBUG
afxDump << "File could not be opened "<< e->m_cause << "\n";
#endif
}
END_CATCH
} 上面程序是将已存在的一个模板文件“报告.htm”中的内容复制到用户新建的htm文件中。但程序执行后,文件内容并没有被复制,我设断点跟踪后bCopy也确实为0,但这两个文件都已存在,且路径都对,不知道为什么没有复制成功,请高手帮我分析一下,多谢了!
void CXXPage::GenXXHTML(LPCTSTR lpTimeString,CString strPath)
{
CString strFileName("报告");
strFileName=strFileName+lpTimeString+".htm";//lpTimeString为当前时间 TRY
{
/*产生保存文件的对话框*/
CFileDialog dlg(FALSE,"htm",strFileName,OFN_OVERWRITEPROMPT|OFN_HIDEREADONLY,"网页文件(*.htm)(*.html)|*.htm;*.html||",this);
dlg.m_ofn.lpstrTitle=_T("保存报告");
if(dlg.DoModal()==IDOK)
{
CString userFileName=dlg.GetPathName(); //userFileName为用户保存的包含路径的新文件
CString templateFileName=strPath+"\\报告.htm"; //templateFileName为包含路径的模板文件 HANDLE handle;
handle=CreateFile(userFileName,GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);
if(INVALID_HANDLE_VALUE!=handle)
{
BOOL bCopy=CopyFile(templateFileName,userFileName,FALSE);//从模板文件“报告.htm”中复制文件内容
}
CloseHandle(handle);
}
} CATCH( CFileException, e )
{
#ifdef _DEBUG
afxDump << "File could not be opened "<< e->m_cause << "\n";
#endif
}
END_CATCH
} 上面程序是将已存在的一个模板文件“报告.htm”中的内容复制到用户新建的htm文件中。但程序执行后,文件内容并没有被复制,我设断点跟踪后bCopy也确实为0,但这两个文件都已存在,且路径都对,不知道为什么没有复制成功,请高手帮我分析一下,多谢了!
解决方案 »
- 如何实现菜单分左右两栏显示?
- vc中自己创建的dll如何链接另一个dll里的函数呢?
- 求助:关于VC创建一个进程 看守 某文件夹,使其不被删除
- 我在VC6.0里面做了个动态库,想在其它程序中调用该动态库中的对话框,始终不出来,怎么回事啊?
- 关于端口状态
- 公布一个新的QQ群(8617156),欢迎VC++程序员加入!
- LPSTR和LPCTSTR的作用是什么
- 问题————新手见笑了!
- ★哪位高手介绍一下IE的架构
- 用ATL做ASP所用的组件,在它的方法中实现打开一个EXCEL文件,将里面的数据存到ORACLE数据库中,但问题是这个组件为什么不稳定,还会与其
- 马上要去笔试了 大家帮帮忙哈
- 这样一个功能怎样来实现,请各位高手给个思路!!!!!
HANDLE handle;handle=CreateFile(userFileName,GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);
if(INVALID_HANDLE_VALUE!=handle)
{
BOOL bCopy=CopyFile(templateFileName,userFileName,FALSE);//从模板文件“报告.htm”中复制文件内容
} CloseHandle(handle);