Creating an updater

Hi guys,

I’ve not really done much when it comes to my programs interacting with a websever

To start of I am running on realbasic personal 2011 R3.

I have done a search but the only sorts of things I can find are involving the HTTP socket which my version of realbasic does not seem to come with? (cannot find it anywhere)

So could someone please give me a few pointers in how to make a program look to a webserver (probably an FTP server?) check the version of the file there & compare it to the version currently on the users pc.

I cannot figure out how to connect to an FTP server or the web in general to make a program that can update

Cheers in advance for any help :slight_smile:

If you want a decent cross platform solution, take a look at the UpdaterKit from MonkeyBread Software. http://www.monkeybreadsoftware.de/xojo/UpdaterKit/

For Mac OS X it uses the Sparkle framework which does an in-place update. On Windows it downloads the installer via an HTTP socket, quits the app and launches the installer.

If you want something simpler there is something called UltraUpdater from LogicalVue Software. Can’t find it at the moment, but it’s freeware.

cheers for the replies, I will take a look at ultraupdater :slight_smile:

Just so you are aware I am only making for windows

I cannot seem to find UltraUpdater from LogicalVue Software

the closest I find is that people are now saying it costs $19.99 but no links to buy :S

Well, continued support over years costs money. $20 products can’t survive…

i understand that it costs, but i cannot find anywhere to actually buy it :smiley:

It looks like rbdevzone is just gone.
But LogicalVue is by @Paul Lefebvre, so maybe he has some insight.

Happy MBS updater user here, for a few years now. Only thing missing is a Linux Installer :wink:

i’ve managed to copy a HTTP socket from an example program in & with a bit of playing got it to connect to my FTP server ok

but I am having issues with downloading a file

I am using;

window1.socket1.get("ftp://192.168.0.10/Maxtor_Harddrive/FTP/test.text",path1)

it doesnt download the test.txt file

instead I get a text file produced (as in path1 I have had to add /test.txt to get any file made

In this text file i get the following;

[quote]404 Not Found

404 Not Found

File not found. [/quote]

I know the above address in the get statement is correct (i have copied it into internet explorer & it has opened up the file correctly)

any ideas where im going wrong?

well, if you want to do reliable FTP, buy the curlMBS plugin :wink: ive tried all sorts of other methods and that was the one that worked properly

seems like tonight i am lovin’ the Schmitz.

ah well, 5 to 9, time for wine.

He wont appreciate that one, being tee-total!

HTTP and FTP are different protocols. You want the HTTP URL for that file if you’re going to use HTTPSocket.Get()

ok so I have moved my file to a temporary website place;

http://pointcontroller.net63.net/updates/

here you can see the text file test.txt

Still unable to download it (currently getting error 1 come up)

found the error 1 (needed to add the file name to the output location

so now it makes test.txt in my output location;

but the text file is empty?

Unfortunately, the MBS version does not work in a sandboxed app. AFAIK there would be a solution to this, it is just that nobody has paid Christian yet to update to a Sparkle version which supports sandbox.
https://forum.xojo.com/10395-mbs-updater-kit-unable-to-update-sandboxed-app/p1#p75403

If you didn’t notice the text file on your server is empty.

thank you for the advice here

Tim, the file actually says “test” in it (not sure why its not opening correctly

I have gone back to my old method of things (from other languages) for a bat file :smiley:

only thing is…how the hell do you run a bat file from within RB? not done it before (done it in justbasic)

ah no worries found it :slight_smile:

Where, please?

Olivier, why sandbox app if not in the Mac App Store?