Hi Neil, On 16.04.2012 20:20, neilr8133 wrote: > Trying to figure out a few things about the downloading capabilities and whether I'm experiencing a bug in the code or if it's a PEBKAC error. > > 1) When using the<download> directive, it seems that the target folder is always rooted at %TMP% ? I see nothing in the docs about a limitation (although it would make sense for security reasons) but that's the behavior I see.. Indeed it's relative to the downloadDir property (see config.xml). The documentation in XSD says: "target" attribute: Target path to store the file to. The path has to be specified relative to the downloadDir property within config.xml. By default relative to %TEMP%. For example specify 'pidgin\pidgin.exe' to download the file at the specified URL to '%TEMP%\pidgin\pigin.exe'. The file is removed after the commands are executed. If you need more flexibility we do recommend to either use downloader.cmd which is much more flexible and also allows checking the download. Alternatively feel free to use any alternative downloading tool. > 2) I see a contradiction between the docs and downloader.cmd in that one says we can put downloading tools (like robocopy.exe) into tools\downloader but the other says that robocopy has to be pushed out to clients for use. Which is correct? (Looking through downloader.cmd I see that wget and the md5/sha1 calculators are picked up from the tools\downloader folder but robocopy isn't ?) Robocopy is (AFAIK) integrated part of Windows 7. So no need for deployment here. However for older versions you might need to deploy it. Alternatively just put it into the same folder as downloader.cmd. If robocopy.exe exist in the same folder as downloader.cmd it will be run from this folder rather than from the system location. But read on... > 2b) Maybe I'm being dense, but what's the purpose of line 45 in downloader.cmd ? The intent of the line as a whole is unclear, and also it seems like a syntax error to have that `0' in the middle of the string... Indeed I think you've spotted a bug. Line 45 should read as follows: if exist "%TOOLS_PATH%robocopy.exe" "%TOOLS_PATH%robocopy.exe" Its purpose is to check whether robocopy.exe exists within the same folder as downloader.cmd. If found it's used. If not found it's ignored and downloader.cmd will try to use robocopy.exe somewhere in the system path (if available). The "0" which was in there was not a syntax error, but definitely wrong since you would have to name your "robocopy.exe" "0robocopy.exe" in order to be used. That's all. I think the bug came from the fact that I was used to use "%~dp0robocopy.exe" before, then "%~dp0" was replace by "%TOOLS_PATH%" and I have missed to remove the "0". I guess I did not notice during testing because I am using Windows 7 only and therefore I don't need to deploy robocopy.exe on the share. Thanks for reporting the issue. An updated version of downloader.cmd is available on SVN: FIX: Fixed downloader.cmd bug to read robocopy.exe from same folder where downloader.cmd is stored (if present). Thanks to Neil for reporting. <http://wpkg.svn.sourceforge.net/viewvc/wpkg/wpkg/stable/src/main/resources/wpkg/tools/downloader/> br, Rainer |