PDA

View Full Version : Installs on unsupported platforms



Shuttledude
04-12-2006, 04:52 PM
On the General Information / Project Properties tab, there is a property for "Platforms" that you can use to specify which Operating Systems are supported. I have an InstallScript project that supports Windows Server 2003 and Windows Vista. I compiled the project with these settings, but was still able to install onto a Windows XP Professional computer (had Service Pack 2 installed, if that makes any difference). Installation on a platform that is not in the list of supported platforms should be disallowed.

For the release I built, in the Releases view, the property "Platform(s)" is set to <Use Project Settings>, so it was not overridden there.

I believe this was a known issue in version 11.5 .

MarcusM
04-13-2006, 07:32 AM
This also happens in IS 11.

DevinEllingson
04-13-2006, 08:12 PM
Note that the information below is referring to InstallScript projects. I believe that InstallScript MSI works the same way. I'm not sure about MSI projects.

We currently don't have any built in support for preventing the setup from running on a specific platform. This has been requested before, the request # is IOC-000005765

Here is how those settings work:

The platform/language setting control whether features are included in the build and/or installed at runtime.

The platforms on the project level determine what platforms are supported by your project (i.e.) what platforms are available for you to select for features or the media. In general if the item is deselected in the project, it is not be available for features/media.

The platforms on the feature level “mark” a feature to be specific to particular platforms (i.e.) they should only be installed if the platform matches one of the platforms supported by the feature.

The platform selection on the media level determine which features will actually be included in the media, if the media is marked as not supporting a particular platform and a feature applies only to that platform, it will be excluded during the build.

At runtime you can control which platforms are supported by the setup by calling FeatureFilterOS, typically the framework calls this with the appropriate platform that you are running on so that only those files will be installed, but you could customize this to install any or all platforms if you wanted. When you call this it “filters” (i.e.) disables features that don’t match the specified platform.

The language setting works the same way.

'Platform suites' are the same except that there are no project or media settings, therefore features can only be filtered by platform suite at runtime (i.e.) you cannot exclude them from the build or disable particular platform suites from being shown in the feature dialog in the Ide.

Devin Ellingson
InstallShield, A Macrovision Company