使用DoFileDownloadEx出现当前安全设置无法运行下载
本人在使用DoFileDownloadEx调用IE的下载器进行下载时,发现可以获取该函数的指针并且返回值是S_OK,但是弹出当前安全设置无法运行下载的对话框。
以下是一个简单的实例代码! 有人知道这是为什么吗?
我是XP的系统 IE6.0
- C/C++ code
#include "Windows.h"typedef HRESULT (CALLBACK* LPFILEDOWNLOAD)(BSTR);BOOL DoFileDownloadDialog(BSTR url);int WINAPI WinMain(IN HINSTANCE hInstance, IN HINSTANCE hPrevInstance, IN LPSTR lpCmdLine, IN int nShowCmd ){ DoFileDownloadDialog(L"http://www.csinx.org/IDevelope/ARPSecurity.exe"); return 0;}BOOL DoFileDownloadDialog(BSTR url) { HRESULT hr = E_FAIL; HMODULE hm=(HMODULE)LoadLibrary("shdocvw.dll"); if(hm!=NULL) { LPFILEDOWNLOAD lpFDld = (LPFILEDOWNLOAD)GetProcAddress(hm, "DoFileDownload"); if(lpFDld != NULL) hr = lpFDld(url); } return (hr == S_OK);}[解决办法]
当前安全设置不允许下载。
[解决办法]
IE安全属性不允许你这么做,用URLDownloadToFile()