windows - WOW64 SetLayeredWindowAttributes LWA\_ALPHA

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg viser en dialog som et lagdelt vindue ved hjælp af kode som denne:


SetLayeredWindowAttributes(modalDlg, 0, 179, LWA\_ALPHA);


... og alt fungerer fint på 32 bit Windows. Men i WOW64 resulterer dette i, at hver pixel enten vises sort eller slet ikke vises (nul gennemsigtighed), afhængigt af hvilken pc vi bruger.


Vi har fire testmaskiner til 64 bit Windows, to med NVidia og to med Intel video hardware, der kører Win7, og vi har prøvet de nyeste video drivere fra hver leverandør og også den automatiske opdatering håndteret af Win7 (nok den samme driver alligevel .. .)


Desværre er spørgsmålet forvirret af det faktum, at en af ​​disse (NVidia) faktisk viser de gennemsigtige pixels som forventet, hvilket gør mig tvivlsomt, at dette virkelig er et problem med WOW64 snarere end video drivere, men hidtil hver maskine, der viser disse symptomer er 64 bit.


Hvis det gør nogen forskel, vises dialogen over et fuldskærmsvindue, der afspiller video, styret af MCI-kommandoer. Jeg bruger også SetLayeredWindowAttributes med indstillingen LWA\_COLORKEY til en anden dialog, der vises over denne video, men der er ingen problemer med den.


Nogle ideer...?

Bedste reference