VC操作文件
我在一个工程中打开一个文件并读取数据后close然后再打开并写就出错.
void CMainFrame::OnProSave()
{
// TODO: Add your command handler code here
CFile file;
file.Open(CurrentProject.Path + "\\" + CurrentProject.name + ".cfg",CFile::modeRead,0);
// 读取cfg文件头信息
// file.Read(CurrentProject.TheProject.CFG_File.Data,CFG_HEAD);
// CurrentProject.TheProject.AllConsol = (Console*)malloc(sizeof(Console) * (CurrentProject.TheProject.CFG_File.CFG_Content.Single_Number + CurrentProject.TheProject.CFG_File.CFG_Content.Group_Number));//申请一个内存存放控制台信息
//读取控制台信息
file.Seek(CFG_HEAD,CFile::begin); //从文件头开始往下移动41字节(cfg文件头信息)
file.Write(CurrentProject.TheProject.AllConsol, sizeof(Console) * (CurrentProject.TheProject.CFG_File.CFG_Content.Single_Number + CurrentProject.TheProject.CFG_File.CFG_Content.Group_Number));
file.Close();
}
运行到file.Write(.......)就提示:
Access to D:.... was denied.
我注释Wirte操作后就没问题. 我看了该文件也没有被写保护.