/build/static/layout/Breadcrumb_cap_w.png

ICE57 error

Hi there,
Im receiving an error from adminstudio version 6
when validating an msi -
'ICE57 Error Component 'ShortcutsComponent' has both per-user data and a keypath that can be either per-user or per-machine. http://dartools/iceman/ice57.html Component Component ShortcutsComponent'
ShortcutsComponent is the component that my shortcuts are associated with.
It is located in the registry under HKEY_USER_SELECTABLE I'm not sure of the functionality of this constituent of the registry.
The following is the entry in the components table:
ShortcutsComponent | {D224A0EA-2837-4F6D-A0F7-C00134516FDA} | INSTALLDIR | 4 | [empty] | Registry_1848

The following is the entry in the registry table for Registry_1848:
Registry_1848 | -1 | Software\Shortcuts | {A037FDB1-05E5-44B6-BB4E-18E12F737B6B} | [empty] | ShortcutsComponent

I unsure as to how to rectify this problem.
My allusers entry is '2'
Can someone shed some light?
Many thanks!

0 Comments   [ + ] Show comments

Answers (12)

Posted by: shamrock 17 years ago
Orange Belt
1
Ok, i see thanks again for all your help,
kind regards,
Shamrock.
Posted by: AngelD 17 years ago
Red Belt
0
First off we need to know how you plan to install the application and as per-user, per-machine or maybe just manual?
As you have specified ALLUSERS property to 2, meaning if an administrative user (ex local admin) installs the installation will install per-machine otherwise per-user.
If it's an per-machine installation you will end up with a component containing bother user and machine resources which in turn breaks the best practise rules; never have mixed user and machine data in same component as this can prevent a repair from occur correct for regular users and sometimes even admin users.

A side note: what is the directory location for INSTALLDIR?
Posted by: shamrock 17 years ago
Orange Belt
0
Hi and thanks for the reply!
The application will be installed per user via active directory.
The directory location for INSTALLDIR is specified as [WindowsFolder]Installer
under general information -> product properties -> INSTALLDIR
Hope you can help,
Regards
Posted by: AngelD 17 years ago
Red Belt
0
Then split up the component resources to different components.
Add the Registry_1848 registry to a CurrentUser component and change the keypath for the ShortcutsComponent component to a "machine" resource instead. This will get rid of the ICE error.
Posted by: shamrock 17 years ago
Orange Belt
0
Great stuff - Im quite new to repackaging and I'm wondering how I would
go about doing the above?
It doesn't make much sense to me.
i really appreciate your input,
Many thanks again,
regards
Posted by: AngelD 17 years ago
Red Belt
0
What packaging tool are you using?
Posted by: shamrock 17 years ago
Orange Belt
0
adminstudion version 6
Posted by: AngelD 17 years ago
Red Belt
0
You couldn't say WPS (Wise Package Studio), WFWI (Wise For Windows Installer) or ORCA could you ;)
I don't use AdminStudio so you will have to rely on someone else in this case.
Posted by: shamrock 17 years ago
Orange Belt
0
Ok, no worries, but supposing it was ORCA, what would I do?
Maybe i can try and replicate this in adminstudio! :)
Many Thanks again!
regards,

Im going to get ORCA :)
Posted by: AngelD 17 years ago
Red Belt
0
Okey, suppose you use ORCA ;)

What you want to do is to add a new component holding the HKCU registry part or HKLM depending on the installation as the ALLUSERS property was set to 2 and the Registry_1848 registry was set to the -1 ROOT, and add that new component to a an existing feature. We also want to change the keypath for the ShortcutsComponent component to another resource (non-userprofile file or HKLM registry entry).

Open the msi
Go to the Component table and add a new component (row) by right-click and select Add Row
Fill out the values (read the MSI.CHM), keypath for this component should be Registry_1848.
Go to the FeatureComponents table and add a new row (enter the newly created component and existing feature)

For the ShortcutsComponent component; locate this in the component table and change the KeyPath column for the component row to another resource in the component.

MSI.CHM from the platform sdk will be your best friend when editing using ORCA.

Almost forgotten:
go to the Registry table and find the Registry_1848 entry and change the component column to the name of the component you created.
Posted by: shamrock 17 years ago
Orange Belt
0
Thanks for all the help AngelD!
I just have one final question,
supposing the allusers property was set to null to allow
only a per-user installation, would that make much of a difference on
the above procedure?
Thanks again,
Kind regards,
Shamrock
Posted by: AngelD 17 years ago
Red Belt
0
When you deploy the package through Active Directory and as Per-User the ALLUSERS property will be set to 2 even if you have defined the value to 1 in the MSI, so it will not matter in your case. But during validation it will matter; so by setting it to 2 you will get a "real" validation.
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
 
This website uses cookies. By continuing to use this site and/or clicking the "Accept" button you are providing consent Quest Software and its affiliates do NOT sell the Personal Data you provide to us either when you register on our websites or when you do business with us. For more information about our Privacy Policy and our data protection efforts, please visit GDPR-HQ