::CoInitialize(NULL);
::DeleteUrlCacheEntry(lpRuleDL->m_strADConfigURL);
hr = ::URLDownloadToFile(NULL, lpRuleDL->m_strADConfigURL, _T("D:\\adconfig.ini"), 0, NULL);
if (SUCCEEDED(hr))
{
if (TRUE == IsFileExist(_T("D:\\adconfig.ini")) && TRUE == IsFileEmpty(_T("D:\\adconfig.ini")))
{
lpRuleDL->miDLThreadRes = 1;
return lpRuleDL->miDLThreadRes;
}
}
::CoUninitialize();
BUG描述:
MSDN上说返回S_OK表示下载成功,实际上似乎只是函数执行完毕就返回成功,
观测返回后,如果不对文件的存在和完整做判断代码就会出错。
测试的时候发现没有在本地生成目标文件的时候,也返回S_OK。
baidu后有人提到URLDownloadToFile是WinInet的封装,WinInet只有一个链接超时无法控制的BUG
今天又发现BUG,貌似没看有人帖,贴出来……
发表于 @ 2007年10月11日 18:20:00|评论(loading...)|编辑