PlatGEnWohl Updater

Description: General discussion regarding the current engine development.
Moderator: Moderators

Luigifan2010 M
Topic author, Contributor
Contributor
Avatar
Luigifan2010 M
Topic author, Contributor
Contributor
Reputation: 5
Posts: 31
Joined: 29 Mar 2014

Post #1by Luigifan2010 » 29 Jul 2014, 19:18

Hi guys, so as I've started to learn C++ and stuff I decided it would be appropriate to code a little updater for this.

But in order for this to work right, I need coordination from not only my end for my Linux builds but also Wohlstand for his experimentals/stables.

So here's what I'd need for it to work properly.

-The updater would be placed in the same directory as the executable.
-A version.txt would need to be put in the same directory. This is necessary for dev builds seeing as how the actual exe isn't updated with the dev version it seems. Besides, this would only work on windows and we don't want that

The way this works needs to kind of be like a launcher. This would be the typical workflow for it.
-Launch the updater as a launcher
-It checks the version against a server, if the versions are the same we proceed to launch PGE as normal. The user may never know it's there type thing
-If a newer version is available, the application will display a prompt asking to update.

I'm working out the basic UI right now in QT and i will update this post as I work on it.

Kevsoft M
Angry developer
Angry developer
Avatar
Kevsoft M
Angry developer
Angry developer
Age: 19
Reputation: 77
Posts: 376
Joined: 26 Apr 2014
Location: Austria

Post #2by Kevsoft » 29 Jul 2014, 21:03

Just a quick question: Wouldn't it be possible to save the version number in the exe file. I mean windows has saved the version in their exe files. How do Mac & Linux handle it?
▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬▬ Signature.start() ▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬
Image
Wohlstand in interview:
Spoiler
Image

▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬▬ Signature.end() ▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬▬

Veudekato M
Viscount
Viscount
Avatar
Veudekato M
Viscount
Viscount
Reputation: 57
Posts: 369
Joined: 19 Feb 2014
Location: Russia

Post #3by Veudekato » 30 Jul 2014, 11:27

well,this as path? if you turn down computer platgenwohl will corrupt?but this good idea
My channel (PlatGEnWohl news and tutorials , smbx tests):
http://www.youtube.com/channel/UC6h-42umT14iR1wa3VkOs3Q

Kevsoft M
Angry developer
Angry developer
Avatar
Kevsoft M
Angry developer
Angry developer
Age: 19
Reputation: 77
Posts: 376
Joined: 26 Apr 2014
Location: Austria

Post #4by Kevsoft » 30 Jul 2014, 13:13

Veudekato wrote:if you turn down computer platgenwohl will corrupt?
What do you mean O.o?
▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬▬ Signature.start() ▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬
Image
Wohlstand in interview:
Spoiler
Image

▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬▬ Signature.end() ▬▬▬▬▬▬▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬▬▬▬▬

Wohlstand M
Lead Developer
Lead Developer
Avatar
Wohlstand M
Lead Developer
Lead Developer
Age: 25
Reputation: 321
Posts: 1302
Joined: 15 Feb 2014
Location: Moscow, Russia
Website Skype YouTube

Post #5by Wohlstand » 30 Jul 2014, 14:33

Small note: An updater will be necessary for the installable application, it's currently portable only. It also will be better to check for an update on opening the application for the first time.

Luigifan2010 M
Topic author, Contributor
Contributor
Avatar
Luigifan2010 M
Topic author, Contributor
Contributor
Reputation: 5
Posts: 31
Joined: 29 Mar 2014

Post #6by Luigifan2010 » 31 Jul 2014, 0:00

Just a quick question: Wouldn't it be possible to save the version number in the exe file. I mean windows has saved the version in their exe files. How do Mac & Linux handle it?

This would only work for Windows. Linux executables don't contain that metadata. OS X I'm not entirely sure about as again, I don't own a Mac.

Anyways Wohlstand mentioned something about an editor built in update function. At least for checking. I'm not sure how you guys want to handle this on the server end but the simplest way that I do is..

-I have a publicly exposed version.txt file that has the latest version. The programs version is checked against this
-I also have the necessary files named, in the example of my episode manager, "SMBXEpisodeManager_Latest.exe". My build is set to upload this to the ftp and I manually add the version.txt

Again, I'm totally inexperienced on the server end but this is how I did it with my Episode Manager.

The editor could have a check for updates button or it could do it on startup but we'd still need an external utility to pull down the necessary files and replace them, no matter what OS you're on you can't replace a running EXE :P

When an update is found, the program could launch this external updater app. I suppose we could make it so that if a normal user were to execute it, it would act like a force update type thing.

From there, necessary configs and such can be pulled down and replaced.

Now, I just have to work on learning cURL since C++ doesn't exactly have a simplistic "download files" library like C# and Java do..

ImperatoreXx M
Our friend
Our friend
Avatar
ImperatoreXx M
Our friend
Our friend
Age: 23
Reputation: 9
Posts: 79
Joined: 18 Feb 2014

Post #7by ImperatoreXx » 22 Aug 2014, 14:52

someone from the community tells me how to update platgenwohl and how to use it and where to download it?

Wohlstand M
Lead Developer
Lead Developer
Avatar
Wohlstand M
Lead Developer
Lead Developer
Age: 25
Reputation: 321
Posts: 1302
Joined: 15 Feb 2014
Location: Moscow, Russia
Website Skype YouTube

Post #8by Wohlstand » 22 Aug 2014, 15:41

ImperatoreXx wrote:someone from the community tells me how to update platgenwohl and how to use it and where to download it?
It only planned. For update you need to check time and date of update and download 'lite' or 'tiny' archive and replace your current files with updated


Return to “Engine Development”

Who is online (over the past 5 minutes)

Users browsing this forum: 1 guest