diff --git a/Modules/CompilerId/VS-10.csproj.in b/Modules/CompilerId/VS-10.csproj.in
index 833dca7cd8..ed5e8476fa 100644
--- a/Modules/CompilerId/VS-10.csproj.in
+++ b/Modules/CompilerId/VS-10.csproj.in
@@ -47,9 +47,9 @@
- cd /D "$(MSBuildToolsPath)"
-if not %errorlevel%==0 exit -1
-if not exist @id_cl@ exit -2
-%40echo CMAKE_@id_lang@_COMPILER=$(MSBuildToolsPath)\@id_cl@
+ if not "$(RoslynTargetsPath)"=="" if exist "$(RoslynTargetsPath)\@id_cl@" set _CSC=$(RoslynTargetsPath)
+if exist "$(MSBuildToolsPath)\@id_cl@" set _CSC=$(MSBuildToolsPath)
+if "%_CSC%"=="" exit -1
+%40echo CMAKE_@id_lang@_COMPILER=%_CSC%\@id_cl@