Timothy
  • Timothy
  • 100% (Exalted)
  • Flock Leader Topic Starter
2008-09-25T17:36:21Z
Recently, I started using Keratin (https://wiki.ketarin.org/index.php/Ketarin_Wiki ) to update packages that I like to take from computer to computer. I realized that although RD Tabs has a great self-update feature, it lacks support for centralized update software. Maybe you just don't want to use RD Tabs' updater! So I created a new mode for the RD Tabs Update website. Usually you access this web page behind the scenes when you run RD Tabs as it checks for new versions of itself. However, the new mode, called "getversion" spits out a nicely formatted XML file that gives you the information you need to update RD Tabs while outside of RD Tabs.

Here is the direct link...
http://www.avianwaves.co...ver.aspx?getversion=true 


When you visit that link, you'll see something like below, which can be easily parsed by other applications...

<?xml version="1.0" encoding="UTF-8" ?> 
<SoftwareUpdates Version="1.0">
  <SoftwareUpdate Package="RD Tabs">
    <Stable Platform="x86" Version="2.1.18">http://www.avianwaves.com/tech/tools/rdtabs/RDTabs_2.1.18.msi</Stable> 
    <Stable Platform="x64" Version="2.1.18">http://www.avianwaves.com/tech/tools/rdtabs/RDTabs64_2.1.18.msi</Stable> 
    <Beta Platform="x86" Version="2.2.0">http://www.avianwaves.com/tech/tools/rdtabs/RDTabs_2.2.0.msi</Beta> 
    <Beta Platform="x64" Version="2.2.0">http://www.avianwaves.com/tech/tools/rdtabs/RDTabs64_2.2.0.msi</Beta> 
  </SoftwareUpdate>
</SoftwareUpdates>


Note that the "Beta" tags will not always exist. In fact, right now they don't because there are no "2.2.0" files to download (so don't get excited yet -- the links won't work).

Basically, here's how it works. <SoftwareUpdates> is the root tag and can contain one or more <SoftwareUpdate> tags. The Version attribute identifies the version of the XML format of the SoftwareUpdates tag. Each <SoftwareUpdate> tag must have a Package attribute which identifies a software package (such as RD Tabs). Currently, I'm only doing this for RD Tabs, so there will only be one package. Inside each <SoftwareUpdate> tag contains one or more <Stable> tags and zero or more <Beta> tags. The <Stable> tags identify stable versions of the software and <Beta> tags identify test versions. Multiple <Stable> tags are differentiated by Platform attributes. The Version attribute must be the same for all <Stable> tags (this XML file does NOT provide a history of files -- it only provides information on the latest version). The <Beta> tags work the same way: differentiated only by the platform attribute and the Version attributes must match. The inner text of each <Stable> and <Beta> tag is a URL to the package where it can be directly downloaded.

I hope somebody finds this useful! Post it here, if you do!
full film