to cafecai:
我有KillTimer(),应该不是这个问题
我有KillTimer(),应该不是这个问题
解决方案 »
- ●●未入门新手问:为什么MFC有很多地方必须使用指针,而不能用对象?
- MFC 获取 EXEC sp_executesql 动态语句执行后的返回值
- 请教多线程socket,connect成功一个
- 如何向另一进程中的一个编辑框中写入文本内容??急
- 我的SOCKET为什么收不到UDP包? 急!!!
- 急求一函数
- 怎么切换视图??????????????????????????????????????????
- 学vc很久了,怎么才能够进一步提高呀!!各位给一点意见!!
- 请问CMyDlg *pDlg=(CMyDlg*)pParam和CMyDlg Dlg的区别
- 怎样使用线程?
- 新手学vc看什么那本书比较好入门?
- 请问深圳哪里专卖电脑书,怎样去,搭什么车?
srcFile是要检查的文件tmpFile是个临时文件(用于比较)
另外建议你不要使用tmpFile,而直接使用一大块动态分配的内存,z_hq.dbf才几百K吗,使用临时文件太慢了,股民会着急的。
谢谢提示!不过我加了这两句还是老样子?我刚好在写一个小小的行情监控程序,还可能有其他什么原因呢?
{
srcFile.SeekToBegin();
tmpFile.SeekToBegin();
DWORD dwLength = srcFile.GetLength();
byt src[1024];
byte tmp[1024];
BOOL bSame = true;
while( dwLength )
{
UINT dwSrc=srcFile.Read(src,1024);
UINT dwTmp=tmpFile.Read(tmp,1024);
if ( dwSrc != dwTmp )
{
bSame = false;
break;
}
if ( dwSrc == 0 )
break;
dwLength -= dwSrc;
if(memcmp(tmp,src,dwSrc)!=0)
{
bSame = false;
break;
}
} if ( !bSame )
{
tmpFile.Close();
CopyFile("f:\\z_hq.dbf","f:\\gga.dbf",false);
tmpFile.Open("f:\\gga.dbf", CFile::modeRead);
}
}
-------------------------------------
析构函数中打开文件!!!,构造函数吧!
srcFile.Open("f:\\z_hq.dbf",CFile::modeRead|CFile::shareDenyNone|CFile::typeBinary);
if(!CopyFile("f:\\z_hq.dbf","f:\\gga.dbf",false))
MessageBox("Copy file failed!");
tmpFile.Open("f:\\gga.dbf",CFile::modeReadWrite|CFile::typeBinary);
SetTimer(1,18000,NULL);
[email protected]
{
static byte *tmp = NULL;
static DWORD dwTempLen = 0;
bool bSame;
srcFile.SeekToBegin();
if ( srcFile.GetLength() != dwTempLen )
{
dwTempLen = srcFile.GetLength();
bSame = false;
delete[] tmp;
tmp = new byte[dwTempLen];
srcFile.Read( tmp, dwTempLen );
}
else if ( dwTempLen > 0 )
{
byte *src = new byte[dwTempLen];
srcFile.Read( src, dwTempLen );
if ( memcmp( src, tmp, dwTempLen ) == 0 )
bSame = true;
else
{
memcpy( tmp, src, dwTempLen );
bSame = false;
}
}
}
else
{
memcpy( tmp, src, dwTempLen );
bSame = false;
}
delete[] src; // this line is new added.
CTime t;
t.GetCurrentTime();
if((bSame&&((t.GetHour())<=11)&&((t.GetMinute())<30))||(bSame&&((t.GetHour())>=13)))
{
MessageBox("郭光安,行情可能出问题了!");
Beep(1,3);
}
我发现是不是这几行有问题
GetCurrentTime()是一个静态函数!!!!!!!!!!!!!