This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Shortcut command line problem
Started by
Galina
, Sep 28 2007 14:46
7 replies to this topic
Posted 28 September 2007 - 14:46
Hi,
I have a "Basic MSI" project.
The project has 4 features which by default are installed to different subdirs of INSTALLDIR, but users can select a separate dir for each feature. Install from source option can be selected as well.
I have created custom actions to set the directories to a source dir in case of install from source like:
dir name: NFO
dir value: [SourceDir]WinRoot\CarswellEnu\TemplateProject\NFO
Install Exec sequence: After InstallFiles
Condition: &FolioViews=4
I also write these directories in registry and use as command line parameters a shortcut.
Everything is fine when I install the product, but then I delete the shortcut manually and run the setup to repair. Repair process puts default directory value instead of the real one.
Could you please help me!!!!!
I have a "Basic MSI" project.
The project has 4 features which by default are installed to different subdirs of INSTALLDIR, but users can select a separate dir for each feature. Install from source option can be selected as well.
I have created custom actions to set the directories to a source dir in case of install from source like:
dir name: NFO
dir value: [SourceDir]WinRoot\CarswellEnu\TemplateProject\NFO
Install Exec sequence: After InstallFiles
Condition: &FolioViews=4
I also write these directories in registry and use as command line parameters a shortcut.
Everything is fine when I install the product, but then I delete the shortcut manually and run the setup to repair. Repair process puts default directory value instead of the real one.
Could you please help me!!!!!
Posted 28 September 2007 - 16:58
Change your condition to fire the custom action in this case, too:
&FolioViews=4 Or (!FolioViews=4 And &FolioViews<1)
&FolioViews=4 Or (!FolioViews=4 And &FolioViews<1)
Stefan Krüger
InstallSite.org twitter facebook
Posted 28 September 2007 - 17:32
Hi Stefan,
Thanks a lot for your reply.
I have added the condition, but it did not help.
The command line in the shortcut is still wrong. It contains all paths of the different features the same time. I get right only the path of the component to which the shortcut belongs.
Thanks a lot,
Galina
Thanks a lot for your reply.
I have added the condition, but it did not help.
The command line in the shortcut is still wrong. It contains all paths of the different features the same time. I get right only the path of the component to which the shortcut belongs.
Thanks a lot,
Galina
Posted 28 September 2007 - 17:41
Generate a log to see if the action fires.
Stefan Krüger
InstallSite.org twitter facebook
Posted 01 October 2007 - 16:20
Hi Stefan,
Thanks again for your reply.
I have attached the log for reinstall and I saw that the custom action did not fire.
I also find strange records in the original install log:
It installed NFO component from source and the custom action to change NFO directory did fire:
MSI (s) (C8:1C) [10:14:08:406]: Skipping action: IsFolioViewsFavorSource (condition is false)
MSI (s) (C8:1C) [10:14:08:469]: Doing action: IsNFOFavorSource
Action 10:14:08: IsNFOFavorSource.
Action start 10:14:08: IsNFOFavorSource.
MSI (s) (C8:1C) [10:14:08:547]: PROPERTY CHANGE: Modifying NFO property. Its current value is 'C:\aaauuu\TemplateProject\NFO\'. Its new value: 'C:\My InstallShield 11.5 Projects\DISKVOLUME1\WinRoot\CarswellEnu\TemplateProject\NFO\'.
MSI (s) (C8:1C) [10:14:08:578]: Note: 1: 2727 2:
Action ended 10:14:08: IsNFOFavorSource. Return value 1.
But at the very end of the install the value of the proberty changed somehow:
Action start 10:15:59: SetupCompleteSuccess.
Action 10:15:59: SetupCompleteSuccess. Dialog created
Action ended 10:16:03: SetupCompleteSuccess. Return value 2.
Action ended 10:16:03: INSTALL. Return value 1.
Property©: ComputerName = U0040807-XPA
Property©: DiskPrompt = [1]
Property©: UpgradeCode = {A2697FF4-9ACF-49BD-9ED2-FA267A296C95}
Property©: VersionNT = 501
Property©: TARGETDIR = C:\
Property©: ALLUSERSPROFILE = C:\Documents and Settings\All Users\
Property©: AdminToolsFolder = C:\Documents and Settings\All Users\Start Menu\Programs\Administrative Tools\
Property©: AppDataFolder = C:\Documents and Settings\gkorosteliov\Application Data\
Property©: WindowsVolume = C:\
Property©: CARSWELLENU = C:\CarswellEnu\
Property©: CARSWELL_DIR = C:\CarswellEnu\
Property©: CommonFilesFolder = C:\Program Files\Common Files\
Property©: COMMON_CARSWELL_DIR = C:\Program Files\Common Files\CarswellEnu\
Property©: CommonAppDataFolder = C:\Documents and Settings\All Users\Application Data\
Property©: CommonFiles64Folder = C:\
Property©: ISYourDataBaseDir = C:\aaauuu\TemplateProject\Database\
Property©: DATABASEDIR = C:\aaauuu\TemplateProject\Database\
Property©: DesktopFolder = C:\Documents and Settings\All Users\Desktop\
Property©: FOLIOVIEWS_DIR = C:\Program Files\Common Files\CarswellEnu\FolioViews4.7\
Property©: FavoritesFolder = C:\Documents and Settings\gkorosteliov\Favorites\
Property©: FontsFolder = C:\WINDOWS\Fonts\
Property©: GlobalAssemblyCache = C:\
Property©: INSTALLDIR = C:\aaauuu\TemplateProject\
Property©: ISCommonFilesFolder = C:\Program Files\Common Files\InstallShield\
Property©: ISUpdateServiceFolder = C:\Program Files\Common Files\InstallShield\UpdateService\
Property©: LCF = C:\aaauuu\TemplateProject\LCF\
Property©: LocalAppDataFolder = C:\Documents and Settings\gkorosteliov\Local Settings\Application Data\
Property©: MyPicturesFolder = C:\Documents and Settings\gkorosteliov\My Documents\My Pictures\
Property©: NFO = C:\aaauuu\TemplateProject\NFO\
Here is the custom action:
<table name="CustomAction">
<row><td>IsNFOFavorSource</td><td>35</td><td>NFO</td><td>[SourceDir]WinRoot\CarswellEnu\TemplateProject\NFO</td><td>By default NFO is FavorLocal. If it become FavorSource, change dir.</td></row>
<table name="InstallExecuteSequence">
<row><td>IsNFOFavorSource</td><td>&NFO=4 Or (!NFO=4 And &NFO<1) </td><td>4067</td><td/><td/></row>
Thanks a lot,
Galina
Thanks again for your reply.
I have attached the log for reinstall and I saw that the custom action did not fire.
I also find strange records in the original install log:
It installed NFO component from source and the custom action to change NFO directory did fire:
MSI (s) (C8:1C) [10:14:08:406]: Skipping action: IsFolioViewsFavorSource (condition is false)
MSI (s) (C8:1C) [10:14:08:469]: Doing action: IsNFOFavorSource
Action 10:14:08: IsNFOFavorSource.
Action start 10:14:08: IsNFOFavorSource.
MSI (s) (C8:1C) [10:14:08:547]: PROPERTY CHANGE: Modifying NFO property. Its current value is 'C:\aaauuu\TemplateProject\NFO\'. Its new value: 'C:\My InstallShield 11.5 Projects\DISKVOLUME1\WinRoot\CarswellEnu\TemplateProject\NFO\'.
MSI (s) (C8:1C) [10:14:08:578]: Note: 1: 2727 2:
Action ended 10:14:08: IsNFOFavorSource. Return value 1.
But at the very end of the install the value of the proberty changed somehow:
Action start 10:15:59: SetupCompleteSuccess.
Action 10:15:59: SetupCompleteSuccess. Dialog created
Action ended 10:16:03: SetupCompleteSuccess. Return value 2.
Action ended 10:16:03: INSTALL. Return value 1.
Property©: ComputerName = U0040807-XPA
Property©: DiskPrompt = [1]
Property©: UpgradeCode = {A2697FF4-9ACF-49BD-9ED2-FA267A296C95}
Property©: VersionNT = 501
Property©: TARGETDIR = C:\
Property©: ALLUSERSPROFILE = C:\Documents and Settings\All Users\
Property©: AdminToolsFolder = C:\Documents and Settings\All Users\Start Menu\Programs\Administrative Tools\
Property©: AppDataFolder = C:\Documents and Settings\gkorosteliov\Application Data\
Property©: WindowsVolume = C:\
Property©: CARSWELLENU = C:\CarswellEnu\
Property©: CARSWELL_DIR = C:\CarswellEnu\
Property©: CommonFilesFolder = C:\Program Files\Common Files\
Property©: COMMON_CARSWELL_DIR = C:\Program Files\Common Files\CarswellEnu\
Property©: CommonAppDataFolder = C:\Documents and Settings\All Users\Application Data\
Property©: CommonFiles64Folder = C:\
Property©: ISYourDataBaseDir = C:\aaauuu\TemplateProject\Database\
Property©: DATABASEDIR = C:\aaauuu\TemplateProject\Database\
Property©: DesktopFolder = C:\Documents and Settings\All Users\Desktop\
Property©: FOLIOVIEWS_DIR = C:\Program Files\Common Files\CarswellEnu\FolioViews4.7\
Property©: FavoritesFolder = C:\Documents and Settings\gkorosteliov\Favorites\
Property©: FontsFolder = C:\WINDOWS\Fonts\
Property©: GlobalAssemblyCache = C:\
Property©: INSTALLDIR = C:\aaauuu\TemplateProject\
Property©: ISCommonFilesFolder = C:\Program Files\Common Files\InstallShield\
Property©: ISUpdateServiceFolder = C:\Program Files\Common Files\InstallShield\UpdateService\
Property©: LCF = C:\aaauuu\TemplateProject\LCF\
Property©: LocalAppDataFolder = C:\Documents and Settings\gkorosteliov\Local Settings\Application Data\
Property©: MyPicturesFolder = C:\Documents and Settings\gkorosteliov\My Documents\My Pictures\
Property©: NFO = C:\aaauuu\TemplateProject\NFO\
Here is the custom action:
<table name="CustomAction">
<row><td>IsNFOFavorSource</td><td>35</td><td>NFO</td><td>[SourceDir]WinRoot\CarswellEnu\TemplateProject\NFO</td><td>By default NFO is FavorLocal. If it become FavorSource, change dir.</td></row>
<table name="InstallExecuteSequence">
<row><td>IsNFOFavorSource</td><td>&NFO=4 Or (!NFO=4 And &NFO<1) </td><td>4067</td><td/><td/></row>
Thanks a lot,
Galina
Attached Files
Posted 01 October 2007 - 19:19
NFO feature is installed from Source.
It looks like reinstall option removes NFO component because it removes registry settings for this component on reinstall.
Please help!!!!!
It looks like reinstall option removes NFO component because it removes registry settings for this component on reinstall.
Please help!!!!!
Posted 05 October 2007 - 12:08
From the log it looks like the value of property NFO is not forwared from UI to Execute sequence - © and (s) in the log. In this case you may see a note about disallowing restricted property in the log. Then you should add NFO to thew SecureCustomProperties property. Or the property gets changed in the Execute sequence.
Also double check the request and action states of the NFO feature.
Also double check the request and action states of the NFO feature.
Stefan Krüger
InstallSite.org twitter facebook
Posted 05 October 2007 - 16:05
Hi Stefan,
I had to chaange the condition from:
<row><td>IsNFOFavorSource</td><td>&NFO=4 Or (!NFO=4 And &NFO<1) </td><td>4067</td><td/><td/></row>
to:
<row><td>IsNFOFavorSource</td><td>(&NFO=4 or !NFO=4) And Not REMOVE</td><td>4067</td><td/><td/></row>
Now it works fine.
Thanks a lot,
Galina
I had to chaange the condition from:
<row><td>IsNFOFavorSource</td><td>&NFO=4 Or (!NFO=4 And &NFO<1) </td><td>4067</td><td/><td/></row>
to:
<row><td>IsNFOFavorSource</td><td>(&NFO=4 or !NFO=4) And Not REMOVE</td><td>4067</td><td/><td/></row>
Now it works fine.
Thanks a lot,
Galina