structure definitions

Started by
1 comment, last by Boltimus 22 years, 10 months ago
Hi all, I''m trying to find the EXACT struct definitions for items such as..HWND, HDC..etc.. I tried looking in the win32 SDK that came with VC++ 6.0, but it really wasn''t any help. Does anyone know where of a reference (preferably online and..hehe ... free) that lists that definitions of some or even al the structs? or at least the more important ones? also, does anyone know of a good article or something that explains (better than the bok im reading now) more about GDI Device contexts or rather simply device contexts in general?? Thanks! any help would be greatly appreciated!
~Bolt"All men dream: but not equally. Those who dream by night in the dusty recesses of their minds wake in the day to find that it was vanity: but the dreamers of the day are dangerous men, for they may act their dreams with open eyes, to make it possible." This I did...
Advertisement
The structure layouts differ among the various strains of Windows, and there also are differences between retail and debug builds of a given version. Many internal structures are documented in the DDKs (device driver development kits), some of which can be downloaded for free from Microsoft''s web site. You might want to look at the ''Undocumented $FOO'' books by Andrew Shulman and Matt Pietrek, who did a good job of dissecting Windows (95) internals and describing the inner workings - including WND and DC layouts. The books have gathered a bit of dust over the years but they give you lots of inside info. A similar resource is the Undocumented Corner in DDJ.

What are you trying to do - reinvent WinG?
read through windef.h in your compiler''s source include directory. all those are described by "DECLARE_HANDLE". This is a macro in (for me) winnt.h:

  #ifdef STRICTtypedef void *HANDLE;#define DECLARE_HANDLE(name) struct name##__ { int unused; }; typedef struct name##__ *name#elsetypedef PVOID HANDLE;#define DECLARE_HANDLE(name) typedef HANDLE name#endiftypedef HANDLE *PHANDLE;  

This topic is closed to new replies.

Advertisement