how to find type of GDI-Collection of common programming errors
You are not going to be able to achieve what you desire, in full generality it is not realistically possible.
A window’s type (or class) is essentially determined by its WndProc. You can use GetClassName and its ilk to help you identify some standard window classes, but as you have already discovered, most real-world apps will not use these standard classes.
So, although in theory, you could analyse the code behind the WndProc at runtime, in practice this is not remotely feasible.