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.
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.