Windows App fails to start

My main app works fine on hundreds of machines a month.
Now and then, I get reports that it will not start, after a sucessfull install.
There are no displayed errors, no virus checker warnings, smartscan reputation services (spit) are turned off.
The app is compiled under Xojo 2015, as 32 bit (for speed and GDI reasons, I cannot go higher, even though I have a current licence)

The app never even gets to the event… it just never appears in task manager at all.

I just purchased a Surface tablet , running Windows 10 pro , and now it is happening there for me.
So I can at last see the issue and play with it, but Im getting nowhere.
Windows 8 compatibility mode, Administrator mode… nothing works.

Is there anywhere I might find a log with an error code or reason for this?

Might be a silly question, how do you know its not getting to the event, do you log something to a file in there near the start or do you use system.debuglog and you are checking windbg?

On your surface, have you installed/signed in using a cloud account? If so, did you link to onedrive? If so, are you looking in specialfolder.something which is in the wrong location now due to the previous two questions?

Is it an architecture issue? Are those tablets x86 or Arm. I don’t think Arm was supported back in 2015. If so I don’t know if they come with an x86 emulator.

32bit apps have always worked on arm.

Even x86 ones?

Yes, which is why I was perturbed when xojo switched the ide to 64bit only.

More or less.
I have a debug log that gets created when the app starts, if I hold down SHIFT.
In the open event, if support files are missing, it offers to unpack them.
I dont believe I have OneDrive turned on… its a fresh install of Windows and I haven’t been asked, (but there are a lot of unwanted settings I am working through) If so, are you looking in

specialfolder.something which is in the wrong location now due to the previous two questions?

Can you elaborate? Why would using specialfolder.something be a problem when OneDrive is in use?

Its an intel device.
I have now found that a build from a year or two ago works, while this years does not.
There may be an MBS plugin version change in the interim.
and there will have been a change to the signing certificate.

But why this years version works on 99% of of customer machines, but not some, is the mystery.

Fair enough.

SpecialFolder.Desktop and SpecialFolder.Documents point to unexpectedly incorrect locations when OneDrive is installed during first set up. Your app might be expecting something that isn’t right. Just a hunch. It’s probably not than then if an older version works.

Did you check Event Viewer>Windows Logs>Application for a crash?

seems to be nothing there about my app.

I just installed and ran it ok on my W11 surface which has the OneDrive setup I mentioned, so its not that.

Does it run ok if you install xojo on your surface and run it from there?

At the moment, I don’t want to ‘contaminate’ the Surface with a development environment.
At some point I expect I will need to try that.

I do now know that the MBS plugins are a different version, and that the signing certifcates are different.
So I can try a build of new version with old plugins, but I can probably no longer use the old certificate.
Obviously some of my code will have changed too, but Im pretty sure it never even gets to start executing

If you want to risk a reboot, you can install windows sandbox which gives you a secure area to test which wont interfere with your base install which you can throw away, or you could try virtualbox.

You can also manually add a restore point to your base machine before you do anything if you need to roll anything back.

I also note that you don’t include the runtime dll’s with your app, are you sure you’re installing the right runtimes? It might be worth a build to include those and see if there’s any difference (if that was even possible in the 2015 edition)?

1 Like

Dont need runtimes for the 32bit build unless I am mistaken.
Maybe the MBS plugins expect them?

You need the 2015 runtime for 32 bit apps starting with Xojo 2016r1.
docs link

Edit: However, the MBS plugins could still require something not included. It has happened in the past.

Looks like this has cracked the problem, or at least provided a solution for my customers.
I’m not using 2016… still using 2015… but clearly Christian is expecting these runtimes to exist too for his plugins, even when used on an older version of Xojo.