Archiv

Autor Archiv

Dateien mehrfach installieren

18. Januar 2010 Keine Kommentare

Möchte man die gleiche Datei mehrfach installieren, sprich in verschiedene Verzeichnisse, so stößt man schnell auf Fehlermeldungen verschiedenster Art.
Eine mögliche Umsetzung ist folgende:

    <Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'>
        <Product>

            <Directory Id='TARGETDIR' Name='SourceDir'>
                <Directory Id='ProgramFilesFolder'>
                    <Directory Id='COMPANYFOLDER' Name='$(var.CompanyName)' />
                </Directory>
            </Directory>

            <ComponentGroup Id="Saar_A0_Quer.mxt">
                <Component Id="Saar_A0_Quer.mxt" Directory="APPLICATIONFOLDERTEMPLATEARCGIS" Guid="77B26FE2-607B-41D6-939E-2600F350F031">
                    <File Id="Saar_A0_Quer.mxt" KeyPath="yes" Source="$(var.Path_DataTemplates)\Saar_A0_Quer.mxt" />
                </Component>
                <Component Id="ArcGisCopy_Saar_A0_Quer.mxt" Directory="ARCGISROOTTEMPLATESPROJECT1" Guid="77B26FE2-607B-41D6-939E-2600F350F032">
                    <File Id="ArcGisCopy_Saar_A0_Quer.mxt" KeyPath="yes" Source="$(var.Path_DataTemplates)\Saar_A0_Quer.mxt" />
                </Component>
            </ComponentGroup>

            <Feature Id='FeatureDesktop' Title='Desktopinstallation' Level='30' Display='expand' >
                    <ComponentGroupRef Id='Saar_A0_Quer.mxt' />
            </Feature>

        </Product>
    </Wix>

warning HEAT5151: Could not load file or assembly

18. Januar 2010 Keine Kommentare

Fehler:
heat.exe : warning HEAT5151 : Could not harvest data from a file that was expected to be an assembly: C:\Projekte\…\Core.dll. If this file is not an assembly you can ignore this warning. Otherwise, this error detail may be helpful to diagnose the failure: Could not load file or assembly ‚Commons.UI, Version=9.3.0.978, Culture=neutral, PublicKeyToken=ccd18cc03af5b919‘ or one of its dependencies. The system cannot find the file specified.

Ursache:

Die Datei referenziert eine Fremd-DLL, die nicht im gleichen Verzeichnis und nicht im GAC (Global Assembly Cache) zu finden ist.

Lösung:

Alle Referenzen müssen entweder im GAC oder im gleichen Verzeichnis wie die zu extrahierende Datei liegen.