[wix-users] VS2019 C++ project harvesting

DUCKA Michal michal.ducka at hexagon.com
Wed Oct 21 01:45:25 PDT 2020


Hi All, my first post here, hope not to break any unspoken newbie rules 😊

I’m having a hard time updating VS2010 WiX setup project to VS2019 tools. What we want to do in same exercise is to migrate C++ projects to v142 toolset. I’ve tries many ways but still cannot force heat to harvest such a project properly. Problem already fought against:

  *   On VS2010 + VS2019 machine – no way to persuade heat to use MSBuild + it’s settings from Program files x86\Visual studio\... folder. It was always trying to take it from Program files x86\MSBuild
  *   I moved to new machine with VS2019 only – problem persisted but was able to overcome it by setting VCTargetsPath environmental variable.
  *   Changed ToolsVersion for both C++ project and WiX setup project to 15.0 or Current and result is same - cannot go any further because of this message: heat.exe(0,0): error HEAT5305: Failed to load project RibbonBar2017.vcxproj: The expression "[Microsoft.Build.Utilities.ToolLocationHelper]::FindRootFolderWhereAllFilesExist(C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Microsoft\VC\v160\;, Platforms\Win32\PlatformToolsets\v142\Toolset.props;Platforms\Win32\PlatformToolsets\v142\Toolset.targets;Platforms\Win32\Platform.props;Platforms\Win32\Platform.targets)" cannot be evaluated. Method 'Microsoft.Build.Utilities.ToolLocationHelper.FindRootFolderWhereAllFilesExist' not found.

After reading this I checked around and found out some suggestions that it may be related to MSBuild 15 dlls to be registered in GAC and that unregistration should help, but it was not the case. I have MSBuild stuff in GAC but it v4.0 dlls.

So, my question is simple: is there a way to harvest VC++ v142 project using heat.exe on VS2019 only machine? If so, what I missed or did wrong to achieve it?

Michał


More information about the wix-users mailing list