Jump to content


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.
Photo

ICE57 Error


3 replies to this topic

lavocat

lavocat
  • Full Members
  • 158 posts

Posted 15 December 2005 - 09:14

When performing MSI validation I get this message :
"ICE57 Error Component 'manual_spn' has both per-user and per-machine data with a per-machine KeyPath. http://dartools/iceman/ice57.html Component Component manual_spn"



The related tables are :


Component
=========
manual_spn {FFF9C0DF-513B-4B87-A31B-25D30989312C} MAN_SPN_DIR 0 ProductLanguage=1034 OR ProductLanguage=1027 myapp.pdf5 1 /LogFile= /LogFile= /LogFile= /LogFile=


Feature Components
==================
Manual manual_spn

File
====
myapp.pdf5 manual_spn myapp.pdf 0 1 <manual>\spn\myapp.pdf 1

ISComponentExtended
===================
manual_spn 1034 _0C522F74_17BB_46C6_A0C4_B18407C2F11B_FILTER

Shortcut
========
Manual_spn_shortcut newfolder1 ##FolderManual## manual_spn [INSTALLDIR]Manual\myapp.pdf 1




The file is per machine, the shortcut could be per-user (if ALLUSERS isn't set to 1)


Indeed, I tried to install this component in one account X (per-user) and then in another account Y (also choosing per-user installation). When unsintalling the sohrtcut is still there...

This shortcut was created using InstallShield Developer 8.

How can I change the shortcut to avoid this problem?

Edited by lavocat, 15 December 2005 - 09:15.


FrankSpierings

FrankSpierings
  • Members
  • 22 posts

Posted 29 December 2005 - 16:28

The per machine keypath is problably the path to where the shortcut containing component is installed.
I don't think u should worry about this "error", but i'm not 100% sure.

Remember that if u install a package for two users, u need to remove it for two users as well!

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 01 January 2006 - 17:10

The file is a per-machine resource (it's in the same location for all users) but the shortcut is a per-user resource. Now if you install this app for user A (not for all users, i.e. ALLUSERS proeprty not set) the file gets copied and the shortcut is created in the user's start menu. All is good so far.
Now user B also installs the app. Windows Installer sees that the component is already installed because the key element of the component (the file) already exists. Therefore it doesn't re-install that component. As a result, the shortcut will not be created for user B.
Solution: Either move the shortcut to a different component, or add a registry entry to the component under HKEY_CURRENT_USER and make that registry entr the key element.
If you only install this app per-machine, i.e. ALLUSERS is always set to 1, then you can ignore this error message.

lavocat

lavocat
  • Full Members
  • 158 posts

Posted 10 January 2006 - 09:03

If I make the registry key the key path instead of the file I'll lose the advantages of repair, update, etc. So I'll choose the first solution.

InstallShield offers an easy way to set shortcuts to files but introduce mistakes like this. Frustrating!


Thank you Stefan