Retro Uprising
  Home Game Menu Rules and FAQs Forum Community Chat Today's Posts Search Register  
Go Back   Retro Uprising > Other > Programmers Developers Designers

Reply
 
Thread Tools Search this Thread Display Modes
Old 01-07-2015, 04:16 PM   #1
Kong's Avatar
 
Kong

Small C++ Program

I am about to hire someone from India to do this for RU. Posting it here first in case anyone is interested.

This project will use "custom URL protocols" and "web dav / web disk". You do not need prior knowledge of these. I will provide scripts to set these up. Your installer just needs to run the provided scripts.

First you will create a stand alone exe and an installer for Windows.

After I test it on Windows you will port it to MacOS, Linux, Android & iOS.

You will need to provide all source code and build instructions.

The program you create will have no display window and be invisible to the end user but it must display dilog boxes to ask the user questions or provide confirmations and progress bars.

The program you create will download files, launch another program that I provide (Libretro) and monitor folders for changes, syncing those changes with the server. Your program will close itself when the child program (libretro) exits.

Order of events.

Step 1.
Your installer registers a custom URL protocol. (examples of custom URL protocol. mailto://, news://, git://, ftp://, spotify://.) You probably have never set these up before but it is simple and documented. In windows it is just a 5 line reg file.
Instructions for Windows here - Registering an Application to a URI Scheme (Windows)

Step 2.
Install a web dav disk drive. I will provide a script for each platform. Your installer just needs to run the provided script.

Step 3.
extract the exe you create (see below) and a zip file I provide (libretro) from the installer to the program files folder. Create a shortcut on the desktop and start menu to the folder and to retroUp.com.

Step 4.
The custom url protocol in Step 1 will launch your exe from step 3. The url will be in the form of "retroUp://%key%". This will launch the exe you create with the argument "%key%". Key will be an alpha-numeric security code generated by retroUp.com.

Step 5.
Your exe will visit http://retroUp.com/commands.php?key=%key% and download a json file containing the following variables.
version
core
content
ext
count
extract
config
sync (this will be a list of folder paths, files and check sums)

step 6.
If the version whole number has changed (1.0 to 2.0) then display a message box and tell the user they must upgrade. If the user clicks cancel the program exits. If they click OK then download the new version and replace the existing exe.

Step 7.
If the version decimal number has changed (1.0 to 1.1) then display message box asking the user if they want to upgrade. Provide the options "ask me again next time", "skip this version (don't ask again)" and "yes (upgrade now)" and perform the logic for each of these responses.

Step 8.
Check if the file %core%.dll exists in the program's folder. If it does not download it from http://retroUp.com/commands.php?core=%core%.dll

Step 9.
Check if the file %content%.%ext% exists in the %temp% folder. If it does not then download it from http://retroUp.com/commands.php?content=%content%.%ext%

Step 10.
if %count% is larger than one then repeat step 9 for %count% times looking for %content%-%count%.%ext%

Step 11.
Sync folder1, folder2, folder3 with server. The json file at launch will give you a list of files to download and paths to store them in and check sums to verify success. Provide a progress bar and confirmation or error message on completion.

Step 12.
Launch libretro.exe %core% %zip% -config %config%"

Step 13.
Monitor folder1, folder2, folder3. If files change upload them to server. Provide progress bar, and success or error message on completion. All other dialogs/progress bars should be medium sized in center of screen. The dialog windows for this step should be small and in bottom corner, except for error message which should appear as normal in center.

Step 14.
Monitor libretro.exe window. When it closes, exit your program.
My SignatureDisplay Signature Reply With Quote
Old 01-02-2016, 04:43 PM   #2
fungusman's Avatar
 
fungusman

Re: Small C++ Program

I did some webdav stuff for running my own cloud server. I don't knows the c++'s tho @_@
My SignatureDisplay Signature Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
A couple of small things... comboace Retro Uprising Support 3 09-25-2014 05:34 PM
Just a Couple Of Small Questions/Requests/Glitches. Shnarf Chat 77 05-27-2010 02:53 PM
RU NEWS - A Small Glimpse at the Origins of Mega Man X Kugyince Scoop 4 04-22-2010 11:29 AM
best program for unzipping files Tails Help 19 05-12-2009 03:29 AM
A small demo of a game I'm making. randomcontributor All Other Games 11 04-19-2008 10:50 PM


All times are GMT -5. The time now is 10:24 PM.

» vBadvanced CMPS