Launch screen Windows

One of my bigger Windows projects take about 10 to 15 seconds (even on a SSD) to launch. It doesn’t load anything other then the Xojo framework I guess.

I could make one by creating a separate app that launch in instantly and then launch the main app. The main app then closes the launch app.
But as far as I see, Xojo doesn’t do this and does quickly shows a launch screen when you double click on the Xojo apps icon.

So, basically how can I show a launching/loading screen so the users know the app is launching without creating an helper .exe ?

Delay the initial method that takes so long.
App.Open would show the loading window, the loading window would have a short timer (150ms should do) to call the intense method, and when complete close the loading window.

Or are you saying that even a brand new empty Xojo app takes 10-15 seconds to launch on Windows?
That would be an issue that needs to be reported.

Does the startup window use much in the way of Graphics? These are all loaded on demand from disc in current Xojo.
Do you have a zealous virus checker? (My AVG checker keeps saying ‘just hang on for 15 seconds while we have a think about it… this app could be dangerous’)

Beware: it could be a Windows 10 problem.
In my applications, the Open event reads all volumes on the machine. Since the latest Windows 10 update I had to remove that from all programs. It took about 10-12 seconds to map through all volumes in a for…next.

You may simply want to display the splash screen right away, and put the long process stuff in a thread that you start from the splash screen’s activate event.

You may want to put a progressWheel or indefinite progressBar on that splash screen to reassure the user that something is running.

Then when the thread is complete, close the splash screen and show the main window.

[quote=378209:@Michel Bujardet]You may simply want to display the splash screen right away, and put the long process stuff in a thread that you start from the splash screen’s activate event.

You may want to put a progressWheel or indefinite progressBar on that splash screen to reassure the user that something is running.

Then when the thread is complete, close the splash screen and show the main window.[/quote]

The question is: what does take long. :slight_smile:
It is big project but after launch it should just show the main window which consists of 4 canvas controls with very simple drawings. Nothing else is doing anything unless the users does interact.
Still, my guess is that it loads the framework/plugins (MBS) it needs. An empty project launches in one second.

BTW I dont use virus scanners and it happens in Win8 and Win10 (both with SSD)

Do you see the same delays when you debug and run compiled?
Do you see any large delays when you profile the code in the IDE?

Same for debug and run.
Will do some profiling now…

Have you tried to profile code ? It should show you where time is wasted.

I did some more tests with profiling and it seems the .ini file it loads is taking a lot of time. I am investigating this now.

Thanks for all the replies and suggestions!

I have a similar issue and was just about to start looking for a faster replacement.
Currently using ‘PrefContainer’ which goes back years, doesnt seem to have an Author (it wasnt me)

Anyone have recommendations for fast preferences read?
TT’s Smartprefs suggests it may be faster to WRITE as it only saves deltas.
But when there are a lot to read in…?