Feb
12

NSIS 插件全集

Math plugin (contain examples) -- 数学函数插件,NSIS 软件已包含,这个不用说了吧,计算的时候必用。
System plugin (contain examples) -- 调用其他动态链接库(*.dll)插件,NSIS 软件已包含,超级好用,把 windows 的 API 发挥到极限。

A Plugin for controlling Internet Explorer -- 控制 IE 浏览器操作的插件,例如打开浏览器,关闭浏览器等等。

AccessControl plugin -- 存取控制插件,只适用于 Win2000 或以上。

BDE Alias -- Borland BDE 数据库别名创建修改插件(DELPHI 数据库程序安装制作的好东东)

BitTorrent downloads for NSIS -- BT 下载的插件,呵呵,作单独下载某个 BT 文件的好东西

0 Comments
Feb
12

NSIS中当没有需安装组件被选中,下一步按钮为不可用的脚本

; —— 当没有组件被选中时下一步按钮为不可用 ——
Push $0
Push $1
SectionGetFlags ${Section11} $0
IntOp $0 ${SF_SELECTED} & $0
SectionGetFlags ${Section21} $1
IntOp $1 ${SF_SELECTED} & $1
IntOp $0 $1 | $0
SectionGetFlags ${Section22} $1
IntOp $1 ${SF_SELECTED} & $1
IntOp $0 $1 | $0
SectionGetFlags ${Section231} $1
IntOp $1 ${SF_SELECTED} & $1
IntOp $0 $1 | $0
SectionGetFlags ${Section232} $1

0 Comments
Nov
14

NSIS API常用函数

OutFile "常用API函数集.EXE"
Name "常用API函数集"
Section
;获得安装程序所在目录
System::Call 'kernel32::GetCurrentDirectory(i 1024,t .R1)'
MessageBox MB_OK '安装程序所在目录:$R1'

;获得当前安装程序进程PID
System::Call 'kernel32::GetCurrentProcessId()i .R0'
MessageBox MB_OK '安装程序进程PID:$R0'

;获得磁盘卷标
StrCpy $R0 "C:\"
System::Call 'kernel32::GetVolumeInformationA(t R0,t .R1,i 100,i .R3,i .R4,i .R5,t .R6,i 100)'
MessageBox MB_O...

0 Comments
Nov
14

NSIS目录变量

$PROGRAMFILES

程序文件目录(通常为 C:\Program Files 但是运行时会检测)。

$COMMONFILES

公用文件目录。这是应用程序共享组件的目录(通常为 C:\Program Files\Common Files 但是运行时会检测)。

$DESKTOP

Windows 桌面目录(通常为 C:\windows\desktop 但是运行时会检测)。该常量的内容(所有用户或当前用户)取决于 SetShellVarContext 设置。默认为当前用户。

$EXEDIR

安装程序运行时的位置。(从技术上来说你可以修改改变量,但并不是一个好方法)。

${NSISDIR}

包含 NSIS 安装目录的一个标记。在编译时会检测到。常用于在你想调用一个在 NSIS 目录下的资源时,例如:图标、界面……

$WINDIR

Windows 目录(通常...

0 Comments