Announcement

Collapse
No announcement yet.

How do I create an installer for 64bit applications?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • How do I create an installer for 64bit applications?

    I'm trying to create an installer for a 64bit application. The application has 64bit EXE files, a DLL and registry entries. Under Project Settings I set the package platform to "x64". When I build my project I get the following error and I cannot figure out how to solve it:

    ProgressText.wxs

    Linking compiled files together as 'C:\Users\sen.SEN-VMWARE\eclipse-workspace\ProduceProClient\MSI Factory\Output\ProduceProClient.msi'
    Windows Installer XML Toolset Linker version 3.9.1208.0
    Copyright (c) Outercurve Foundation. All rights reserved.

    light.exe : error LGHT0001 : Unable to load DLL 'msi.dll': Invalid access to memory location. (Exception from HRESULT: 0x800703E6)

    Exception Type: System.DllNotFoundException

    Stack Trace:
    at Microsoft.Tools.WindowsInstallerXml.Msi.Interop.Ms iInterop.MsiGetFileVersion(String filePath, StringBuilder versionBuf, Int32& versionBufSize, StringBuilder langBuf, Int32& langBufSize)
    at Microsoft.Tools.WindowsInstallerXml.Msi.Installer. GetFileVersion(String filePath, String& version, String& language)
    at Microsoft.Tools.WindowsInstallerXml.Binder.UpdateF ileRow(Output output, IDictionary`2 infoCache, String modularizationGuid, Hashtable fileRowIndex, FileRow fileRow, Boolean overwriteHash)
    at Microsoft.Tools.WindowsInstallerXml.Binder.UpdateF ileInformation(Output output, FileRowCollection fileRows, MediaRowCollection mediaRows, IDictionary`2 infoCache, String modularizationGuid)
    at Microsoft.Tools.WindowsInstallerXml.Binder.BindDat abase(Output output, String databaseFile)
    at Microsoft.Tools.WindowsInstallerXml.Binder.Bind(Ou tput output, String file)
    at Microsoft.Tools.WindowsInstallerXml.Tools.Light.Ru n(String[] args)

    Error 5001: light.exe returned 1
    Deleting temporary files

    Build FAILED! Error: 5001 - Link failed (light.exe returned an error code). Usually means project contains errors or is missing information.

  • #2
    Please run "sfc /SCANNOW" as admin and have your system files checked.

    Ulrich

    Comment


    • #3
      Thanks Ulrich, you are right, something is corrupt on my system with msi.dll. I think I had a Windows update that failed a few weeks ago. I'm trying to figure out how to repair it.

      POQ 195 ends.
      2019-06-12 09:25:34, Info CSI 00000430 [SR] Verify complete
      2019-06-12 09:25:34, Info CSI 00000431 [SR] Repairing 1 components
      2019-06-12 09:25:34, Info CSI 00000432 [SR] Beginning Verify and Repair transaction
      2019-06-12 09:25:34, Info CSI 00000433 Hashes for file member \SystemRoot\WinSxS\wow64_microsoft-windows-installer-engine_31bf3856ad364e35_6.1.7601.24407_none_6c8c53 5e17982db0\msi.dll do not match actual file [l:14{7}]"msi.dll" :
      Found: {l:32 b:EWQchjXBFDGm3kNKOEprGoNf0MivguLKaeDJYjF8Zng=} Expected: {l:32 b4lo46ZUy6WcEGMe2hERA/bsCTTPsqhW6Vm0ErZ40Q8=}
      2019-06-12 09:25:34, Info CSI 00000434 [SR] Cannot repair member file [l:14{7}]"msi.dll" of Microsoft-Windows-Installer-Engine, Version = 6.1.7601.24407, pA = PROCESSOR_ARCHITECTURE_IA32_ON_WIN64 (10), Culture neutral, VersionScope = 1 nonSxS, PublicKeyToken = {l:8 b:31bf3856ad364e35}, Type neutral, TypeName neutral, PublicKey neutral in the store, hash mismatch
      2019-06-12 09:25:34, Info CSI 00000435 Hashes for file member \SystemRoot\WinSxS\wow64_microsoft-windows-installer-engine_31bf3856ad364e35_6.1.7601.24407_none_6c8c53 5e17982db0\msi.dll do not match actual file [l:14{7}]"msi.dll" :
      Found: {l:32 b:EWQchjXBFDGm3kNKOEprGoNf0MivguLKaeDJYjF8Zng=} Expected: {l:32 b4lo46ZUy6WcEGMe2hERA/bsCTTPsqhW6Vm0ErZ40Q8=}
      2019-06-12 09:25:34, Info CSI 00000436 [SR] Cannot repair member file [l:14{7}]"msi.dll" of Microsoft-Windows-Installer-Engine, Version = 6.1.7601.24407, pA = PROCESSOR_ARCHITECTURE_IA32_ON_WIN64 (10), Culture neutral, VersionScope = 1 nonSxS, PublicKeyToken = {l:8 b:31bf3856ad364e35}, Type neutral, TypeName neutral, PublicKey neutral in the store, hash mismatch
      2019-06-12 09:25:34, Info CSI 00000437 [SR] This component was referenced by [l:162{81}]"Package_166_for_KB4493472~31bf3856ad364e35~amd64~ ~6.1.1.8.4493472-509_neutral_LDR"
      2019-06-12 09:25:34, Info CSI 00000438 [SR] This component was referenced by [l:164{82}]"Package_685_for_KB4493472~31bf3856ad364e35~amd64~ ~6.1.1.8.4493472-2202_neutral_LDR"
      2019-06-12 09:25:34, Info CSI 00000439 Hashes for file member \??\C:\Windows\SysWOW64\msi.dll do not match actual file [l:14{7}]"msi.dll" :
      Found: {l:32 b:EWQchjXBFDGm3kNKOEprGoNf0MivguLKaeDJYjF8Zng=} Expected: {l:32 b4lo46ZUy6WcEGMe2hERA/bsCTTPsqhW6Vm0ErZ40Q8=}
      2019-06-12 09:25:34, Info CSI 0000043a Hashes for file member \SystemRoot\WinSxS\wow64_microsoft-windows-installer-engine_31bf3856ad364e35_6.1.7601.24407_none_6c8c53 5e17982db0\msi.dll do not match actual file [l:14{7}]"msi.dll" :
      Found: {l:32 b:EWQchjXBFDGm3kNKOEprGoNf0MivguLKaeDJYjF8Zng=} Expected: {l:32 b4lo46ZUy6WcEGMe2hERA/bsCTTPsqhW6Vm0ErZ40Q8=}
      2019-06-12 09:25:34, Info CSI 0000043b [SR] Could not reproject corrupted file [ml:48{24},l:46{23}]"\??\C:\Windows\SysWOW64"\[l:14{7}]"msi.dll"; source file in store is also corrupted

      Comment


      • #4
        OK, I was able to repair my system. Now my msi factory project builds successfully. Thanks for pointing me in the right direction!

        Comment

        Working...
        X