Google
      
发新话题
打印

[转帖] NSIS 闪屏的新插件的使用

NSIS 闪屏的新插件的使用

昨晚被不死帝国问到一个问题: 就是在 “良朋網作品 OEM 設置 V1.43” 中的闪屏里用BMP图片实现了无窗体透明的闪屏效果 见图一

看到图片时候 觉得闪屏能实现这样的效果也不错 就研究了一下 通过提取良朋的图片(偷一下懒了^_^) ,编译后发现竟然没有实现和他一样的效果 .后来在NSIS自带的例子中找了关于闪屏的例子(X:\Program Files\NSIS\Examples\AdvSplash\Example.nsi) 看到里面有一个效果和想要实现的差不多  不过还是没搞懂 (代码一红色处) 因该是图二所示那个位置的代码 ^_^ 我也是菜菜嘛
希望有朋友能指点一下 把良朋有的图片也传上来以供研究 附件
复制内容到剪贴板
代码:
        ;代码一      
        File /oname=$PLUGINSDIR\splash.bmp "${NSISDIR}\Contrib\Graphics\Wizard\nsis.bmp"
        advsplash::show 1000 600 400 0x04025C $PLUGINSDIR\splash
        Pop $0
后来在NSIS网站上找了NewAdvSplash这个插件 通过这个用GIF图片实现了图一的效果 见图三

NewAdvSplash插件下载地址 :

附件已经提供该插件

要使用插件请把插件DLL文件复制到NSIS目录下的Plugins文件夹里(X:\Program Files\NSIS\Plugins)
然后编译以下代码即可
注意在做图片的时候一定要是GIF的图片背景是透明的才能达到效果 而且在脚本中不要使用透明颜色 这样才能实现所要的效果
复制内容到剪贴板
代码:
Name "test"
OutFile "test.exe"

AutoCloseWindow true

!include "MUI.nsh"
!insertmacro MUI_LANGUAGE "English"

Function .onInit
    InitPluginsDir
    SetOutPath "$PLUGINSDIR"
    File "test.gif"
    newadvsplash::show /NOUNLOAD 2000 1000 2000   "$PLUGINSDIR\test.gif" ;调用新插件语句
    Sleep 2000 ;延迟2秒
    MessageBox mb_ok "演示完毕"
FunctionEnd


Section ""
;形式而已
SectionEnd
附件: 您所在的用户组无法下载或查看附件

TOP

发新话题