The “Creating a Common Desktop App Installer” tutorial blended learning course shows you how to build a cross-platform app installer using Xojo. With the use of single class and a handful of method calls when your app starts up, setting up your app’s data is performed for you.
Title: Creating a Common Desktop App Installer
Code: KN-UDI
Date available: Feb 16, 2020, presented at Xojo.Connect 2020
Built and tested with: Xojo 2019R3.1 (64-bit Windows and macOS)*
This material is copyright © 2019-2020 by Leading Software Maniacs, LLC
Xojo is a trademark of Xojo, Inc.
* You'll need the use of the Inno Setup installer (Windows) and DMG Canvas (macOS) tools for final app packaging.
A Windows app installer copies the app and its DLLs to Program Files\ and also installs it’s support files. On the Mac, the installer copies the app to Applications/ folder. It is the app’s responsibility to load it’s support data files (and folders) if they don’t already exist.
Combined with Xojo's build automation feature, you’ll be able to use our clsUDI class object that gives an app an easy way to automatically load it’s data. Our approach is common for both macOS and Windows.
A 24-minute video walks you through the tutorial on how to use the clsUDI class for easy loading of your app’s data when your app starts up. (Of course, if the data already exists, nothing will be loaded!)
Sample video trailer of the course
A common unified desktop app installer class, called clsUDI, is provided for your use (no royalties or trademark mentions are required for you to use). When an app starts, the first thing it should do is create the class, test if the app’s support data exists, and create the app support folders before loading the data:
Dim udi As New lsmUDI.clsUDI(kUDI_strCompany, kUDI_strAppName)
Dim intResult As Integer
If (udi.doesAppSupportFolderExist > 0) Then
gintAppSupportFoldersCreated = udi.createAppSupportFolder
If (gintAppSupportFoldersCreated > 0) Then
If (udi.loadFile("ReadMe.txt", "") = 0) Then
intResult = udi.loadFolder("Logs", "Application Support")
A test app, KN-UDI Test, provides a visual log demonstrating how to use clsUDI. Here is a sample UI of the app that demonstrates the automatic loading of the test app’s working data:
No software code is complete without “killer” specifications and documentation. The documentation includes a 3-page overview syllabus and a unique 4-page user guide documentation in newspaper format:
CONTACT KEN ABOUT
THE TRAINING COURSE
1201-1440
. .
601-1024