Jul 11, 2013
02:52 PM
I officially don't understand this issue. Changing the upgrade setting to "install then remove" does in fact eliminate this problem. However, using the default sequencing for "uninstall then install new" just doesn't work right. Nothing has changed with this installer pertaining to this file in the past several releases but it suddenly stops installing the upgrade correctly? I guess using "install then remove" is what we'll have to do to make it work right.
... View more
Jul 09, 2013
04:19 PM
This DLL file is not being installed into the GAC. It is being installed into the same folder as all the rest of the DLLs for our software. As such, I would think if it were an issue with the RemoveExistingProducts sequencing then many DLLs would be wrong, not just a single DLL file (1 of about 150 DLLs). According to the Microsoft KB: Note When an assembly is not located in the global assembly cache, no renaming occurs. The standard Windows Installer file versioning rules apply, and the component in the major upgrade is allowed for installation.
... View more
Jul 09, 2013
03:16 PM
Have you looked at the Prerequisite Editor to see what conditions have to be true before the VC++ redist will be installed? There is a list of about 6 or 7 conditions that it looks at before deciding whether to install or skip. And each version of the VC++ redist might have a different set of conditions depending on the operating system and other conditions.
... View more
Jul 09, 2013
01:20 PM
Project Type: Basic MSI Our installer deploys a DLL file on initial install and everything looks good and works fine. During a major upgrade, the previous installation gets uninstalled (per the major upgrade settings) and the new one gets installed. The new installation looks complete except there is one missing DLL. Here's what I've looked at thus far (to no avail): [LIST=1] The DLL is included and the version has not changed between packages Looked at the MSI log file (I see nothing obvious, some log entries shown below) Compared the MSI log data with a similar DLL that is not problematic, nothing notably different Checked PendingFileRenameOperations and rebooted the machine Component "Destination" has not changed Component Code has not changed RemoveFile table has no entry for this DLL There are no Script CustomActions that manage files There are three references to this DLL in the registry and they are all managed by the MSI engine during assembly publishing There are about 20 references to this DLL in the log. Here are the last references to it (very near the bottom of the log file): [CODE]MSI (s) (78:14) [14:41:02:591]: Executing op: AssemblyPublish(Feature=FeatureA,Component={1E1C2982-B23F-459A-8E53-E9DF27900B80},AssemblyType=3,AppCtx=C:\Program Files (x86)\Product\Bin\FileName.dll,AssemblyName=FileName,Version="1.0.2634.25925",PublicKeyToken="B7CA6C66E8031842",Culture="neutral",FileVersion="1.0.2634.25925",ProcessorArchitecture="MSIL",) MsiPublishAssemblies: Application Context:C:|Program Files (x86)|Product|Bin|FileName.dll, Assembly Name:FileName,Version="1.0.2634.25925",PublicKeyToken="B7CA6C66E8031842",Culture="neutral",FileVersion="1.0.2634.25925",ProcessorArchitecture="MSIL" MSI (s) (78:14) [14:41:02:591]: Note: 1: 1402 2: UNKNOWN\Installer\Assemblies\C:|Program Files (x86)|Product|Bin|FileName.dll 3: 2 [/CODE] What else might account for the DLL not being installed during the upgrade?
... View more
Labels
- Labels:
-
InstallShield 2012 Spring
Jul 09, 2013
10:10 AM
Maybe SRCDIR?
... View more
Mar 11, 2013
01:53 PM
Thanks Robert. I didn't realize the <> notation would work outside of InstallScript functions. This works exactly how I was hoping.
... View more
Mar 11, 2013
01:19 PM
Project Type: InstallScript In the IDE we can create/edit registry string values. I can use [TARGETDIR] to get the full path to the installation folder. Is there an equivalent for getting the Product Version (as found on the General Information pane) or am I stuck only creating/updating the version in the registry via InstallScript functions?
... View more
Labels
- Labels:
-
InstallShield 2012 Spring
Oct 31, 2012
06:06 PM
After a lengthy session of "trial by fire" with FeatureCompareSizeRequired() I've discovered the following conditions must be met for this function to succeed: 1. Every component must have a valid Destination ( , etc.) set. 2. The Destination must be set even if the component belongs only to a Feature that has been forcibly disabled by FeatureSetData() prior to FeatureCompareSizeRequired(). 3. The Destination, say , must include a drive letter. "\Some\Path" does not work, regardless of the source location of setup.exe (desktop, network), despite being a valid Windows path. 4. The Destination does not need to exist at the time FeatureCompareSizeRequired() is called. We were using IISROOTFOLDER as the base path to some of the server-only components but InstallShield provides a default IISROOTFOLDER path of "\" if IIS is not installed. ExistsDir() returns success when it is given "\" as the input path. Using IISROOTFOLDER works great on our server installation as IIS is already validated by other means but on the workstation installation IIS is expected to not be installed (but is fine if it is installed). The default value provided by InstallShield actually gets in the way more than it helps when IIS is not installed (though I understand why it is set to "\"). Conclusion The "not enough space" error message returned from FeatureCompareSizeRequired() is vague and misleading: worthless. The documentation on this function is vague and virtually worthless as anything more than an API reference. One painful day doing battle with InstallShield has finally come to a close...
... View more
Oct 30, 2012
06:43 PM
Project Type: InstallScript We are trying to develop an InstallScript-based project that can run on both a workstation and a server. The feature tree of the workstation is nothing more than a subset of the server. As such, when we go into workstation mode, we want to hide and disable several features. We are calling FeatureSetData() to successfully hide and disable the server-only features but I'm not entirely convinced this is everything that is required. We have some components going into TARGETDIR and other components going into TARGETWWW. The TARGETWWW components are all supposed to be disabled on the workstation. I have verified that none of the TARGETWWW components are in the workstation-applicable feature tree because they've been hidden and disabled with the FeatureSetData() calls (sample shown, there are more in our project). FeatureSetData( MEDIA, "WebSoftware\\Feature1", FEATURE_FIELD_SELECTED, FALSE, szData ); FeatureSetData( MEDIA, "WebSoftware", FEATURE_FIELD_SELECTED, FALSE, szData ); FeatureSetData( MEDIA, "WebSoftware", FEATURE_FIELD_VISIBLE, FALSE, szData ); These FeatureSetData() calls are initiated prior to showing the Welcome dialog on the workstation install. If we then choose "Complete Installation" we get an error dialog while doing the FeatureCompareSizeRequired() unless we explicitly call the following FeatureSetTarget(). When we choose "Custom Installation" the workstation installation always works as expected. The "if" condition is commented out so the installer will run correctly on workstation installs. The server installation always works as expected. // if ( nInstallMode = MODE_SERVER ) then FeatureSetTarget( MEDIA, " ", szWWWPath ); // endif; The hidden and disabled features are not script-created. They are created in the IDE. We have zero script-created features in our project. This seems very counter-intuitive to call FeatureSetTarget() for components that have already been forcibly disabled and hidden from the end-user. This also seems like it could severely skew the results since our workstation installation requires only about 100MB of space while our server installation requires nearly 1GB. Is there something that we're missing or is this the expected behavior? If this is expected how do we ensure that the TARGETWWW components are not being included in the overall disk space availability checks on workstations?
... View more
Labels
- Labels:
-
InstallShield 2012 Spring
Oct 12, 2012
05:11 PM
Project Type: InstallScript, 2012 Premiere I'm working on a prototype installer that will be running on two different types of machines and the installer needs to behave very differently on each machine type. One is a server-oriented environment and the other is a workstation-oriented environment. The workstation is nothing more than a subset of the server environment. Here is a feature tree that we would like to use: Desktop Software +- Feature 1 +- Feature 2 Web Software +- Feature 3 +- Feature 4 "Desktop Software" is a parent feature and "Feature 1" is a child. "Feature 1" should be hidden and deselected for workstation installs unless a particular condition occurs. I cannot figure out how to hide a child feature. If I use the identical script logic and move this feature up (making it a sibling of "Desktop Software") the hiding functionality (FeatureSetData) works as expected. Is this just how InstallShield works or is there some way to dynamically hide a child feature at run-time?
... View more
Labels
- Labels:
-
InstallShield 2012 Spring
Aug 08, 2012
05:47 PM
Project Type: InstallScript Our product needs to have files deployed into two separate folders that will not have any parent/child relation. One of them I'm happy to use TARGETDIR. How would I go about setting the destination for the other set of features/components? For example: Feature1/Component1 - TARGETDIR, C:\Program Files\My Company\My Product Feature2/Component2 - WWWDIR, C:\inetpub\wwwroot\MyWebSite How would I go about doing this in the script code? I can manage the UI elements easily enough.
... View more
Labels
- Labels:
-
InstallShield 2012 Spring
Jul 19, 2012
02:18 PM
Our product needs to deliver a web site that contains a very high number of files (over 11,000 without the help files, which adds another 20,000+ files, generated). We currently use an InstallScript MSI project but we're moving toward a Basic MSI for the future. The only reasonable way I could find so far of delivering the web content is through a Dynamic File Link which necessitates that each and every build is a major upgrade, not to mention the key file problems. If any of the web content gets removed or renamed from one build to the next, the minor upgrade scenario goes out the window. This is far from ideal, on many levels. We are running new builds every other day and the major upgrade takes a substantial amount of time to deploy. Can anyone give me any ideas for how we could approach redesigning how we deliver the web content from one build to the next in such a way that we could deliver it as a minor upgrade? I'm open to almost any ideas.
... View more
Labels
- Labels:
-
InstallShield 2012 Spring
Jun 06, 2011
06:16 PM
joshstechnij wrote: As such, support for loading .NET 4.0 assemblies is available in IS 2011 but not older versions due to the scope of the changes required. Is Flexera planning any kind of patch for any of the older versions of InstallShield to support loading .NET 4.0 assemblies?
... View more
Jun 06, 2011
06:05 PM
You can install the feature with the OCSetup program if you have the internal feature name (can't remember it off-hand). You can launch an immediate or deferred CA based on the properties you've set in your System Search.
... View more
Latest posts by kaneohe
Subject | Views | Posted |
---|---|---|
1367 | Jul 11, 2013 02:52 PM | |
1367 | Jul 09, 2013 04:19 PM | |
535 | Jul 09, 2013 03:16 PM | |
4158 | Jul 09, 2013 01:20 PM | |
1061 | Jul 09, 2013 10:10 AM | |
632 | Mar 11, 2013 01:53 PM | |
1199 | Mar 11, 2013 01:19 PM | |
545 | Oct 31, 2012 06:06 PM | |
1567 | Oct 30, 2012 06:43 PM | |
1334 | Oct 12, 2012 05:11 PM |
Activity Feed
- Posted Re: 1 File Missing After Major Upgrade on InstallShield Forum. Jul 11, 2013 02:52 PM
- Posted Re: 1 File Missing After Major Upgrade on InstallShield Forum. Jul 09, 2013 04:19 PM
- Posted Re: prerequisite of Microsoft Visual C++ 2010 Redistributable on InstallShield Forum. Jul 09, 2013 03:16 PM
- Posted 1 File Missing After Major Upgrade on InstallShield Forum. Jul 09, 2013 01:20 PM
- Posted Re: Urgent Help plsss for find setup.exe directory on InstallShield Forum. Jul 09, 2013 10:10 AM
- Posted Solved! on InstallShield Forum. Mar 11, 2013 01:53 PM
- Posted Set Version in Registry in InstallScript Project via IDE on InstallShield Forum. Mar 11, 2013 01:19 PM
- Posted Mystery Solved ... More Or Less on InstallShield Forum. Oct 31, 2012 06:06 PM
- Posted Help Me Understand FeatureCompareSizeRequired Behavior on InstallShield Forum. Oct 30, 2012 06:43 PM
- Posted Hiding Features on InstallShield Forum. Oct 12, 2012 05:11 PM
- Posted Multiple Targets on InstallShield Forum. Aug 08, 2012 05:47 PM
- Posted Re: Help With Dynamic File Linking on InstallShield Forum. Jul 24, 2012 04:46 PM
- Posted Help With Dynamic File Linking on InstallShield Forum. Jul 19, 2012 02:18 PM
- Posted Re: *URGENT* DotNetCoCreateObject not working with .Net Framework 4.0 on InstallShield Forum. Jun 06, 2011 06:16 PM
- Posted Re: Enabling .Net 3.5 on Windows Server 2008 R2 on InstallShield Forum. Jun 06, 2011 06:05 PM
- Posted Re: Unable to pin InstallShield 2011 to Windows 7 taskbar on InstallShield Forum. May 12, 2011 11:18 AM
- Posted Re: directory structure wrong after install on InstallShield Forum. Sep 20, 2010 01:46 PM
- Posted directory structure wrong after install on InstallShield Forum. Sep 17, 2010 02:09 PM
- Posted Re: Merge Module, Visual C++ 9.0 CRT (x86) on InstallShield Forum. Sep 02, 2010 05:17 PM
- Posted Re: How to detect whether a system requires a reboot or not?? on InstallShield Forum. Sep 01, 2010 12:35 PM