Author Topic: GdiTransparentBlt  (Read 1997 times)

dedndave

  • Member
  • *****
  • Posts: 6443
  • Still using Abacus 2.0
    • View Profile
GdiTransparentBlt
« on: May 24, 2012, 07:47:31 AM »
GdiTransparentBlt missing from gdi32.inc/lib

MichaelW

  • Global Moderator
  • Member
  • *****
  • Posts: 972
    • View Profile
Re: GdiTransparentBlt
« Reply #1 on: May 24, 2012, 04:37:38 PM »
I checked the GDI32.DLL exports on my Windows 2000 system and GdiTransparentBlt is there, but strangely enough it’s not listed in my 2003 PSDK.

According to this it’s the same as TransparentBlt, and it appears to produce the same output
Well Microsoft, here’s another nice mess you’ve gotten us into.

dedndave

  • Member
  • *****
  • Posts: 6443
  • Still using Abacus 2.0
    • View Profile
Re: GdiTransparentBlt
« Reply #2 on: May 24, 2012, 11:00:49 PM »
it is the same - probably a wrapper
the TransparentBlt function is in msimg32.dll

by using the Gdi version, we don't have to include msimg32.inc/lib   :P

MichaelW

  • Global Moderator
  • Member
  • *****
  • Posts: 972
    • View Profile
Re: GdiTransparentBlt
« Reply #3 on: May 25, 2012, 01:45:28 AM »
I just did dumps of both DLLs and GDI32.dll does not import anything from MSIMG32.DLL, but here is a listing of what MSIMG32.dll imports from GDI32.dll:
Code: [Select]
    GDI32.dll
              6B2C1000 Import Address Table
              6B2C15C8 Import Name Table
              FFFFFFFF time date stamp
              FFFFFFFF Index of first forwarder reference

      77F6763F    ED  GdiGradientFill
      77F677F1   109  GdiTransparentBlt
      77F4334B   157  GetObjectA
      77F45946   12D  GetDeviceCaps
      77F67553    B6  GdiAlphaBlend
      77F420CB   158  GetObjectType
      77F45DC7   126  GetCurrentObject

So I agree, the most direct route would be to fix the import library for GDI32.dll.

I still don't understand why GdiTransparentBlt is not documented in the 2003 PSDK. What reason could Microsoft have for not documenting it?

Well Microsoft, here’s another nice mess you’ve gotten us into.

dedndave

  • Member
  • *****
  • Posts: 6443
  • Still using Abacus 2.0
    • View Profile
Re: GdiTransparentBlt
« Reply #4 on: May 25, 2012, 10:28:50 AM »
good to know, Michael

especially interesting are GdiGradientFill and GdiAlphaBlend
they also do not appear in gdi32.inc/lib
the others do