I'm writing an update program for another piece of software. This update program downloads/installs updates to this program's extensions (my update program is, in fact, just another extension).
Some of these extensions are CodePlex projects. Other's are just on people's personal websites or on their company's website, etc... Point is, there's no central extension repository.
I'm having trouble downloading the updates that are hosted on CodePlex because I cannot seem to just find URL that returns/downloads the latest version. E.g. on this page there is the big, green "Download" button. All I want is, for any given CodePlex project, a URL I can hit that will download the latest version (like that Download button does after the stupid prompt).
I created a CodePlex feature request for this, but it hasn't been updated and neither have the other hundreds of requests people have had for that site.
In summary, I want somethin开发者_JAVA百科g like this:
http://coolestProjectEver.codeplex.com/download
This link would return/download the latest version of that project without any questions/prompts.
Any ideas what I can do?
One thing that might help is that there is a permanent link to the latest source: http://[project].codeplex.com/releases
.
This might also help: Read Latest Version From Source
You could just have that read a file that you know is already there containing the version number. Visual Studio keeps this in the project or solution files.
For your references with Mercurial you can just go to https://hg.codeplex.com/[project]/raw-file/tip/
and start building the path to the file you want. Just hope it isn't a .vb file as that doesn't seem to work.
UDPATE:
Based on the comments found here http://codeplex.codeplex.com/workitem/25464 I was able to retrieve the latest version of a specific file. Which ever file in your target project contains the version number you can see it here. Add in a little regex and you should be good to go.
The format is:
http://[project].codeplex.com/SourceControl/BrowseLatest#[PathToFile]
Like discussed above, only if CodePlex changes its implementation, it will be too hard to achieve what you want. Don't hack, as they may upgrade their site just another day and break your hack.
Consider hosting the binaries in a separate site (maybe create a backup site on Google Code, where the Download page (http://code.google.com/p/lextudio/downloads/list) does not prompt.
精彩评论