Silent Install problem - two different end dialogs
Posted 02 July 2003 - 16:54
Is there any way around this? I don't know of any way to tell Setup.exe that it may encounter one OR the other. Any ideas?? Thanks!
Posted 02 July 2003 - 22:08
Posted 03 July 2003 - 14:22
I thought the iss files had to describe the dialog order like
How do I write an iss file that has two dialogs Dlgx?
The problem occured at our place with Acrobat Reader and I found that the AcrobatReader installation wanted to replace some system files and therefore asked for a reboot.
Tom, you can look for the WINDIR\wininit.ini file (in Win9x, NT uses some registry keys) when your setup wants to reboot to find out, what files are being replaced (if you cannot see into the cab/msi file ).
Now you have to provide two iss files (with and without reboot dialog).
Then you check the user's system for files to be updated and use an iss file with the appropriate ending ...
Posted 03 July 2003 - 15:26
Also, the ISS file does describe the order of the dialogues, but if a particular one doesn't come up, then it doesn't complain. Just make sure each Dlgx entry is unique, and that the correct number is reflected in the count.
Just think of as it as a file containing the ordering of all the possible dialogues for a setup instead of looking at it on a case-by-case basis. Of course when you automatically record/generate an ISS file, it can only write out what it sees, but if you take the sum of all the things, then you can cover all your bases.
szDir=C:\Program Files\Canary Labs
szDir=C:\Program Files\Canary Labs\Trend Link
Viewer Program Files-type=string
Viewer Program Files-count=3
Viewer Program Files-0=Viewer Program Files\Think & Do Licensing
Viewer Program Files-1=Viewer Program Files\Resource English
Component-0=Viewer Program Files
Component-3=Think & Do DataSource
Name=Canary Trend Link ActiveX Control
For example, the File Transfer information is something I added later to handle some additional prompts which occurred in the field. It's rare to experience those dialogues, but if you don't encounter them, then it just skips/ignores it.
Also, at the bottom there you can see I have sections to handle both a regular finish and a reboot finish. However, I noticed that for the dialog order I don't reflect both possibilities. Believe me, it still works though. For curiousity's sake, I'll double check specifically referencing both though since I've received a new version of this 3rd-party software, so I need to re-create this ISS file anyway.
Posted 03 July 2003 - 15:26
Thanks! I was thinking that I might have to go that route. Do you know where in the registry it keeps the files that need replaced?
I'd like to avoid shipping two .iss files. How exactly do you add that extra info to the .iss file?
Thanks to both of you for your help!
Posted 03 July 2003 - 15:29
Thanks! Ignore my previous post - I think we posted at about the same time.
I will try that and let you know how it goes. Thanks again!
Posted 03 July 2003 - 15:32
- HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\PendingFileRenameOperations
But you may also want to check:
P.S. Yeah, I noticed that tadigiacomo, so I was planning on just igorning part of it.
Edited by TacoBell00, 03 July 2003 - 15:34.
Posted 03 July 2003 - 21:40
Thanks so much! Your replies have been very helpful.
But, I got another somewhat-related question. I am also writing out password info to this same .iss file, and if a particular password is NO password (null), it breaks. The name-vlaue pair ends up pwd= (as opposed to pwd=abc123), and the silent install fails with a -3 result code. My question is, how to a pass an empty password (or string) via the .iss file, or, how can I encrypt my value before writing it out so that it will be properly decrypted by the silent install? I am currently setting an encrypt password flag to 0. When I recorded the .iss with an empty password entered it encrypted it and place the value properly. Any ideas? Thanks!
Posted 04 July 2003 - 06:55
I'm not sure, but maybe try pwd="" or just removing that line/section from the ISS to keep it the default of null.