运行DLL32 URLDownloadToFile

wei*_*wei 2 windows winapi download rundll32

我正在尝试在 Windows 命令行中执行单行文件下载,而不依赖于 WGET 等外部工具,甚至不编写 PowerShell 或 VBScripts 脚本。

我试着跑

c:\> RunDLL32.exe URLMon.dll,URLDownloadToFIle 0,"http://www.example.com/file.pdf" "c:\\MyName\\Downloads\\",0
Run Code Online (Sandbox Code Playgroud)

它没有用。
我做错了什么?或者这甚至会起作用?

Nor*_*elm 5

函数URLDownloadToFile具有以下签名:

HRESULT URLDownloadToFile(
         LPUNKNOWN            pCaller,
         LPCTSTR              szURL,
         LPCTSTR              szFileName,
         DWORD dwReserved,
         LPBINDSTATUSCALLBACK lpfnCB
         );
Run Code Online (Sandbox Code Playgroud)

rundll32.exe 可调用的函数需要具有以下函数原型:

void CALLBACK  EntryPoint(HWND hwnd, HINSTANCE hinst, LPSTR lpszCmdLine, int nCmdShow);
Run Code Online (Sandbox Code Playgroud)

您不能使用 rundll32.exe 来运行 URLDownloadToFile,因为这两个原型不兼容。