I have a whole lot of projects set up in Update 2.
The projects targets are Windows 10, Windows 8.1, Windows 7, Windows CE 6.0 R3 x86 and Windows CE 6.0 R3 ARM.
(I mucked around a lot with MsBuild targets and platforms in C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Platforms in order to get VS 2015 Update 2 to build the Compact x86 and Compact ARM targets).
I installed Update 3 and:
1.) The windows 10, Windows 8.1 and Windows 7 project build just fine.
2.) The Windows CE 6.0 R3 x86 and Windows CE 6.0 R3 ARM do not build
Two things are happening when I build a project with one of my Platform / Toolsets with Update 3:
1.) warning MSB8003: Could not find WindowsSDKDir variable from the registry. TargetFrameworkVersion or PlatformToolset may be set to an invalid version number.
2.) My VC++ Directories are not correct (they no longer include the full path from the platform / toolsets)
Any help / thoughts on these two issues would be greatly appreciated.
Stuff:
$(VCTargetsPath) is in fact correct.
In \Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Platforms\WINCE600x86
From my Platform.targets:
<!-- Import appropriate platform toolset file. -->
<Import Condition="'$(ToolsetTargetsFound)' == 'true'" Project="$(VCTargetsPath)\Platforms\WINCE600x86\PlatformToolsets\WINCE600\Toolset.targets" />
In \Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Platforms\WINCE600x86\PlatformToolsets\WINCE600
From my Toolset.props:
<!-- [HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows CE Tools\SDKs\WINCE600x86]
"(Default)"="C:\\Program Files (x86)\\Windows CE Tools\\SDKs\\WINCE600x86\\"
-->
<SdkRootPath>$(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows CE Tools\SDKs\WINCE600x86)</SdkRootPath>
<ExecutablePath Condition="'$(ExecutablePath)' == ''">$(SdkRootPath)sdk\bin\x86_cex86;$(SdkRootPath)sdk\Microsoft Visual Studio 9.0\VC\bin;$(SdkRootPath)sdk\Microsoft Visual Studio 9.0\Common7\IDE;</ExecutablePath>
<IncludePath Condition="'$(IncludePath)' == ''">$(SdkRootPath)sdk\Include;$(SdkRootPath)PanelSDK\include\x86;$(SdkRootPath)sdk\atlmfc\Include;</IncludePath>
<LibraryPath Condition="'$(LibraryPath)' == ''">$(SdkRootPath)PanelSDK\Lib\x86;$(SdkRootPath)sdk\atlmfc\lib\x86;$(SdkRootPath)sdk\lib\x86;</LibraryPath>
In my Update 3 project settings VC++ Directories (I am just showing the Include as an example):
Evaluated Value:
sdk\Include
PanelSDK\include\x86
sdk\atlmfc\Include
Inherited Value:
$(SdkRootPath)sdk\Include
$(SdkRootPath)PanelSDK\include\x86
$(SdkRootPath)sdk\atlmfc\Include
In my update 2 project settings VC++ Directories (I am just showing the Include as an example):
Evaluated Value:
Evaluated Value:
C:\\Program Files (x86)\Windows CE Tools\SDKs\WINCE600x86\sdk\Include
C:\\Program Files (x86)\Windows CE Tools\SDKs\WINCE600x86\PanelSDK\include\x86
C:\\Program Files (x86)\Windows CE Tools\SDKs\WINCE600x86\sdk\atlmfc\Include
Inherited Value:
$(SdkRootPath)sdk\Include
$(SdkRootPath)PanelSDK\include\x86
$(SdkRootPath)sdk\atlmfc\Include
Again, this all works with Update 2 (which I still have installed on a machine) , the problems occurred when I installed Update 3.
Thanks again.