CFile xlsFile,xlsFile.Open(...)为什么有时会出错,有时不会呢!!!

dzqsuper 2006-02-16 10:25:10
基本代码如下:

CFileException e;
CFile m_xlsFile;
CString strFileName;
//Get strFileName
...
///
if(!m_xlsFile.Open(strFileName,CFile::modeCreate|CFile::modeReadWrite|CFile::shareExclusive|CFile::modeNoTruncate,&e))
{
#ifdef _DEBUG
afxDump<<"File couldn't create"<<e.m_cause<<"\n";
#endif
}

上面这段代码在运行时,有时会出错,有时不会

在一步步调试时,运行到m_xlsFile.Open这句时会强出一个出错框,框的内容为:

Unhandled wxception in Adjust.exe:0xC0000005;Access Violation

其中Adjust.exe为我的程序名;

请大家帮忙看看是怎么回事!!!
...全文
282 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
xing_xing_xing 2006-02-26
  • 打赏
  • 举报
回复
按ESC
dzqsuper 2006-02-26
  • 打赏
  • 举报
回复
加个小问题:

在VC中编辑对话框资源时,有时想看看效果就点了左下角的Test按钮,但是在对话框没有退出按钮,这时这个对话框资源就关不掉了,要关掉VC才行,这个如何解决
herman~~ 2006-02-18
  • 打赏
  • 举报
回复
最好是跟踪进open看看问题出在哪句上
dzqsuper 2006-02-18
  • 打赏
  • 举报
回复
再问个简单的:得到桌面路径的函数是什么?
m8v8m 2006-02-18
  • 打赏
  • 举报
回复
你的strFileName没有初始化啊,MFC的流毒一日不除,中国软件没法上去!
dzqsuper 2006-02-18
  • 打赏
  • 举报
回复
我的程序是这样的,有一个线程,这个线程每走一趟就发一个消息给视类,然后在视类里面有一个函数来执行上面的语句

我出错并不是每次都出呀,只是有时会出错
RockHwnd 2006-02-18
  • 打赏
  • 举报
回复
IShellDispatch *pSD = NULL;
Folder *pFolder = NULL;
CoCreateInstance(CLSID_Shell, NULL, CLSCTX_SERVER,
IID_IShellDispatch, (LPVOID *) &pSD);
VARIANT vDir;
VariantInit(&vDir);
vDir.vt = VT_I4;
vDir.lVal = CSIDL_DESKTOP;
pSD->NameSpace(vDir, &pFolder);
vcmute 2006-02-17
  • 打赏
  • 举报
回复
用Debug看看,以下的ASSERT是否能通过
BOOL CFile::Open(LPCTSTR lpszFileName, UINT nOpenFlags,
CFileException* pException)
{
ASSERT_VALID(this);
ASSERT(AfxIsValidString(lpszFileName));
ASSERT(pException == NULL ||
AfxIsValidAddress(pException, sizeof(CFileException)));
ASSERT((nOpenFlags & typeText) == 0); // text mode not supported
xuzheng318 2006-02-17
  • 打赏
  • 举报
回复
跟踪一下,看看内存值!
菜牛 2006-02-17
  • 打赏
  • 举报
回复
有没有Close()?
RockHwnd 2006-02-17
  • 打赏
  • 举报
回复
最好是跟踪进open看看问题出在哪句上
RockHwnd 2006-02-17
  • 打赏
  • 举报
回复
如果是打开文件异常应该不会Access Violation错误,而是返回0
估计是m_xlsFile对象有问题,查一下CFile构造函数有没有执行过
dzqsuper 2006-02-17
  • 打赏
  • 举报
回复
当然关掉了
flyelf 2006-02-16
  • 打赏
  • 举报
回复
打开文件出现异常了,使用try/catch捕捉这个异常

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧