They leak every where, but WinNT/Win2000,WinXP system are use 32bit vales for addressing up to 2^32 GDI objects while 9x system uses just 16bit values, thus can hold only 2^16, which is much fewer. However that does not mean you can use the whole 4 billion GDI objects in WinNT systems, still the system put an upper limit but I do not know it exaclty, but I did encounter resource leak in WinXP before. check this MSDN article http://msdn.microsoft.com/msdnmag/issues/01/03/leaks/default.aspx Anyway, to detect resource leaks in Win2000/WinXP just open the task manger and go to the processes tab, then from from the "View" menu choose "Select Columns..." the check "GDI Objects". After that look up your process from the system processes and monitor its GDI Object, if they constantly increase then you have a leak, if it increase then stop increasing then it could just be initial allocations.