用MFC的cfile写的代码,在pc机上实现文件的传输解决办法
用MFC的cfile写的代码,在pc机上实现文件的传输
现在的代码想把桌面的文件放到其他盘,调试总有错误,大家帮着看一下
在写入的时候就报错
------解决方案--------------------
1、pBuf和dwFileLen都可以作为CHanjxDlg类的成员变量
2、paste前,先判断有没有copy
3、单步跟踪一下,看copy后和paste之前的buf是否正确
------解决方案--------------------
file(NULL,CFile::modeWrite); //传NULL是什么意思????
现在的代码想把桌面的文件放到其他盘,调试总有错误,大家帮着看一下
- C/C++ code
char *pBuf; DWORD dwFileLen; //FileInfo staff; void CHanjxDlg::OnOpenFile() { // TODO: Add your control notification handler code here //filename=openfile.GetFileName(); CFileDialog fileDlg(TRUE); fileDlg.m_ofn.lpstrFilter="Text Files(*.doc)\0*.doc\0*.jpg\0All File(*.*)\0*.*\0\0"; //fileDlg.m_ofn.lpstrDefExt="doc"; if (IDOK==fileDlg.DoModal()) { CFile file(fileDlg.GetFileName(),CFile::typeBinary); //char *pBuf; //DWORD dwFileLen; dwFileLen=file.GetLength(); pBuf=new char[dwFileLen+1]; pBuf[dwFileLen]=0; file.Read(pBuf,dwFileLen); file.Close(); //MessageBox(pBuf); } } void CHanjxDlg::OnSend() { // TODO: Add your control notification handler code here CFileDialog fileDlg(FALSE); fileDlg.m_ofn.lpstrFilter="Text Files(*.doc)\0*.doc\0All File(*.*)\0*.*\0\0"; if (IDOK==fileDlg.DoModal()) { CFile file(NULL,CFile::modeWrite); file.Write(pBuf,dwFileLen); file.Close(); //MessageBox(pBuf); } }
在写入的时候就报错
------解决方案--------------------
1、pBuf和dwFileLen都可以作为CHanjxDlg类的成员变量
2、paste前,先判断有没有copy
3、单步跟踪一下,看copy后和paste之前的buf是否正确
------解决方案--------------------
file(NULL,CFile::modeWrite); //传NULL是什么意思????