Skip to content
⌘ NSIS Forum Archive

Issue:IDD_VERIFY dialog do not shown in nsis 3.0

4 posts

baizi2k#

Issue:IDD_VERIFY dialog do not shown in nsis 3.0

I write a Installer script for my software . And I used the zip2exe to pack it with lzma & solid selected.But IDD_VERIFY dlg was not display as it should be.I also checked the change log of NSIS,It seem the dlg is not removed.And I tried the banner plugin ,the dlg shown ,though,the "unpacking percent" string was not visible.

Is there some way to solve the problem ?
part codes of my script

!define MUI_CUSTOMFUNCTION_GUIINIT mOnguiinit
!include "MUI2.nsh"
!include "InstallOptions.nsh"

Function .onInit
/*
Banner::show

Banner::getWindow
Pop $1

again:
IntOp $0 $0 + 1
Sleep 1
StrCmp $0 100 0 again

GetDlgItem $2 $1 1030
;SendMessage $2 ${WM_SETTEXT} 0 "STR:Calculating more important stuff..."

again2:
IntOp $0 $0 + 1
Sleep 1
StrCmp $0 200 0 again2

Banner::destroy
*/
System::Call /NOUNLOAD "Kernel32::GetSystemDefaultLangID(v ..) i .s"
Pop $0
IntOp $LANGUAGE $0 & 0xFFFF
IntCmp $LANGUAGE 2052 label_1 ;sch
StrCpy $LANGUAGE 1033 ;en
label_1:
System::Call /NOUNLOAD "kernel32::CreateMutex(i 0, i 0, t $\"mutex_amcft$\") i .r1 ?e"
Pop $R0
StrCmp $R0 0 +3
MessageBox MB_OK|MB_TOPMOST $(LSTR_97)
Abort
lable_2:
;TODO😛robably need notify users close maya or 3dmax ,if they are running

;Call func_0


FunctionEnd

Function mOnguiinit

InitPluginsDir
SetOverwrite try
!insertmacro INSTALLOPTIONS_EXTRACT_AS "E:\works\installer4ac\Animecraft_Installer\Animecraft_Installer\$PLUGINSDIR\ioSpecial.ini" "ioSpecial.ini"
;!insertmacro INSTALLOPTIONS_EXTRACT_AS "E:\works\installer4ac\Animecraft_Installer\Animecraft_Installer\$PLUGINSDIR\modern-wizard.bmp" "modern-wizard.bmp"
File "/oname=$PLUGINSDIR\modern-wizard.bmp" "E:\works\installer4ac\Animecraft_Installer\Animecraft_Installer\$PLUGINSDIR\modern-wizard.bmp"
WriteINIStr "$PLUGINSDIR\ioSpecial.ini" "Field 1" "Text" "$PLUGINSDIR\modern-wizard.bmp"
FunctionEnd

baizi2k#
thk u for replay. My software total size is 165MB include 252 files . And Another software(not mine) installer in my disk which is smaller and less files could even display the DLG with unpacking progeress percent. And I notice it used some older NSIS version.
Did new version of NSIS changed the way how the unpacking works?
JasonFriday13#
The verify dialog has a timer on it, so that if the verification takes longer than a few seconds, the dialog shows to inform the user. The verification code reads the data sequentially, which means the speed is bottlenecked by the read speed of the drive it's being run from (usually up to 140MB\s on harddrives and up to 520MB\s on SSD's).

The unpacking data dialog generally only shows when using /solid compression and one of the files it needs is at the end of the datablock, which requires decompressing most of the installer to get the file out.