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:
anders_k 2012-10-16 09:43:36 +00:00
parent b76e823c5c
commit 1f949ccb94
6 changed files with 23 additions and 119 deletions

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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