cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Holger_G
Level 10

Internal build error -6041

Hi,

I modified a working Basic MSI project (multilanguage) and now I am getting internal build error -6041. Modified means that I removed a bunch of components and added some new.

Building works when setting the UI languages to a single language only.

Does anyone have a clue?

thanks
Holger
Labels (1)
0 Kudos
(4) Replies
Jeff2008
Level 6

There is a procedure to resolve this error in the help, have you tried it? Just open the help and search for "Build Errors and Warnings".
0 Kudos
joshstechnij
Level 10 Flexeran
Level 10 Flexeran

Build error -6041 occurs when there is an error encountered applying a language transform to a language specific MSI that is generated as part of the build process. When building with only one language, no language transforms are created.

As a quick test, go to the release you are building in the Releases view and change the Keep Unused Directory Entries setting to Yes (if it is not already) and try building again.
0 Kudos
Holger_G
Level 10

joshstechnij wrote:
As a quick test, go to the release you are building in the Releases view and change the Keep Unused Directory Entries setting to Yes (if it is not already) and try building again.


That fixes the problem, thanks.
0 Kudos
gripper4hire
Level 3

I encountered this problem when building a release that had the following criteria:

[LIST=1]
  • Several components which contain shortcuts installed under different Start Menu program folder. (This by default creates Localized entries for the Start menu folder names)
  • These components are grouped under features built with Release Flags.


    I suspect when Installshield localizes the directory names, this interfers with "Remove Unused Directories" when a Release uses Release Flags. This could also be a side-effect of waiting for localized strings from the translation agency, as other languages all default to "new folder" default when the shortcut folder is created

    I didn't really want to turn of the "Remove Unused Directories" flag, as that ends up produces ICE Errors and Warnings (also when using Release Flags).

    For me, the Start Menu Program Folders do not need to be translated (its a proper name). So to solve the problem I did the following:

    [LIST=1]
  • Saved project as Binary Format, and Open it in ORCA.
  • Go to Directory Table, locate under DefaultDir column the localized Installshield Identifiers. These will always be in surrounded by double "#" signs, example: ##IDENTIFIER##
  • Replace the localized ##IDENTIFIER## entries with a non-localized DefaultDir entries. May sure you conform to MSI guidelines (i.e. include an 8.3 directory name). For example, "MyComp~1|My Company" or "MyProg~1|My Program")
  • Save the ISM file in ORCA
  • Reopen project with Installshield. Remove the corresponding string table entries (if they are not used anymore). Optionally, can resave back to XML.


    After doing the above steps, I was able to build with the "Keep Unused Directories" flag set to "No" and no more -6041
  • 0 Kudos