Windows Creators Update Crashing Old C ++ Applications

We have some old C ++ Windows apps that stopped working after Windows Creators update. Like many C ++ developers, we created C ++ wrappers that encapsulated the Windows API. We saved and retrieved our pointers to this via Set / GetWindowsLongPtr () like this (see here for more information on how to do this):

Window=(cWindow*) GetWindowLongPtr(hWnd,GWLP_USERDATA);

      

This has worked well for about 20 years now, but with this latest Windows update, I see rogue messages in our message loop that are not from our windows. GetWindowsLongPtr () returns a pointer that is not ours, causing all sorts of memory access problems. So far I have seen that the class name of these rogue windows is "UserAdapterWindowClass" so I can filter message handling based on that (my crappy job).

What is this new Windows class? What is the purpose? Are there others?

+3
c ++ windows


source to share


No one has answered this question yet

See similar questions:

23
Best way to store this pointer for use in WndProc

or similar:

480
Does the C ++ standard allow uninitialized bool to crash?
476
How do I update Node.js and npm on Windows?
475
How do I update the current line in a C # windows console application?
309
What's the easiest way to make a C ++ program crash?
36
How do I update my old C code?
8
WM_QUIT only messages for a stream, not a window?
five
How to troubleshoot application startup problems with STATUS_DLL_INIT_FAILED (0xc0000142) after Windows 10 Threshold 2 Update (1511 Build 15086)
0
C ++, WIN32, WndProc for member function failure (access violation at 0x88)
0
Unity3D C ++ unmanaged DLL crash on windows 8/10, running on 7
-1
GetWindowLongPtr returns garbage



All Articles
Loading...
X
Show
Funny
Dev
Pics