我在一个对话框类A里面定义了一个CFile成员,打开模式是CFile::modeCreate | CFile::modeWrite | CFile::shareDenyNone
,然后我定义了该对话框的派生类B,B用非模态方式创建,在创建之后将文件用close关掉,
然后在B的OnInitDialog中用另外一个CFile对象将文件打开,模式为CFile::modeRead | CFile::shareDenyNone,结果程序在这里总是出错,打开不了,请高手帮忙解决一下!
,然后我定义了该对话框的派生类B,B用非模态方式创建,在创建之后将文件用close关掉,
然后在B的OnInitDialog中用另外一个CFile对象将文件打开,模式为CFile::modeRead | CFile::shareDenyNone,结果程序在这里总是出错,打开不了,请高手帮忙解决一下!
解决方案 »
- 使用SkinPPWTL.DLL界面库出现问题
- 关于数据库 delete的疑惑
- 实时数据记录存入数据库,长期运行的效率和内存使用问题
- VC调用VB编写的Dll中的函数遇到的问题, 请高手帮忙,
- 在OpenGL中,如实现3dmax 中的光影跟踪贴图效果?
- 请问这段代码哪里有错啊?谢谢
- 100分在线等待:如何取得打印机打印的时候设置的“每sheet打几页”(一张纸打几页)
- 高分,SDK源代码,在线等
- 请问如何响应系统的退出按钮消息?
- VBscript跟VB是什么关系?(内空)
- MFC里怎么实现list control收缩展开呢?(急在线等)
- 初学VC++网络编程,头都大了,WSAAsyncSelect接收数据问题
============
应该是文件没有被关闭的原因中,将CFile::shareDenyNone改成:CFile::shareDenyRead 试试,后面的CFile::shareDenyNone去掉吧
UpdateData(true);
bool b = file.Open(_T("1.txt"),CFile::modeCreate | CFile::modeWrite | CFile::shareDenyRead);
if(!b)
{
MessageBox(_T("文件创建失败!"),_T("提示"));
}
else
{
CString str;
…… ……
file.Write(str,str.GetLength());
file.Close();
}
ChaXunDlg.Create(MAKEINTRESOURCE(IDD_DIALOG_CHAXUN),this);
ChaXunDlg.ShowWindow(SW_SHOW);
然后在派生类中有:
CFile file;
if(!file.Open(_T("1.txt"),CFile::modeRead))
{
MessageBox(_T("未获取到查询信息!"),_T("提示"));
}
else
{
CString str;
file.Read(&str,file.GetLength());
str = _T("123");
MessageBox(str);
file.Close();
}