1

I've got a console application that connects a nRF bluetooth USB dongle and starts data notifications. It's a sample program packaged by Nordic (the dongle manufacturer), the code source is available but I directly use the binary.

On my machines (Win7 and Win10), this app constantly freezes within a few seconds. When I report the issue to the manufacturer, he cannot reproduce the freezing.

Then, I want to make a video to show him the freezing, but, suprisingly, when I start Windows Video Grabbing (Windows key + G, on my Win10 machine), then the app does not freeze anymore.

I could reproduce this many times in a row: - I reboot my machine - I run the app 1 to 4 times in a row, it always freezes - I start Windows video grabbing on the console I start the app from - I run the app, it does not freeze. Now it becomes stable every next runs (with or without video grabbing)

I tried to manually change the app priority, with no success.

Is there anything Windows setup when you start video grabbing, at any level, that I could manually set to make my app more stable for good?

Note: I tried to compile the code and debug but this leads nowhere. The freezing is apparently in Windows USB driver layers that just stops propagating data to the app at some point.

  • Print your apps progress to a file. Flush, then close the file after every write. This might help you to define the "point" in "` just stops propagating data to the app at some point`". If you were running in Linux and your app crashed, it would produce a core dump. You could feed that to a debugger and see which code line fails & examine the call stack and program variables. I imagine that you can do something similar in Windows. – Mawg May 16 at 12:13
  • 1
    @Mawg: Thanks for the help, but I'm not trying to figure out why the app freezes, just trying to undertand how grabbing a video may impact the app's runtime. By the way, there is no crash, it's just that the app stops receiving data, as if the USB driver stopped working. – jpo38 May 16 at 12:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.