+
+#elif defined WIN32
+ // We dynamically load msimg32.dll to get a pointer to TransparentBlt()
+ p_intf->p_sys->h_msimg32_dll = LoadLibrary("msimg32.dll");
+ if( !p_intf->p_sys->h_msimg32_dll ||
+ !( p_intf->p_sys->TransparentBlt =
+ (BOOL (WINAPI*)(HDC,int,int,int,int,HDC,
+ int,int,int,int,unsigned int))
+ GetProcAddress( p_intf->p_sys->h_msimg32_dll, "TransparentBlt" ) ) )
+ {
+ p_intf->p_sys->TransparentBlt = NULL;
+ msg_Dbg( p_intf, "Couldn't find TransparentBlt(), "
+ "falling back to BitBlt()" );
+ }
+
+ // idem for user32.dll and SetLayeredWindowAttributes()
+ p_intf->p_sys->h_user32_dll = LoadLibrary("user32.dll");
+ if( !p_intf->p_sys->h_user32_dll ||
+ !( p_intf->p_sys->SetLayeredWindowAttributes =
+ (BOOL (WINAPI *)(HWND,COLORREF,BYTE,DWORD))
+ GetProcAddress( p_intf->p_sys->h_user32_dll,
+ "SetLayeredWindowAttributes" ) ) )
+ {
+ p_intf->p_sys->SetLayeredWindowAttributes = NULL;
+ msg_Dbg( p_intf, "Couldn't find SetLayeredWindowAttributes()" );
+ }
+