diff --git a/templates/vsprojects/vcxproj_defs.include b/templates/vsprojects/vcxproj_defs.include
index 23fe2e01806..0ddf68a11a0 100644
--- a/templates/vsprojects/vcxproj_defs.include
+++ b/templates/vsprojects/vcxproj_defs.include
@@ -78,6 +78,8 @@ ${gen_package_props(packages, repo_root)}\
${project_guid if project_guid else project.vs_project_guid}
## Silence MSB8029 warning. See #4506
true
+## Use different location for intermediate directory to make path shorter than 260 characters.
+ $(SolutionDir)IntDir\$(MSBuildProjectName)\
diff --git a/vsprojects/.gitignore b/vsprojects/.gitignore
index c1eef4df7a7..8df1dcf0bf5 100644
--- a/vsprojects/.gitignore
+++ b/vsprojects/.gitignore
@@ -9,3 +9,4 @@ test_bin
*.sdf
third_party/*.user
/packages
+/IntDir