Help - well hopefully
A program that uses a CreateThread function to show a dialog that allows the user to abort the processing of a perhaps long running operation works very well on three different i7 computers and on a Ryzen computer but when run on an i5 LG Gram it chokes and in one case hangs the program and in another crashes it. In all cases of not invoking the CreateThread function the program runs perfectly fine on the i5 LG Gram no matter how many records are processed.
The attached project shows basically how I'm using CreateThread, perhaps I'm doing something fundamentally wrong. The main.c simulates work in a loop. The escapedlg.c is exactly what the original main program uses... BTW I ran the sfc /scannow on the i5 LG and problem still manifests.
When the actual program crashed the system event log showed
Faulting module name: textinputframework.dll, version: 10.0.22621.3810, time stamp: 0xe148209c
Exception code: 0xc0000005
I could of course just do away with the user ability to abort but that is not learning anything...
John Z