Archive: Splash Screen problem


Splash Screen problem
I have another problem is that the Adv. splash Screen is not working. (Tuesday build). Thanks!


Please provide some more details... What exactly doesn't work? Does it show the image and doesn't play the sound? Does it ignore your transperncy settings? What exactly is wrong?

Please attach the script too.


The image doesn't show and I just copy the script from the example that is in AdvSplash folder, and I just change the path for it. It works in the last week build, but not the Tuesday one. Thanks!


The example works perfectly fine for me. Please attach your script.


Ok. For the first I really found some bug in advsplash, but I don't know is it the problem of mjalan.
Example of the bug is in kichik's example (example.nsi): I've got no second splash at my winXP. The solution is easy, the second splash couldn't re-register the window class, which left after the first splash (comment from MSDN for RegisterClass: Windows NT/2000/XP: No window classes registered by a .dll are unregistered when the .dll is unloaded. A .dll must explicitly unregister its classes when it is unloaded.).

So, all the other plugins (simple splash for example) should be updated with UnregisterClass too.

The second problem was described in kichik's PM to me: the same second splash shows the black rectangle under the splash itself (win2k/xp only). Actually that's not my problem, but a bug from microsoft (who would like to report? ;), whenever window height is smaller than some value, applying the WS_EX_LAYERED style will set window size to that value :). And this value is very similar to the size of window title bar.

Solution... hm... Use pure black (=0) as keycolor (and area will disappear), or use images larger than toolbar size...

I'm planned new advsplash version, but it requires some time... Will start the work ASAIWHAFTFTNGACSPOMB (As Soon As I Will Have A Free Time From The Next Great And Cool Software Project Of My Boss)...


Hmm... Look what I found in the same page about RegisterClass... Line after line:

All window classes registered by a dynamic-link library (DLL) are unregistered when the DLL is unloaded.

No window classes registered by a DLL are unregistered when the DLL is unloaded. A DLL must explicitly unregister its classes when it is unloaded.
:eek: :weird:

Geee... :mad:

I have added UnregisterClass to splash and BgImage just in case...