窗口半透明要使用哪个库?解决方案

窗口半透明要使用哪个库?
我想使一个窗口半透明,参照帮助文档使用扩展风格WS—EX—LAYERED,再设置属性,结果编译时提示风格未定义,设置属性函数未定义,等,是不是还要哪个库?
谢谢!

------解决方案--------------------
C/C++ code

    //===============================================================================================//
    //实现透明效果

    SetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE, 
    GetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE)^0x80000);
    HINSTANCE hInst = LoadLibrary("User32.DLL");  
    if(hInst)  
    {             
        typedef BOOL (WINAPI *MYFUNC)(HWND,COLORREF,BYTE,DWORD);           
        MYFUNC fun = NULL; 
        //取得SetLayeredWindowAttributes函数指针      
        fun=(MYFUNC)GetProcAddress(hInst, "SetLayeredWindowAttributes"); 
        if(fun)fun(this->GetSafeHwnd(),0,40,2);//第三个参数是透明度,查SetLayeredWindowAttributes函数的使用说明
        FreeLibrary(hInst);  
    }

    //===============================================================================================//
    //===============================================================================================//

------解决方案--------------------
楼上的代码,是使用了未公开的api,这个可以用的。
但是最好做下系统判断,并不是所有系统都支持这么干的。
在支持的系统里面运行这段代码。

半透明你可以自己画啊。
在onpaint里面自己画

图像透明算法这样的:
假设有A,B两幅图,上各有a(r1,g1,b1),b(r2,g2,b2)两个点。B图在上,A图在下。如果要让B图半透明。
c : r = r1*T+r2*(1-T)
g = g1*T+g2*(1-T)
b = b1*T+b2*(1-T)
这个T是透明参数,0-1之间,自己试试看