I've got a problem merging 2 MSM's with Light 3.0.
If I merge one MSM or the other, I get the following:
light.exe : error LGHT0205 : ICE32: Possible Mis-
Aligned Foreign Keys
Feature.1 = s38
FeatureComponents.Feature_ = s32
If I try to merge them both, I get the above error,
then Light crashes with the following:
Unhandled Exception: System.ArgumentException: Item
has already been added. Key
in dictionary: 'Merge:' Key being added: 'Merge:'
at System.Collections.Hashtable.Insert(Object key,
Object nvalue, Boolean add
)
at System.Collections.Hashtable.Add(Object key,
Object value)
at
Microsoft.Tools.WindowsInstallerXml.Validator.GetSourc
eLineNumbers(String
tableName, String[] primaryKeys)
at
Microsoft.Tools.WindowsInstallerXml.Validator.Validati
onUIHandler(IntPtr c
ontext, UInt32 messageType, String message)
I've tried this using the 2.0 Candle and Light and it
works just fine (no errors). These MSM's pass
Validation, and have been used with used with other
merging utilities (ones using the IMsmMerge2
interface).
I've got a small package to reproduce this, but I'm
having trouble uploading it. E-mail me and I'll send
it.
Any ideas?
Duane Johnson
AttachmateWRQ
Logged In: YES
user_id=518766
I figured out a repro thanks to your thorough description.
this is a really nice bug - like most good bugs there were
multiple failures that caused it:
information (doesn't make any sense because we won't get an
error from an unreal table because they don't get put in the
database).
doesn't have a primary key column defined.
It may also be appropriate to have a warning for tables
which don't define a primary key column since that would
almost never be desired.
So, nice find!
Logged In: YES
user_id=1523750
Great! Thanks for the prompt reply.
Duane.
Logged In: YES
user_id=1523750
Thought I might mention that I'm running on the x64
version of XP, although I've seen this problem happen on
the 32-bit XP as well.