From: SourceForge.net <no...@so...> - 2009-12-05 22:13:15
|
Bugs item #2785629, was opened at 2009-05-02 16:57 Message generated for change (Settings changed) made by kichik You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=373085&aid=2785629&group_id=22049 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: General Group: 2.0 Series Status: Open Resolution: None Priority: 5 Private: No Submitted By: Matt Lewellyn (lewellyn) >Assigned to: Anders (anders_k) Summary: Elevated installers copied to temp dir before consent dialog Initial Comment: (This is a duplicate of: Installer takes a long time to launch from cd in vista - ID: 2191989. As the bug was closed, and marked as a duplicate of something wholly unrelated, in fact something which is practically opposite, I am filing a new defect.) On Vista and newer, with UAC enabled, an installer which requests elevation is copied by Windows to the temporary directory prior to execution. This appears to be fairly unique to NSIS, and occurs regardless of whether the installer is signed or not. It also is irrelevant whether you elevate via the UAC plugin or RequestExecutionLevel. This is especially problematic for distributors of large installers, as a few hundred megs to a couple gigs can take a significant period of time to copy. It also essentially doubles the hard disk space requirements which should be listed in the System Requirements for an NSIS-packaged product. This has been an issue with NSIS at least back to the 2.0 alphas. (I've gotten reports of this from people installing many-years-old products on Vista with 300-600 megabyte installers from CD-ROM.) I have last confirmed it in the 01-May-2009 nightly. This bug was opened at the suggestion of Anders in this forum thread: http://forums.winamp.com/showthread.php?threadid=305783 Also, I've attached the testcase I provided on that thread to this report. Don't let its small size fool you; it uncompresses to a gigabyte. Simply ensure UAC is enabled, compile the script, run the executable, and wait and wait... Kichik, please don't simply close this as a duplicate. As UAC isn't going away, and pre-Vista is essentially dead going forward, and this appears to be NSIS-specific, it's a pretty big problem for those of us who realistically need a single-file installer that starts up quickly and have years invested in using NSIS. There really is no viable workaround for the cases when a single-file installer is needed, other than to package those things with another installer system. And that's not good for anyone. ;) ---------------------------------------------------------------------- Comment By: Nobody/Anonymous (nobody) Date: 2009-06-01 01:57 Message: BTW, the large installer wait seems to be gone in Windows 7. I can vouch for it because I have a ~280MB NSIS installer that I've tested under two Windows 7 systems (one dual core, one quad core), and the UAC dialog appears in around 5 seconds. ---------------------------------------------------------------------- Comment By: Nobody/Anonymous (nobody) Date: 2009-06-01 01:51 Message: I have a ~250MB InstallShield installer from around 2006, and it also takes a long time for the UAC dialog to appear in Vista. However, larger and newer installers where the UAC dialog shows up halfway through the installer before the installation actions are carried out tend to have much shorter or nearly instantaneous wait periods before the UAC dialog appears, compared to installers where the UAC dialog appears before the installer itself. I haven't personally looked into how those work though (like whether they use MSI, or whether they extract files to %temp% without admin permissions on their own first so that the actual exe is much smaller). ---------------------------------------------------------------------- Comment By: Bruce Pascoe (fatcerberus1) Date: 2009-05-27 19:21 Message: Definitely not unique to NSIS. I'd always wondered why those large installers I created in Inno Setup took forever to bring up the elevation prompt under Vista. Now I know--the OS is copying the entire installer to the temp dir before elevating. For what reason, God only knows... How you should know this isn't an NSIS bug: Elevation happens before a single line of code executes. In fact, an app can't elevate programmatically unless it re-launches itself with administrator credentials. ---------------------------------------------------------------------- Comment By: Nobody/Anonymous (nobody) Date: 2009-05-25 07:08 Message: I was playing around with a trial of InstallShield 2009 Premier (the "newest, most ultimate" version - I'll take NSIS any day, sorry Acresso but I don't have $500 for your "express" version) and tested using 3 GB of data. Took forever to come up on Win Vista Ultimate and Win 7 Ultimate (Release Candidate). It's a Windows thing, not NSIS. Tried the same data with Inno Setup 5.2.4...same problem. Definately a Windows issue. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=373085&aid=2785629&group_id=22049 |