rc.exe no longer found in VS 2015 Command Prompt

Spent some time looking at this on three machines with Win10 Creators Edition and VS2010, VS2013, VS2015 and VS2017 installed, where it works on two machines and fails on the third. All had VS2015 Update 3 and all should have been installed with the same options.

Running the following batch file

C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\vcvars64.bat

should setup the correct environment for VS2015 x64 environment. This should add

C:\Program Files (x86)\Windows Kits\10\bin\x64

to the PATH. This is where rc.exe should be. However on my failing machine rc.exe was missing from here, but it did exist in

C:\Program Files (x86)\Windows Kits\10\bin\10.0.15063.0\x64

I went back and feeling like this was a setup issue I re-ran the VS2015 Update 3 setup and told it to add

Windows and Web Development -> Universal Windows App Development Tools -> Tools (1.4.1) and Windows 10 SDK (10.0.14393)

this caused rc.exe and related files to appear in

C:\Program Files (x86)\Windows Kits\10\bin\x64

Running rc -v on

C:\Program Files (x86)\Windows Kits\10\bin\10.0.15063.0\x64\rc.exe

and

C:\Program Files (x86)\Windows Kits\10\bin\x64\rc.exe

gave the same version number 10.0.10011.16384

Not sure why rc.exe was missing from the original install, but re-running the install and adding the other SDK fixed it for me. It looks like

C:\Program Files (x86)\Windows Kits\10\bin\x64\rc.exe

should be the default rc.exe but it was not setup by a previous install.


It's definitely not just you. I installed VS2017 yesterday and doing so seems to have produced the same problem on my end. I don't have a good solution (this should be reported to Microsoft as a bug) but I do have a hacky workaround.

I was able to copy rc.exe and rc.dll from

C:\Program Files (x86)\Windows Kits\10\bin\10.0.15063.0\x64 
to
C:\Program Files (x86)\Windows Kits\10\bin\x86

That resolved the issue for me. My hunch is that it's a registry key being overwritten but I haven't dug into it enough to be sure.