Minor example scripts and WinVer.nsh fixes
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@6272 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
parent
b76e823c5c
commit
1f949ccb94
6 changed files with 23 additions and 119 deletions
|
@ -3,6 +3,7 @@ Name "BgImage.dll test"
|
||||||
OutFile "BgImage Test.exe"
|
OutFile "BgImage Test.exe"
|
||||||
|
|
||||||
XPStyle on
|
XPStyle on
|
||||||
|
RequestExecutionLevel user
|
||||||
|
|
||||||
!define DEBUG
|
!define DEBUG
|
||||||
!macro GetReturnValue
|
!macro GetReturnValue
|
||||||
|
|
|
@ -5,6 +5,9 @@ Name "nsDialogs Example"
|
||||||
OutFile "nsDialogs Example.exe"
|
OutFile "nsDialogs Example.exe"
|
||||||
|
|
||||||
XPStyle on
|
XPStyle on
|
||||||
|
RequestExecutionLevel user
|
||||||
|
|
||||||
|
LicenseText "All the action takes place on the next page..."
|
||||||
|
|
||||||
Page license
|
Page license
|
||||||
Page custom nsDialogsPage
|
Page custom nsDialogsPage
|
||||||
|
|
|
@ -1,9 +1,11 @@
|
||||||
!include LogicLib.nsh
|
!include LogicLib.nsh
|
||||||
!include nsDialogs.nsh
|
!include nsDialogs.nsh
|
||||||
|
!include WinMessages.nsh
|
||||||
|
|
||||||
Name "nsDialogs Timer Example"
|
Name "nsDialogs Timer Example"
|
||||||
OutFile "nsDialogs Timer Example.exe"
|
OutFile "nsDialogs Timer Example.exe"
|
||||||
XPStyle on
|
XPStyle on
|
||||||
|
RequestExecutionLevel user
|
||||||
|
|
||||||
Var DIALOG
|
Var DIALOG
|
||||||
Var TEXT
|
Var TEXT
|
||||||
|
@ -17,7 +19,7 @@ Page custom nsDialogsPage
|
||||||
|
|
||||||
Function OnTimer
|
Function OnTimer
|
||||||
|
|
||||||
SendMessage $PROGBAR ${PBM_GETPOS} 0 0 $1
|
SendMessage $PROGBAR ${PBM_GETPOS} 0 0 $1
|
||||||
${If} $1 = 100
|
${If} $1 = 100
|
||||||
SendMessage $PROGBAR ${PBM_SETPOS} 0 0
|
SendMessage $PROGBAR ${PBM_SETPOS} 0 0
|
||||||
${Else}
|
${Else}
|
||||||
|
@ -28,7 +30,7 @@ FunctionEnd
|
||||||
|
|
||||||
Function OnTimer2
|
Function OnTimer2
|
||||||
|
|
||||||
SendMessage $PROGBAR2 ${PBM_GETPOS} 0 0 $1
|
SendMessage $PROGBAR2 ${PBM_GETPOS} 0 0 $1
|
||||||
${If} $1 = 100
|
${If} $1 = 100
|
||||||
SendMessage $PROGBAR2 ${PBM_SETPOS} 0 0
|
SendMessage $PROGBAR2 ${PBM_SETPOS} 0 0
|
||||||
${Else}
|
${Else}
|
||||||
|
@ -39,10 +41,10 @@ FunctionEnd
|
||||||
|
|
||||||
Function OnTimer3
|
Function OnTimer3
|
||||||
|
|
||||||
SendMessage $PROGBAR3 ${PBM_GETPOS} 0 0 $1
|
SendMessage $PROGBAR3 ${PBM_GETPOS} 0 0 $1
|
||||||
${If} $1 >= 100
|
${If} $1 >= 100
|
||||||
${NSD_KillTimer} OnTimer3
|
${NSD_KillTimer} OnTimer3
|
||||||
MessageBox MB_OK "Timer 3 killed"
|
MessageBox MB_OK "Timer 3 killed"
|
||||||
${Else}
|
${Else}
|
||||||
SendMessage $PROGBAR3 ${PBM_DELTAPOS} 2 0
|
SendMessage $PROGBAR3 ${PBM_DELTAPOS} 2 0
|
||||||
${EndIf}
|
${EndIf}
|
||||||
|
@ -82,6 +84,8 @@ Function nsDialogsPage
|
||||||
|
|
||||||
${NSD_CreateProgressBar} 0u 52u 100% 12u ""
|
${NSD_CreateProgressBar} 0u 52u 100% 12u ""
|
||||||
Pop $PROGBAR2
|
Pop $PROGBAR2
|
||||||
|
SendMessage $PROGBAR2 ${PBM_SETBARCOLOR} 0 0x0000FF ; No visual styles
|
||||||
|
SendMessage $PROGBAR2 ${PBM_SETSTATE} ${PBST_ERROR} 0 ; Vista+
|
||||||
|
|
||||||
${NSD_CreateButton} 0u 67u 100u 14u "Kill Timer 2"
|
${NSD_CreateButton} 0u 67u 100u 14u "Kill Timer 2"
|
||||||
Pop $BUTTON2
|
Pop $BUTTON2
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
!include MUI.nsh
|
!include MUI.nsh
|
||||||
!include LogicLib.nsh
|
!include LogicLib.nsh
|
||||||
|
!include nsDialogs.nsh
|
||||||
!include WinMessages.nsh
|
!include WinMessages.nsh
|
||||||
!include FileFunc.nsh
|
!include FileFunc.nsh
|
||||||
|
|
||||||
|
@ -12,113 +13,6 @@ Page custom nsDialogsDirectory
|
||||||
|
|
||||||
!insertmacro MUI_LANGUAGE English
|
!insertmacro MUI_LANGUAGE English
|
||||||
|
|
||||||
!define WS_EX_CLIENTEDGE 0x00000200
|
|
||||||
|
|
||||||
!define WS_CHILD 0x40000000
|
|
||||||
!define WS_VISIBLE 0x10000000
|
|
||||||
!define WS_DISABLED 0x08000000
|
|
||||||
!define WS_CLIPSIBLINGS 0x04000000
|
|
||||||
!define WS_MAXIMIZE 0x01000000
|
|
||||||
!define WS_VSCROLL 0x00200000
|
|
||||||
!define WS_HSCROLL 0x00100000
|
|
||||||
!define WS_GROUP 0x00020000
|
|
||||||
!define WS_TABSTOP 0x00010000
|
|
||||||
|
|
||||||
!define ES_LEFT 0x00000000
|
|
||||||
!define ES_CENTER 0x00000001
|
|
||||||
!define ES_RIGHT 0x00000002
|
|
||||||
!define ES_MULTILINE 0x00000004
|
|
||||||
!define ES_UPPERCASE 0x00000008
|
|
||||||
!define ES_LOWERCASE 0x00000010
|
|
||||||
!define ES_PASSWORD 0x00000020
|
|
||||||
!define ES_AUTOVSCROLL 0x00000040
|
|
||||||
!define ES_AUTOHSCROLL 0x00000080
|
|
||||||
!define ES_NOHIDESEL 0x00000100
|
|
||||||
!define ES_OEMCONVERT 0x00000400
|
|
||||||
!define ES_READONLY 0x00000800
|
|
||||||
!define ES_WANTRETURN 0x00001000
|
|
||||||
!define ES_NUMBER 0x00002000
|
|
||||||
|
|
||||||
!define SS_LEFT 0x00000000
|
|
||||||
!define SS_CENTER 0x00000001
|
|
||||||
!define SS_RIGHT 0x00000002
|
|
||||||
!define SS_ICON 0x00000003
|
|
||||||
!define SS_BLACKRECT 0x00000004
|
|
||||||
!define SS_GRAYRECT 0x00000005
|
|
||||||
!define SS_WHITERECT 0x00000006
|
|
||||||
!define SS_BLACKFRAME 0x00000007
|
|
||||||
!define SS_GRAYFRAME 0x00000008
|
|
||||||
!define SS_WHITEFRAME 0x00000009
|
|
||||||
!define SS_USERITEM 0x0000000A
|
|
||||||
!define SS_SIMPLE 0x0000000B
|
|
||||||
!define SS_LEFTNOWORDWRAP 0x0000000C
|
|
||||||
!define SS_OWNERDRAW 0x0000000D
|
|
||||||
!define SS_BITMAP 0x0000000E
|
|
||||||
!define SS_ENHMETAFILE 0x0000000F
|
|
||||||
!define SS_ETCHEDHORZ 0x00000010
|
|
||||||
!define SS_ETCHEDVERT 0x00000011
|
|
||||||
!define SS_ETCHEDFRAME 0x00000012
|
|
||||||
!define SS_TYPEMASK 0x0000001F
|
|
||||||
!define SS_REALSIZECONTROL 0x00000040
|
|
||||||
!define SS_NOPREFIX 0x00000080
|
|
||||||
!define SS_NOTIFY 0x00000100
|
|
||||||
!define SS_CENTERIMAGE 0x00000200
|
|
||||||
!define SS_RIGHTJUST 0x00000400
|
|
||||||
!define SS_REALSIZEIMAGE 0x00000800
|
|
||||||
!define SS_SUNKEN 0x00001000
|
|
||||||
!define SS_EDITCONTROL 0x00002000
|
|
||||||
!define SS_ENDELLIPSIS 0x00004000
|
|
||||||
!define SS_PATHELLIPSIS 0x00008000
|
|
||||||
!define SS_WORDELLIPSIS 0x0000C000
|
|
||||||
!define SS_ELLIPSISMASK 0x0000C000
|
|
||||||
|
|
||||||
!define BS_PUSHBUTTON 0x00000000
|
|
||||||
!define BS_DEFPUSHBUTTON 0x00000001
|
|
||||||
!define BS_CHECKBOX 0x00000002
|
|
||||||
!define BS_AUTOCHECKBOX 0x00000003
|
|
||||||
!define BS_RADIOBUTTON 0x00000004
|
|
||||||
!define BS_3STATE 0x00000005
|
|
||||||
!define BS_AUTO3STATE 0x00000006
|
|
||||||
!define BS_GROUPBOX 0x00000007
|
|
||||||
!define BS_USERBUTTON 0x00000008
|
|
||||||
!define BS_AUTORADIOBUTTON 0x00000009
|
|
||||||
!define BS_PUSHBOX 0x0000000A
|
|
||||||
!define BS_OWNERDRAW 0x0000000B
|
|
||||||
!define BS_TYPEMASK 0x0000000F
|
|
||||||
!define BS_LEFTTEXT 0x00000020
|
|
||||||
!define BS_TEXT 0x00000000
|
|
||||||
!define BS_ICON 0x00000040
|
|
||||||
!define BS_BITMAP 0x00000080
|
|
||||||
!define BS_LEFT 0x00000100
|
|
||||||
!define BS_RIGHT 0x00000200
|
|
||||||
!define BS_CENTER 0x00000300
|
|
||||||
!define BS_TOP 0x00000400
|
|
||||||
!define BS_BOTTOM 0x00000800
|
|
||||||
!define BS_VCENTER 0x00000C00
|
|
||||||
!define BS_PUSHLIKE 0x00001000
|
|
||||||
!define BS_MULTILINE 0x00002000
|
|
||||||
!define BS_NOTIFY 0x00004000
|
|
||||||
!define BS_FLAT 0x00008000
|
|
||||||
!define BS_RIGHTBUTTON ${BS_LEFTTEXT}
|
|
||||||
|
|
||||||
!define LR_DEFAULTCOLOR 0x0000
|
|
||||||
!define LR_MONOCHROME 0x0001
|
|
||||||
!define LR_COLOR 0x0002
|
|
||||||
!define LR_COPYRETURNORG 0x0004
|
|
||||||
!define LR_COPYDELETEORG 0x0008
|
|
||||||
!define LR_LOADFROMFILE 0x0010
|
|
||||||
!define LR_LOADTRANSPARENT 0x0020
|
|
||||||
!define LR_DEFAULTSIZE 0x0040
|
|
||||||
!define LR_VGACOLOR 0x0080
|
|
||||||
!define LR_LOADMAP3DCOLORS 0x1000
|
|
||||||
!define LR_CREATEDIBSECTION 0x2000
|
|
||||||
!define LR_COPYFROMRESOURCE 0x4000
|
|
||||||
!define LR_SHARED 0x8000
|
|
||||||
|
|
||||||
!define IMAGE_BITMAP 0
|
|
||||||
!define IMAGE_ICON 1
|
|
||||||
!define IMAGE_CURSOR 2
|
|
||||||
!define IMAGE_ENHMETAFILE 3
|
|
||||||
|
|
||||||
Var DIALOG
|
Var DIALOG
|
||||||
Var HEADLINE
|
Var HEADLINE
|
||||||
|
|
|
@ -681,11 +681,11 @@ ${_NSIS_DEFAW} LVM_SETITEMTEXT
|
||||||
${_NSIS_DEFAW} TCM_INSERTITEM
|
${_NSIS_DEFAW} TCM_INSERTITEM
|
||||||
|
|
||||||
#Progress bar control#
|
#Progress bar control#
|
||||||
!define PBM_SETRANGE 0x0401
|
!define PBM_SETRANGE 0x401
|
||||||
!define PBM_SETPOS 0x0402
|
!define PBM_SETPOS 0x402
|
||||||
!define PBM_DELTAPOS 0x0403
|
!define PBM_DELTAPOS 0x403
|
||||||
!define PBM_SETSTEP 0x0404
|
!define PBM_SETSTEP 0x404
|
||||||
!define PBM_STEPIT 0x0405
|
!define PBM_STEPIT 0x405
|
||||||
!define PBM_SETRANGE32 0x406 ; IE3 + ComCtl32 v4.70
|
!define PBM_SETRANGE32 0x406 ; IE3 + ComCtl32 v4.70
|
||||||
!define PBM_GETRANGE 0x407
|
!define PBM_GETRANGE 0x407
|
||||||
!define PBM_GETPOS 0x408
|
!define PBM_GETPOS 0x408
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
; DetailPrint "Not running on NT. Installing ANSI application."
|
; DetailPrint "Not running on NT. Installing ANSI application."
|
||||||
; ${EndIf}
|
; ${EndIf}
|
||||||
;
|
;
|
||||||
; IsServer checks if the installer is running on a server version of Windows (NT4, 2003, 2008, etc.)
|
; IsServerOS checks if the installer is running on a server version of Windows (NT4, 2003, 2008, etc.)
|
||||||
;
|
;
|
||||||
; AtLeastWin<version> checks if the installer is running on Windows version at least as specified.
|
; AtLeastWin<version> checks if the installer is running on Windows version at least as specified.
|
||||||
; IsWin<version> checks if the installer is running on Windows version exactly as specified.
|
; IsWin<version> checks if the installer is running on Windows version exactly as specified.
|
||||||
|
@ -32,6 +32,8 @@
|
||||||
; 2008
|
; 2008
|
||||||
; 7
|
; 7
|
||||||
; 2008R2
|
; 2008R2
|
||||||
|
; 8
|
||||||
|
; 2012
|
||||||
;
|
;
|
||||||
; AtLeastServicePack checks if the installer is running on Windows service pack version at least as specified.
|
; AtLeastServicePack checks if the installer is running on Windows service pack version at least as specified.
|
||||||
; IsServicePack checks if the installer is running on Windows service pack version exactly as specified.
|
; IsServicePack checks if the installer is running on Windows service pack version exactly as specified.
|
||||||
|
@ -192,7 +194,7 @@
|
||||||
!macro __WinVer_Call_GetVersionEx STRUCT_SIZE
|
!macro __WinVer_Call_GetVersionEx STRUCT_SIZE
|
||||||
|
|
||||||
System::Call '*$0(i ${STRUCT_SIZE})'
|
System::Call '*$0(i ${STRUCT_SIZE})'
|
||||||
System::Call kernel32::GetVersionEx(ir0)i.r3
|
System::Call kernel32::GetVersionEx(pr0)i.r3
|
||||||
|
|
||||||
!macroend
|
!macroend
|
||||||
|
|
||||||
|
@ -298,7 +300,7 @@
|
||||||
_winver_sp_noex: # OSVERSIONINFO, not OSVERSIONINFOEX
|
_winver_sp_noex: # OSVERSIONINFO, not OSVERSIONINFOEX
|
||||||
|
|
||||||
#### TODO
|
#### TODO
|
||||||
## For IsServer to support < NT4SP6, we need to check the registry
|
## For IsServerOS to support < NT4SP6, we need to check the registry
|
||||||
## here to see if we are a server and/or DC
|
## here to see if we are a server and/or DC
|
||||||
|
|
||||||
# get szCSDVersion
|
# get szCSDVersion
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue