Can you specify the code? I looked at synapse or inet, but I'm newcomer in such networking things.
SeeAnd my Internet Tools actually have an auto update class.
But it is very old, written before I thought about making it a library, so it has a few issues: the version number must be an integer, all error messages are in German (perhaps I should translate them?), sometimes the download just stops and it cannot automatically install the update anymore. (used to work great, when I run it on Windows 98, but all those recent OSs have so many protective permissions for their application directories...)
Still, you an check for an update with it (if you put a xml file with the version number on your web site), and download it (if you have another ), like this:
updater:=TAutoUpdater.create(yourCurrentVersionNumber,ExtractFilePath(ParamStr(0)),'http://your.website.com/a.file.containing.the.version.number.xml', 'http://your.website.com/a.file.containing.a.changelog.with.download.urls.xml');
if updater.existsUpdate then begin
updater.downloadUpdate();
if updater.hasDirectoryWriteAccess then
updater.installUpdate(); //that should still work, if your user has Windows 98
end;
The xml file for the version number looks like:
<versions>
<stable value="1301"/>
</versions>
And the file with the download links:
<changelog program="...">
<build version="1301" date="2012-12-24">
<download url="http://your.website.com/update-window.exe" platform="WINDOWS" execute=""$DOWNLOAD" "/>
<download url="http://your.website.com/update-linux64.deb" platform="LINUX64" execute=""/>
<!-- ... -->
</build>
</changelog>