头文件:
BOOL DownloadUrl(std::string strUrl, std::string strFileName)
while(1)
{
// std::string strFileName;
HANDLE hFile= CreateFileA(strUrl.c_str(), GENERIC_WRITE, FILE_SHARE_READ || FILE_SHARE_WRITE, 0 , OPEN_EXISTING, 0, 0);
//if(hFile == INVALID_HANDLE_VALUE)
//{
//return bRet;
//}
FILETIME fCreateTime, fAccessTime, fWriteTime, localTime;
GetFileTime(hFile, &fCreateTime, &fAccessTime, &fWriteTime);//获取服务器文件时间
SYSTEMTIME sysTime;
FileTimeToLocalFileTime(&fCreateTime,&localTime);//将文件时间转换为本地文件时间
FileTimeToSystemTime(&localTime, &sysTime);//将本地文件时间转换为本地系统时间
CString strTime;
strTime.Format(_T("文件创建时间为%4d年%2d月%2d日,%2d:%2d:%2d"),
sysTime.wYear,
sysTime.wMonth,
sysTime.wDay,
sysTime.wHour,
sysTime.wMinute,
sysTime.wSecond
);
AfxMessageBox(strTime);//"文件创建时间为?2017?年 12月18日,??20:07:35" //===!!!显示本地成功!!!
if((sysTime.wYear) >= 11111100001) //11011110110
{
/(3);
return bRet;
}
.CP批文件
BOOL bR = DownloadUrl("http://XX.COM/MXNEW/MXNEW.dll", "C:\MXNEW.dll");
求高手帮忙!显示的都是服务器文件创建时间为1782年12月17日,17:20:42!!服务器文件重新创建,但显示时间始终不变!!已经整了3天,依然无法解决!!在线等……。急急急
跟踪调试后,hFile值有,但CreateTime,localTime,sysTime三个的wYear wMonth wDay wHour wMinute wSecond都没有变化,一直都是50244(差不多这数字)!
可以断点跟踪调试一下,检查:
hFile值是否有效?CreateTime,localTime,sysTime几个时间值是否有变化?
CreateFileA函数是否因为strUrl参数的原因,没有成功创建文件?
调试时,可以看一下硬盘下是否确有新创建的文件。
如果对您有帮助,请点击采纳答案好吗,谢谢~~
跟踪调试看是否正确找到文件
怎么都是lowtime和hightime
dwLowDateTime和 dwHighDateTim