--- /dev/null
+#include <windows.h>\r
+#include <urlmon.h>\r
+#include <tchar.h>\r
+\r
+HRESULT WINAPI URLDownloadToFileA(\r
+ LPUNKNOWN pCaller,\r
+ LPCSTR szURL,\r
+ LPCSTR szFileName,\r
+ DWORD dwReserved,\r
+ LPBINDSTATUSCALLBACK lpfnCB);\r
+\r
+// ToDo: Show status, get file name from webserver, better error reporting\r
+\r
+int tmain(int argc, TCHAR **argv)\r
+{\r
+ int i;\r
+\r
+ if(argc != 2)\r
+ {\r
+ _tprintf(TEXT("Usage: dwnl <url>"));\r
+ return 2;\r
+ }\r
+\r
+ TCHAR* filename = argv[1];\r
+ for(i=_tcslen(argv[1]);i>0\r
+ &&filename[i]!='/'\r
+ &&filename[i]!='\\'\r
+ &&filename[i]!='?'\r
+ &&filename[i]!='*'\r
+ &&filename[i]!=':'\r
+ &&filename[i]!='\"'\r
+ &&filename[i]!='<'\r
+ &&filename[i]!='>'\r
+ &&filename[i]!='|';i--);\r
+ filename = &argv[1][i+1];\r
+\r
+ _tprintf("Downloading %s... ", filename);\r
+\r
+ if(URLDownloadToFileA(NULL, argv[1], filename, 0, NULL) != S_OK)\r
+ {\r
+ _tprintf("Failed.\n");\r
+ return 1;\r
+ }\r
+\r
+ _tprintf("Finished.\n");\r
+ return 0;\r
+}\r
--- /dev/null
+<?xml version="1.0"?>\r
+<!DOCTYPE project SYSTEM "tools/rbuild/project.dtd">\r
+<module name="dwnl" type="win32cui" installbase="system32" installname="dwnl.exe">\r
+ <include base="dwnl">.</include>\r
+ <library>kernel32</library>\r
+ <library>crtdll</library>\r
+ <library>urlmon</library>\r
+ <define name="__USE_W32API" />\r
+ <define name="WINVER">0x0501</define>\r
+ <define name="_WIN32_IE>0x0600</define>\r
+ <file>dwnl.c</file>\r
+</module>\r
<directory name="arp">
<xi:include href="arp/arp.rbuild" />
</directory>
+<directory name="dwnl">
+ <xi:include href="dwnl/dwnl.rbuild" />
+</directory>
<directory name="finger">
<xi:include href="finger/finger.rbuild" />
</directory>