Windows/qrexec/hang issue - How to troubleshoot?

This seems to happen regularly: qrexec starts giving strange responses, and the windows display stops updating correctly, but i can still interact with the screen

Jumping to the erroneous “success” message:
running a command like

qvm-run --pass-io win7x64-appvm dir

starts returning:

ioall.c:83:read_all:EOF
qrexec-daemon-common.c:35:negotiate_connection_params: read daemon: Success

instead of returning a directory listing

Here’s the exact details:
win7x64-appvm ran a application for over a day. Then:

at 23:50:02 (dom0 clock), qrexec for win7x64-appvm was acting normally

at 23:50:21 (guest VM clock), a application running in the win7x64-appvm that was running a clock, stopped updating the clock on the windows screen. however The windows clock in the lower right corner kept updating. Clicking on the windows buttons does not do anything, and the windows clock stops updating and the windows buttons no longer play their animations

at somewhere around 23:55:02(dom0 clock), qvm-run started giving the error message mentioned above.

Many hours after that, the windows clock is still keeping time. Clicking on the application with the frozen clock does nothing.
Hovering over windows buttons, like the start button, or icons in the tray, causes it to play the animation that makes them look “brighter”.
Trying to kill it with

qvm-shutdown win7x64-appvm

returns in 0.2 seconds, but the qube does not actually shut down.

Configuration:
Qubes 4.2 (installed from scratch)
windows 7 (created with qvm-create-windows-qube).
Using qwt 4.1.69
Using “profiles moved to Q: drive” option of qwt
USB 3 driver mentioned in instructions loaded.
USB passthrough is passing through 1 usb device, which is being used by the application displaying the clock on the screen

displays the “you must restart your computer to apply these changes” message every time the appvm starts. Starting the template, then closing the template does not make the message go away in the appvm.

seems to always happen eventually

So this could easily be a windows problem not a qrexec problem. I’m not as familiar with windows, so my question is: is there a way to debug it to determine if the problem is windows, or its the qrexec commands i’m sending to it every 5 min, or memory, etc?

Looking in the event log, it looks like events were not recorded starting 8 min before the test (probably when the qube was shut down, the template was started (to try to get rid of the “you need to reboot” message), then the template was shut down and the appvm was started again. (eventlog is purged because it’s a appvm?)

–update–
I just tried creating a standalone from the template (with private user partition), and the result is a “location not available C:\windows\system32\config\systemprofile\Desktop”, and much of the gui breaking.

I formatted Q: drive, but rebooting unformats the drive. (I guess only the first drive is persistent in standalones)