Skip to content

ahmadhayyan/ahUpdater

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

55 Commits
 
 
 
 
 
 
 
 

Repository files navigation

ahUpdater

ahUpdater version ahNotification size ahUpdater license

ahUpdater is a software updater to make your application easier to update and commercial ready. It's easy to set up, lightweight, customizable and user friendly.

ahUpdater ahUpdater
ahUpdater
Features Benefits
• Check for updates, download, install or unzip
• Force update option available
• Custom style, custom text, custom icon
• Set package the way you like
• Make your application more commercial
• Easier to update your application on the client


Table of Contents

How to Install

  • Download ahUpdater here
  • Unzip and put the files on your main application directory
  • Change the update.ini to change the style and the text inside ahUpdater
  • To set the logo you need to put an image file in the main directory named updater_logo.png
  • Create a json file on your server/website with this format :
{
    "app": "",
    "forceUpdate": "",
    "package1": {
        "version": "",
        "url": ""
    },
    "package2": {
        "version": "",
        "url": ""
    },
    "packageN": {
        "version": "",
        "url": ""
    }
}

A couple things about the json format :

  • app : The application that will open when the update is finished (parameters/arguments can be used). Example: mainApplication.exe arg1 arg2 argN or just mainApplication.exe
  • forceUpdate : Is referring to the minimum usable version. If it is below the current app version, the user gets to choose between update or cancel. If it is higher than the current app version, the user cannot choose cancel and the system will automatically update.
  • package : The package can be as many as you like and you can also name it whatever you want to.
  • version : If you want to update your specific package, make sure the version is higher than your current application version. And vice versa if you don't want some package to be updated, make sure the version is lower or same as your current application version.
  • url : The url to download your new package file.

Examples of Implementation

{
    "app": "mainApplication.exe",
    "forceUpdate": "1.0.0",
    "package1": {
        "version": "1.1.0",
        "url": "http://yourwebsite.com/files/mainApplication.exe"
    },
    "package2": {
        "version": "1.1.0",
        "url": "http://yourwebsite.com/files/package2.zip"
    },
    "packageN": {
        "version": "1.0.0",
        "url": "http://yourwebsite.com/files/packageN.zip"
    }
}

How to Use

  • Call the ahUpdtr.exe with 2 parameters/arguments. The first argument is your app current version, second argument is your json file link and the third argument is used to open main application when the updater can't read/access the json file. Call the ahUpdtr.exe without parent it to your main application, because you need to close your application after calling ahUpdtr.exe in order to update.
ahUpdtr.exe <your-app-current-version> <your-json-url> <(optional)your-main-app>

::Example
::ahUpdtr.exe "1.0.0" "http://yourwebsite.com/version.json" "mainApplication.exe -noupdate"

Examples of Implementation Using Qt C++

#include <QProcess>

QProcess *process = new QProcess();
QString program = QCoreApplication::applicationDirPath() + "/ahUpdtr.exe";
QStringList arguments = { your_app_version, your_json_url, your_main_app };
process->start(program, arguments);

close();

Copyright and License

Application and documentation copyright 2021 ahmadhayyan. ahUpdater is released under the MIT License.

About

ahUpdater is a software updater to make your application easier to update and commercial ready. It's easy to set up, lightweight, customizable and user friendly.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

Packages

No packages published