Installer are not really a Mac thing (even if there were some 25-30 years ago).
Since then, we move the application into the Applications folder and the Application do the job (looks what Xojo does at load time: create a Xojo folder, copy there the local LR, etc.).
I do not care about Installer. What I hate is msi files: you believe you downloaded the software and at load time you realize you only have a downloader application. If you do not have Internet at home, you are in the s***t :(. Now I know that I have to check the size of what I download
In the end, you downloaded the installer + the application !
Well, think about it. As I mentioned two days ago, in macOS the Resources and Library folders are created INSIDE your app. So if you move it around, they get to go along too. In Windows these are created by the IDE build step NEXT TO your .exe. So you either leave them there or move the whole lot around together.
There is no need to use an installer on a Mac app and if I ever came across a Mac app inside an installer, it would be a really bad sign to me as a long-time Mac user.
There are a handful of apps on a Mac that would require an installer
One’s that installs KEXT’S or other low level system components often need an installer
But your average app doesnt need to do this and so should not require much more than a drag and drop “install” like the Xojo IDE does on macOS
Windows is a whole different game though and installers are common - if not expected. MS basically assumes you do ship your app with an installer.
But a properly built DMG can actually craft a short cut that when you drag and drop puts the app in the right spot
Simple check out the Xojo dmg on macOS
When you open it it shows Xojo and an alias to the Applications folder that if you drag Xojo onto that alias it lands in the rght place on your system
Thats as close to the “right way” to do this as you get
And there are tools to help you create such a DMG (dropdmg and several others)
[quote=433429:@Tim Hare]Don’t use the path. Save a folderitem pointing to your folder in ApplicationData and use Child to get to the specific file in the folder.
I wrote:
app.VPdata = SpecialFolder.ApplicationData.child( “OpVPdata” )
Dest = app.VPdata.child( “Games” )
if Dest = nil then
Dest.CreateAsFolder
end if
x = CopyFileOrFolder( Source, Dest )
and I get “NilObjectException” on “Dest.CreateAsFolder”
OpVPdata is a folder that has been previously created in SpecialFolder.ApplicationData. The absolute path is Internal:Users:Dan:Library:Application Support:OpVPdata
Games is intended to be a sub-folder into which CopyFileOrFolder
is to copy several text files from Source.
Of course Dest is nil, indicating the need to create the Games folder.