I have two additional bug reports:
- If the files referenced in component filesets are read-only (as when
fetched from a lot of source-control systems), the <msm> task leaves
behind a Temp directory with copies of the files named after their
File table names. In InstallerCreationCommand.CleanOutput,
Directory.Delete is used, which throws an UnauthorizedAccessException
if it runs into a read-only file.
- If a source file has the language set in its versioninfo, the
Language column in the File table is set to "English (United States)"
but should be "1033" (e.g.). InstallerCreationCommand.GetLanguage uses
the FileVersionInfo.Language property, which returns "the default
language string." I don't see a FileVersionInfo method or property
that returns the language ID that MSI wants.
BTW, I ran Orca's merge module ICEs on the merge module I created and
got the (partial) output attached.
--
sig://boB
http://foobob.com
ICEM04 ERROR Feature-Component
'{00000000-0000-0000-0000-000000000000}.mfc71.dll.304E6452_20CF_43BA_B3E2_809285B1866D'
found in the FeatureComponents table. The FeatureComponents table must be empty in a
Merge Module.
ICEM04 ERROR Feature-Component
'{00000000-0000-0000-0000-000000000000}.mfc71u.dll.304E6452_20CF_43BA_B3E2_809285B1866D'
found in the FeatureComponents table. The FeatureComponents table must be empty in a
Merge Module.
ICEM04 ERROR Feature-Component
'{00000000-0000-0000-0000-000000000000}.atl71.dll.304E6452_20CF_43BA_B3E2_809285B1866D'
found in the FeatureComponents table. The FeatureComponents table must be empty in a
Merge Module.
ICEM04 ERROR Feature-Component
'{00000000-0000-0000-0000-000000000000}.msvcp71.dll.304E6452_20CF_43BA_B3E2_809285B1866D'
found in the FeatureComponents table. The FeatureComponents table must be empty in a
Merge Module.
ICEM04 ERROR Feature-Component
'{00000000-0000-0000-0000-000000000000}.msvcr71.dll.304E6452_20CF_43BA_B3E2_809285B1866D'
found in the FeatureComponents table. The FeatureComponents table must be empty in a
Merge Module.
ICEM10 ERROR The property 'ProductName' is not allowed in a Merge Module
ICEM10 ERROR The property 'Manufacturer' is not allowed in a Merge Module
ICEM10 ERROR The property 'ProductCode' is not allowed in a Merge Module
ICEM10 ERROR The property 'UpgradeCode' is not allowed in a Merge Module
ICE03 WARNING String overflow (greater than length permitted in column); Table: File,
Column: Language, Key(s): _C04A50BE13274411940C8BDD732F0153
ICE03 WARNING String overflow (greater than length permitted in column); Table: File,
Column: Language, Key(s): _10149D79DEC34701823D987F95BE9096
ICE03 WARNING String overflow (greater than length permitted in column); Table: File,
Column: Language, Key(s): _7222165364564863A0C4CF937190A8FD
ICE03 WARNING String overflow (greater than length permitted in column); Table: File,
Column: Language, Key(s): _6CAC26A8E5A848ABA8F8ACC421932800
ICE03 WARNING String overflow (greater than length permitted in column); Table: File,
Column: Language, Key(s): _D9DDCB61EC5D457AAB5D953C727B0D8E
ICE03 ERROR Invalid identifier; Table: FeatureComponents, Column: Feature_, Key(s):
{00000000-0000-0000-0000-000000000000}.mfc71.dll.304E6452_20CF_43BA_B3E2_809285B1866D
ICE03 ERROR Invalid identifier; Table: FeatureComponents, Column: Feature_, Key(s):
{00000000-0000-0000-0000-000000000000}.mfc71u.dll.304E6452_20CF_43BA_B3E2_809285B1866D
ICE03 ERROR Invalid identifier; Table: FeatureComponents, Column: Feature_, Key(s):
{00000000-0000-0000-0000-000000000000}.atl71.dll.304E6452_20CF_43BA_B3E2_809285B1866D
ICE03 ERROR Invalid identifier; Table: FeatureComponents, Column: Feature_, Key(s):
{00000000-0000-0000-0000-000000000000}.msvcp71.dll.304E6452_20CF_43BA_B3E2_809285B1866D
ICE03 ERROR Invalid identifier; Table: FeatureComponents, Column: Feature_, Key(s):
{00000000-0000-0000-0000-000000000000}.msvcr71.dll.304E6452_20CF_43BA_B3E2_809285B1866D