高手帮忙!关于CFile写文件有关问题

高手帮忙!关于CFile写文件问题
CFile   fWrite;
BOOL   bOpenFlag   =   fWrite.Open(m_strSaveFilePath,
CFile::modeNoTruncate   |   CFile::modeCreate   |   CFile::modeWrite,NULL);//存在则打开,不存在则创建
if   (bOpenFlag)//成功,写
{
int   nLenth   =   8;
//整理数据

                                //整理数据的时间不会很长,不会超过1ms的时间

nLenth   =   fWrite.GetLength();
m_nNumsOfRecord   =   nLenth   /   52;

fWrite.SeekToEnd();
fWrite.Write(m_byDataBuf,52);
fWrite.Abort();//一开始是Close()的,但是效果是一样的
}
else
{
static   iNums   =   0;//记录次数
DWORD   dwError   =   GetLastError();
m_strListOut.Format( "打开记录文件失败!LastError:%d-%d ",dwError,iNums);//通过Report提示出来。
SendMessage(WM_DISPLAYINFO,0,0);
iNums++;
fWrite.Abort();
}

//发现一个奇怪的现象,每隔1秒调用此代码一次,文件目前是十多M吧
//为什么长时间执行下来,会有几条数据的丢失,丢失的结果都是此文件被其他进程打开!首先声明这个程序只做这么一件事,还有其他程序没有访问此文件。
//运行的平台是笔记本。PM1.7G,应该不慢啊!
//高手帮忙分析原因!!!!!!!

------解决方案--------------------
//发现一个奇怪的现象,每隔1秒调用此代码一次,文件目前是十多M吧
是不是有一个Timer?

//为什么长时间执行下来,会有几条数据的丢失,丢失的结果都是此文件被其他进程打开!首先声明这个程序只做这么一件事,还有其他程序没有访问此文件。
可能是多线程的。
------解决方案--------------------
如果你在OnTimer中只是读没有写,那么你就在两个打开文件的地方都加上CFile::shareDenyNone试下。