It is very difficult to have really *transparent* bmp pictures.
You need to set one color as mask [e.g. fuchsia 0xFF00FF] and then BitBlt whole picture bit after bit onto form's canvas...
There is much more theory behind it:
http://www.codeproject.com/KB/graphi...itmapmask.aspx [This is only example, maybe try to google better example]
I suppose you should create some plugin in C++ which will perform all steps for you.
Also keep in mind that you will still see form behind the picture [usually BtnFace color] so you will not see desktop!
Easiest way is to use use .png/.gif images -> load it using OLE functions
http://nsis.sourceforge.net/NsDialogs_SetImageOLE but there are also some problems.