Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

Already on GitHub? Sign in to your account

AssemblyFolders missing when running x64 MSBuild #3165

Closed
wixbot opened this Issue May 10, 2011 · 8 comments

Comments

Projects
None yet
2 participants
Collaborator

wixbot commented May 10, 2011

Hi,

Following issue when running x64 MSBuild with DTF CAs:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Microsoft.Common.targets (1360): Could not resolve this reference. Could not locate the assembly "Microsoft.Deployment.WindowsInstaller". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors.

After tracking down the issue the problem is the x64 MSBuild process and that the WiX installation only sets a wow64 x86 key:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft.NETFramework\AssemblyFolders\WiX 3.x
@="C:\Program Files (x86)\Windows Installer XML v3.x\SDK"

When adding the AssemblyFolders reference to the registry the build works properly:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft.NETFramework\AssemblyFolders\WiX 3.x]
@="C:\Program Files (x86)\Windows Installer XML v3.x\SDK"

3.x: x placeholder, we found the issue for WiX 3.5.2509 but should be the same for all other WiX builds as well.

Regards
Tobias

Originally opened by tobias1979 from http://sourceforge.net/p/wix/bugs/2532/

Collaborator

wixbot commented Aug 14, 2013

We cut the x64 installer, which wrote the x64 registry values. See http://www.joyofsetup.com/2010/03/27/wix-msbuild-v2-0-and-x64-systems/.

Collaborator

wixbot commented Aug 14, 2013

Had the same problem with WiX 3.7 on TFS 2012. Thanks for the workaround!

Collaborator

wixbot commented Aug 14, 2013

I ran into this issue as well while authoring a managed bootstrapper application for Burn (3.6 Beta). We have Team Foundation Server with a build agent on a 64-bit machine. The builds were failing because MSBuild 4.0 x64 run by the build agent wasn't finding the WiX SDK directory, even though we could open Visual Studio on the exact same machine could open the solution and build successfully. We used the workaround that Tobias described (duplicating the key in the 64-bit half of the registry), but I think that a build agent on a 64-bit machine is a kind of scenario that WiX should support without resort to manual registry fixes. Especially since WiX is now distributed via its own Burn wrapper, it could simply download the correct msi without causing confusion.

Collaborator

wixbot commented Aug 14, 2013

Hi Bob,

Thanks for the hint with your blog.

From your blog:
"Late in the WiX v3.0 development cycle, Jason made a change that lets 64-bit MSBuild use the targets and tasks in the 32-bit directory tree."

Actually that implementation for x64 MSBuild seems to have the described issue. And it seems, at first glance, work properly with the x64 regkey.

Maybe as proposal for solving that issue also in regard of not re-inventing an x64 package: What about a CA duplicating the reg key to the x64 hive to make MSBuild x64 happy: I know maybe you don't like that approach due an x86 package deploying to x64 structure...

Regarding:
"If you use MSBuild 3.5 or the .zip WiX package or by checking WiX in to your source-control system, you’re not affected and can use the x86 WiX .msi package."

We're using MSBuild 4.0 x64 + WiX x86 package (3.5.2519), so unfortunately we are affected by the regkey issue.

Just to emphasis: We can work around by adding the key but it would be nice for the x86 WiX installer for a proper MSBuild x64 configuration. It seems to be done for almost 98 % ;-)

Thanks and best regards,
Tobias

Collaborator

wixbot commented Oct 17, 2013

Originally changed by barnson
Area changed from dtf to installer
Release changed from future to v3.8

Collaborator

wixbot commented Oct 18, 2013

Just adding a comment to get notified of changes to this issue.

Originally posted by cremor

Collaborator

wixbot commented Oct 19, 2013

Originally changed by barnson
AssignedTo set to bobarnson

Collaborator

wixbot commented Oct 19, 2013

Originally changed by barnson
Resolution set to fixed
Status changed from Open to Resolved

@wixbot wixbot added this to the v3.8 milestone Dec 20, 2015

@wixbot wixbot closed this Dec 20, 2015

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment