- NSIS Discussion
- wrapped install questions
Archive: wrapped install questions
jackkoho
16th May 2007 22:59 UTC
wrapped install questions
Hello,
Thanks to goldy1064 I was able to use 2 nsis pages to create one program that calls another so that I can do a silent versus custom install. However, I am having problems with hiding the banner from the wrapped installer.
I have tried using both HideWindow and Banner::show /NOUNLOAD
in my .oninit function (which is located at the bottom of the page).
If I try to move my .oninit function to the top of the page, as suggested by kichik in another thread, I get an error that says this:
Usage: ReadRegStr $(user_var: output) rootkey subkey entry
root_key=(HKCR|HKLM|HKCU|HKU|HKCC|HKDD|HKPD|SHCTX)
Because I am reading registry strings during my .oninit.
What is the problem? Is there anyway around this?
Jack
demiller9
17th May 2007 03:37 UTC
ReadRegStr $R0 HKLM "SOFTWARE\Segue Software Inc\SilkTest\Installed" "Directory1"
works in .onInit in my script.
Because I am reading registry strings during my .oninit.
What is the problem? Is there anyway around this?
Show us what you are doing, someone might see the problem.
Don
jackkoho
17th May 2007 17:59 UTC
Function .onInit
Banner::show /NOUNLOAD
ReadRegStr $Py_REGVALUE HKLM SOFTWARE\Py\Py\1.234\InstallPath\InstallGroup ""
StrCmp $Py_REGVALUE "program 1.234" 0 +2
sectionsetflags ${program} 0
StrCmp [some other stuff]
...
FunctionEnd
Works fine at the bottom of the page but gives me that error at the top.
jack
jackkoho
17th May 2007 18:06 UTC
i think i may have found the solution... one sec
jackkoho
17th May 2007 18:16 UTC
I thought it may have been because I hadn't declared the variable
Py_REGVALUE yet (probably what was giving me the error)
But when I put the global variable declaration in .onInit
I get an error because the section ${program} has not been defined yet.
kichik
17th May 2007 19:29 UTC
Then both declare Py_REGVALUE and define program on the top of the script.
jackkoho
17th May 2007 20:04 UTC
thats the way it is now, first I have the variables defined, then all the sections, then the .onInit which uses both the variables and the sections.
The banner still pops up even when I put Banner::show /NOUNLOAD in .onInit.
Sorry if I am going around in circles here.
kichik
17th May 2007 20:10 UTC
And where is the !define? If you get an error for ${program}, you didn't !define it.
jackkoho
17th May 2007 20:17 UTC
program is the name of one of my sections. Does this make sense?
kichik
17th May 2007 20:26 UTC
Well, ${program} makes sense now, but the rest got me completely confused. Why do you use Banner::show to hide a banner? What banner are you trying to hide exactly?
.onInit should be defined below the "program" section so ${program} will be defined.
jackkoho
17th May 2007 20:29 UTC
I am trying to hide the "please wait while setup initiliazes..." banner. I want to hide it because it is already being shown by the "wrapper" installer.
I know this may be getting picky, but I want this to be pretty seamless and perfect.
jackkoho
17th May 2007 20:35 UTC
And I thought that according to the documentation, if you wrote banner:show /NOUNLOAD it would show no banner at all.
I have also tried banner:show /NOLOAD, banner:destroy /NOLOAD, banner:destroy /NOUNLOAD, and none of them seem to do to the trick
kichik
17th May 2007 20:42 UTC
The Banner plug-in has nothing to do with that dialog. You can't use the plug-in to hide it.
To avoid the "verifying installer" dialog, use CRCCheck off in the internal installer. To avoid the "unpacking data" dialog, use ReserveFile on the top of the script for every file and plug-in used in .onInit. When using the MUI, also use MUI_RESERVEFILE_INSTALLOPTIONS and MUI_RESERVEFILE_LANGDLL as explained in section 6 of the MUI Readme.
jackkoho
17th May 2007 20:46 UTC
Thank you. I will look at these things.
jackkoho
17th May 2007 20:52 UTC
CRCcheck off worked.
jackkoho
17th May 2007 20:56 UTC
CRCcheck off worked.
I assume that this just means that it allows the user to run a potentially invalid installer.
kichik
17th May 2007 22:37 UTC
Yes, but as long as it's already checked by the outer installer, it's just a double check.
jackkoho
18th May 2007 17:32 UTC
cool, and thanks :)