Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Work in Progress / Coming Soon : Updater

Author
Message
MrTAToad
22
Years of Service
User Offline
Joined: 26th Aug 2002
Location: United Kingdom
Posted: 19th Jul 2003 20:41
If you want to download program updates from a web site, then this is the plug-in for you.
It shows the progress for the current file, and will let the user re-try any files that failed to download.
Good news everyone! I really am THAT good...
http://www.nickk.nildram.co.uk/ for great plug-ins and other exciting things - oh my, yes!
andrew11
21
Years of Service
User Offline
Joined: 23rd Feb 2003
Location: United States
Posted: 20th Jul 2003 00:52
So like.. from http? Not FTP? Cool

"All programmers are playwrites and all computers are lousy actors" -Anon
MrTAToad
22
Years of Service
User Offline
Joined: 26th Aug 2002
Location: United Kingdom
Posted: 20th Jul 2003 01:28
I haven't tried it with FTP (yet) - as I've mainly doing it for HTTP

Good news everyone! I really am THAT good...
http://www.nickk.nildram.co.uk/ for great plug-ins and other exciting things - oh my, yes!
andrew11
21
Years of Service
User Offline
Joined: 23rd Feb 2003
Location: United States
Posted: 20th Jul 2003 04:01
No, I know how to do FTP. I didn't know how to do it in DBPro (No possible in native commands, right?).

"All programmers are playwrites and all computers are lousy actors" -Anon
MrTAToad
22
Years of Service
User Offline
Joined: 26th Aug 2002
Location: United Kingdom
Posted: 20th Jul 2003 13:42
FTP commands are native...

Good news everyone! I really am THAT good...
http://www.nickk.nildram.co.uk/ for great plug-ins and other exciting things - oh my, yes!
andrew11
21
Years of Service
User Offline
Joined: 23rd Feb 2003
Location: United States
Posted: 20th Jul 2003 18:08
I mean I didn't know how to get files from the internet, such as "http://www.darkbasicpro.com/apollo/images/avatars/loveme.gif". Say, if I try to load that image, it can't find it. With your plugin, you can load images/files like this, right? I already know how to do FTP nativly.

"All programmers are playwrites and all computers are lousy actors" -Anon
MrTAToad
22
Years of Service
User Offline
Joined: 26th Aug 2002
Location: United Kingdom
Posted: 20th Jul 2003 18:45 Edited at: 20th Jul 2003 19:53
Yes, you can download any files - you specify the URL address (FTP wont work), the list of files you want to download and the place where the downloads are to be stored.

The files are then automatically downloaded - you can see how much is left to download for each file, and at the end a summary of the total number of successful and failed downloads is displayed. If there are any failed ones, you have the option of retrying the download.

It is designed to delete everything in the specified storage directory and re-build it during the download it process (so only the latest files are present). It is also designed to make sure there are no duplicate filenames.

Good news everyone! I really am THAT good...
http://www.nickk.nildram.co.uk/ for great plug-ins and other exciting things - oh my, yes!
MrTAToad
22
Years of Service
User Offline
Joined: 26th Aug 2002
Location: United Kingdom
Posted: 21st Jul 2003 10:53
I will be adding :

Before trying to download the first file, it will look for a MESSAGE.INF file. If this is present, then the file is downloaded, the contents displayed and the routine is exited. This lets you setup a 'There are no updates availiable at this time' system.

Next, I'll be a versioning system.


Its better than a poke in the eye...
Freddix
AGK Developer
22
Years of Service
User Offline
Joined: 19th Sep 2002
Location: France
Posted: 21st Jul 2003 18:54
MrTaToad , I didn't found in your site where to download your plugin for HTTP downloads . . .
please tell me where . . .
I looked inside DLL / Plugins pages and didn't found something about it

MrTAToad
22
Years of Service
User Offline
Joined: 26th Aug 2002
Location: United Kingdom
Posted: 21st Jul 2003 20:24 Edited at: 21st Jul 2003 20:30
Probably because its not there - and wont be until I get my new computer...
If you want it when I've finished, it'll have to be sent through e-mail.


Its better than a poke in the eye...
MrTAToad
22
Years of Service
User Offline
Joined: 26th Aug 2002
Location: United Kingdom
Posted: 22nd Jul 2003 02:11 Edited at: 22nd Jul 2003 02:12
If you want a demo of the executable, I can e-mail it to you.

The test code is :



The 4 numbers are the version information for that file. It downloads some stuff from my web site - in the same directory structure as that.


Its better than a poke in the eye...
andrew11
21
Years of Service
User Offline
Joined: 23rd Feb 2003
Location: United States
Posted: 22nd Jul 2003 06:14
So when are you going to be done?

"All programmers are playwrites and all computers are lousy actors" -Anon
MrTAToad
22
Years of Service
User Offline
Joined: 26th Aug 2002
Location: United Kingdom
Posted: 22nd Jul 2003 11:07
Well, I'm hoping to get my new computers in a week or so...


Its better than a poke in the eye...
MrTAToad
22
Years of Service
User Offline
Joined: 26th Aug 2002
Location: United Kingdom
Posted: 22nd Jul 2003 15:06 Edited at: 22nd Jul 2003 15:15
Anyway, the format of various files are :

MESSAGE.INF - If this is present at the root of the web address, then the contents are downloaded, displayed and the update routine exists.

For versioning :

Each file needs to have a version that has .VRS at the end, which contains 4 groups of 3 numbers seperated by commas (eg 001,002,003,004). If this file exists then it is downloaded and the contents read. This version number is compared to that which corressponds to that which was passed to the routine. If the contents from the .VRS files is greater than that passed then the file is downloaded, otherwise it is ignored.

If no .VRS file is found then the file is downloaded.

EG :

Game.exe - The file to be downloaded
Game.exe.VRS - The version information file (its easier for me like this)

After being read, the .VRS file is deleted (so will never appear in the directory for updates).

By the way, the directory update will mirror that from the web site.

How you then apply the update(s) is then up to you...

I'll probably make it a lot friendlier to use soon.


Its better than a poke in the eye...
MrTAToad
22
Years of Service
User Offline
Joined: 26th Aug 2002
Location: United Kingdom
Posted: 23rd Jul 2003 22:42 Edited at: 23rd Jul 2003 22:58
Good news! I've found an efficient way of creating multiple directory paths, so it'll be compatiable with 98 upwards now.


Its better than a poke in the eye...
MrTAToad
22
Years of Service
User Offline
Joined: 26th Aug 2002
Location: United Kingdom
Posted: 25th Jul 2003 01:26 Edited at: 25th Jul 2003 14:30
Its working very well... at the moment...

Now, the important part is how to install any updates, especially if you want to upgrade the main program.

The main way I'm thinking of doing it is that the user will be requested to locate a file (executable, data file etc). This is because using the registry is a bad thing (and doing it this way should allow network upgrading). Once found, the full path is put into a .INI file, where the location can be read. The ideal way would be to use Clickteam's Install Maker (if you want to package everything in one file), as it can read .INI files for the destination location, and support delayed copying. This will be the default installation system in my plug-in.

Update : It appears that these installers wont read INI files if they dont have the full path to where they are (which is a bit stupid). So, I'm going to do the copying process inside the plug-in (it will copy everything to the destination location). Unfortunately this will mean network updates wont work (but no great loss).


Its better than a poke in the eye...

Login to post a reply

Server time is: 2024-11-21 20:54:31
Your offset time is: 2024-11-21 20:54:31