cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
knoepdan
Level 6

Problems when activating features using commandline in basic msi project

Hi

In our InstallShield 2010 Basic Msi project we have troubles when we activate features via command line that would normally not be installed (normally this would happen in a silent installation but the same problems occur when the gui is active).
When we activate the features (using ADDLOCAL) the installation runs trough without error ( no error in log, no error in gui (when it is activated) ) but - as it seems - only the features named in ADDLOCAL are installed. All the other features, that shoul get installed by default, will not be copied. Example:

Example command line where it works as it should!!!
setup.exe /v"/qn C_LANGUAGE=de "

Example command line where it only the passed features (French Polish) are installed. All other features are not!!! (at least from what i see)
setup.exe /s /v"/qn ADDLOCAL=French,Polish C_LANGUAGE=de "


My understanding is that ADDLOCAL just ensures that the passed features are added, so it is ensured that they are installed. All other features are installed or not depending on the default behaviour defined in the msi file. However, now i have come to believe that if one provides ADDLOCAL only the features defined in that property are installed.

So now my questions are:

- is my assumption concerning the behaviour of ADDLOCAL true?
- how can i ensure that the all features are installed if they should by default, but still add (or eventually remove) some features


I am grateful for any help. Thanks in advance.

Daniel




PS: my test-system's os is Windows XP SP3 (newly installed, basically a fresh installs xp SP3, having .net 2.0 installed, Windows installer 3.1 should be present)
Labels (1)
0 Kudos

(5) Replies
knoepdan
Level 6

Hi

I have just analyzed the logfile and i see minor differences in the msi logile. Here some of the differences:


----------------------------------------------------------
Logfile from proper installation:

Action start 9:27:01: StartServices.
Action ended 9:27:01: StartServices. Return value 1.
Action start 9:27:01: _867630BEC9555EDBFA1A62B13FA0102F.commit.SetProperty.
Action ended 9:27:01: _867630BEC9555EDBFA1A62B13FA0102F.commit.SetProperty. Return value 1.
Action start 9:27:01: _867630BEC9555EDBFA1A62B13FA0102F.commit.
Action ended 9:27:01: _867630BEC9555EDBFA1A62B13FA0102F.commit. Return value 1.
Action start 9:27:01: _867630BEC9555EDBFA1A62B13FA0102F.rollback.SetProperty.
Action ended 9:27:01: _867630BEC9555EDBFA1A62B13FA0102F.rollback.SetProperty. Return value 1.
Action start 9:27:01: _867630BEC9555EDBFA1A62B13FA0102F.rollback.
Action ended 9:27:01: _867630BEC9555EDBFA1A62B13FA0102F.rollback. Return value 1.
Action start 9:27:01: _867630BEC9555EDBFA1A62B13FA0102F.install.SetProperty.
Action ended 9:27:01: _867630BEC9555EDBFA1A62B13FA0102F.install.SetProperty. Return value 1.
Action start 9:27:01: _867630BEC9555EDBFA1A62B13FA0102F.install.
Action ended 9:27:01: _867630BEC9555EDBFA1A62B13FA0102F.install. Return value 1.
Action start 9:27:01: RegisterUser.
Action ended 9:27:01: RegisterUser. Return value 1.


Logfile from installation where not all features get installed:

Action start 10:01:19: StartServices.
Action ended 10:01:19: StartServices. Return value 1.
Action start 10:01:19: RegisterUser.
Action ended 10:01:19: RegisterUser. Return value 1.




----------------------------------------------------------
Logfile from proper installation:

Action start 9:27:01: InstallFinalize.
InstallShield: Loaded CLR successfully
InstallShield: Ignoring CustomActionData substring "C:\Program Files\Phonak Group\iPFG\ , C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\{9B2D5112-6DEF-4717-BC47-39D38E983234} , C:\Documents and Settings\All Users\Start Menu\Programs\ , C:\Documents and Settings\All Users\Desktop\"
InstallShield: Deferred action requested property MsiHiddenProperties not provided by CustomActionData
InstallShield: Loading assembly iIPGCustomActions from resource 4097
InstallShield: Calling method with parameters [(System.String)C:\Program Files\Phonak Group\iPFG\ , C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\{9B2D5112-6DEF-4717-BC47-39D38E983234} , C:\Documents and Settings\All Users\Start Menu\Programs\ , C:\Documents and Settings\All Users\Desktop\]
InstallShield: Loaded CLR successfully
InstallShield: Deferred action requested property MsiHiddenProperties not provided by CustomActionData
InstallShield: Loading assembly iIPGCustomActions from resource 4097
InstallShield: Calling method with parameters []
Action ended 9:33:22: InstallFinalize. Return value 1.
Action start 9:33:22: ISSetupFilesCleanup.


Logfile from installation where not all features get installed:

Action start 10:01:19: InstallFinalize.
InstallShield: Loaded CLR successfully
InstallShield: Ignoring CustomActionData substring "C:\Program Files\Phonak Group\iPFG\ , C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\{9B2D5112-6DEF-4717-BC47-39D38E983234} , C:\Documents and Settings\All Users\Start Menu\Programs\ , C:\Documents and Settings\All Users\Desktop\"
InstallShield: Deferred action requested property MsiHiddenProperties not provided by CustomActionData
InstallShield: Loading assembly iIPGCustomActions from resource 4097
InstallShield: Calling method with parameters [(System.String)C:\Program Files\Phonak Group\iPFG\ , C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\{9B2D5112-6DEF-4717-BC47-39D38E983234} , C:\Documents and Settings\All Users\Start Menu\Programs\ , C:\Documents and Settings\All Users\Desktop\]
Action ended 10:02:14: InstallFinalize. Return value 1.
Action start 10:02:14: ISSetupFilesCleanup.



----------------------------------------------------------
Logfile from proper installation:

Property(S): OutOfDiskSpace = 0
Property(S): ProductCode = {9B2D5112-6DEF-4717-BC47-39D38E983234}
Property(S): SourcedirProduct = {9B2D5112-6DEF-4717-BC47-39D38E983234}
Property(S): SOURCEDIR = C:\Documents and Settings\Administrator\Desktop\DISK1\
Property(S): CostingComplete = 1

Logfile from installation where not all features get installed:

Property(S): OutOfDiskSpace = 0
Property(S): SourcedirProduct = {9B2D5112-6DEF-4717-BC47-39D38E983234}
Property(S): SOURCEDIR = C:\Documents and Settings\Administrator\Desktop\DISK1\
Property(S): ProductCode = {9B2D5112-6DEF-4717-BC47-39D38E983234}
Property(S): CostingComplete = 1



----------------------------------------------------------
Logfile from proper installation:

Property(S): SETUPEXENAME = setup.exe
Property(S): ARPINSTALLLOCATION = C:\Program Files\Phonak Group\iPFG\
Property(S): MyPicturesFolder = C:\Documents and Settings\Administrator\My Documents\My Pictures\
Property(S): LocalAppDataFolder = C:\Documents and Settings\Administrator\Local Settings\Application Data\
Property(S): CommonAppDataFolder = C:\Documents and Settings\All Users\Application Data\
Property(S): TemplateFolder = C:\Documents and Settings\All Users\Templates\
Property(S): SendToFolder = C:\Documents and Settings\Administrator\SendTo\
Property(S): RecentFolder = C:\Documents and Settings\Administrator\Recent\
Property(S): _867630BEC9555EDBFA1A62B13FA0102F.commit = /installtype=notransaction /action=commit /LogFile= "C:\Program Files\Phonak Group\iPFG\iIPGCustomActions.dll" "C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\{9B2D5112-6DEF-4717-BC47-39D38E983234}\_isconfig.xml"
Property(S): _867630BEC9555EDBFA1A62B13FA0102F.rollback = /installtype=notransaction /action=rollback /LogFile= "C:\Program Files\Phonak Group\iPFG\iIPGCustomActions.dll" "C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\{9B2D5112-6DEF-4717-BC47-39D38E983234}\_isconfig.xml"
Property(S): _867630BEC9555EDBFA1A62B13FA0102F.install = /installtype=notransaction /action=install /LogFile= /INSTALLDIR="C:\Program Files\Phonak Group\iPFG\\" /CommonAppDataFolder="C:\Documents and Settings\All Users\Application Data\\" /C_NOAHINSTALLATION=1 /SUPPORTDIR=C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\{9B2D5112-6DEF-4717-BC47-39D38E983234} /C_LANGUAGE=de /C_COUNTRY=0 /ProgramMenuFolder="C:\Documents and Settings\All Users\Start Menu\Programs\\" /DesktopFolder="C:\Documents and Settings\All Users\Desktop\\" /MsiLogFileLocation="" "C:\Program Files\Phonak Group\iPFG\iIPGCustomActions.dll" "C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\{9B2D5112-6DEF-4717-BC47-39D38E983234}\_isconfig.xml"
Property(S): PrintHoodFolder = C:\Documents and Settings\Administrator\PrintHood\
Property(S): PersonalFolder = C:\Documents and Settings\Administrator\My Documents\



Logfile from installation where not all features get installed:

Property(S): SETUPEXENAME = setup.exe
Property(S): ARPINSTALLLOCATION = C:\Program Files\Phonak Group\iPFG\
Property(S): LocalAppDataFolder = C:\Documents and Settings\Administrator\Local Settings\Application Data\
Property(S): CommonAppDataFolder = C:\Documents and Settings\All Users\Application Data\
Property(S): TemplateFolder = C:\Documents and Settings\All Users\Templates\
Property(S): SendToFolder = C:\Documents and Settings\Administrator\SendTo\
Property(S): RecentFolder = C:\Documents and Settings\Administrator\Recent\
Property(S): PrintHoodFolder = C:\Documents and Settings\Administrator\PrintHood\
Property(S): PersonalFolder = C:\Documents and Settings\Administrator\My Documents\

---------------------


Maybe these entries make sense to somebody.

Greetings
0 Kudos
RobertDickau
Flexera Alumni

As far as the original question goes, perhaps look into using the ADDDEFAULT property...
0 Kudos
knoepdan
Level 6

Hi

Thanks for your answer. I tried your suggestion but have not achieved the desired results yet. I used the following command line:


setup.exe /s /v"/qn ADDDEFAULT=ALL ADDLOCAL=French,Polish"


Now all features are installed, irrespective of the install level etc. What i would like to have is the following:
- Features that would normally be installed should be installed
- Features that would normally not be installed (because their install level is too high) are not installed
- Features being added by ADDLOCAL are installed irrespective of their install level!!


i will try some more, but to me, the behaviour is illogic 😞

Regards
0 Kudos
MichaelU
Level 12 Flexeran
Level 12 Flexeran

See the documentation on the Preselected property. If any of the ADD* properties are specified, the feature list is considered complete. I believe the only way to do this is when using an AddLocal control event, or perhaps with a generic custom action which calls the right low level API. Bob Arnson's posted some good information relevant to this: http://www.joyofsetup.com/2007/05/30/feature-conditions-and-ui/
0 Kudos
knoepdan
Level 6

Hi

I used a custom action. It analyzes a public properts (passed via cmd) and then turns on/off the features. This works ok for me. However, I still would have liked to be able to use default command line parameters.

Anyway, greetings and thanks for your help
0 Kudos