Критическая ошибка Visual Studio 2017 C1083: Невозможно открыть исходный файл: «Main.cpp»

Критическая ошибка Visual Studio 2017 C1083: Невозможно открыть исходный файл: «Main.cpp»

Я совершенно новый пользователь Visual Studio 2017 и у меня возникли трудности с созданием простого проекта HelloWorld. Вот что я делаю:

Файл > Новый > Проект...

я выбираюПустой проект. Я переименовываю проектПривет, мири я меняю местоположение с местоположения по умолчанию на моем диске c на местоположение внутри моей папки Dev, которая находится на моем диске d. После того, как проект создан, я нажимаю правой кнопкой мышиИсходные файлыи добавьте файл под названиемMain.cpp, содержащий простейший код:

int main() {
   return 0;
}

Однако, когда я нажимаю правую кнопку мышиПривет, мириСтроить, я получаю следующий вывод:

1>------ Build started: Project: HelloWorld, Configuration: Debug Win32 ------
1>Main.cpp
1>c1xx : fatal error C1083: Cannot open source file: 'Main.cpp': No such file or directory
1>Done building project "HelloWorld.vcxproj" -- FAILED.
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Однако я получаю эту ошибку только если я меняю Расположение проекта. Если я использую каталог по умолчанию,c:\my_user\Source\reposзатем проект собирается без проблем. Но я хотел бы знать, как исправить эту ошибку, потому что я не хочу хранить свои файлы на диске С. Кто-нибудь еще сталкивался с этой проблемой и может знать, как ее исправить? Потому что я в растерянности.

РЕДАКТИРОВАТЬСогласно статье в документации Microsoft о фатальной ошибке C1083:

Дополнительной причиной этой ошибки является чувствительность к регистру в файловой системе (как для имени файла, так и для пути), если чувствительность к регистру включена для каждого каталога и каталоги были созданы подсистемой Windows для Linux.

Это мой случай. Когда я купил этот ноутбук, я скачал все свои файлы, включая папку Dev, со своего ПК с помощью rsync в подсистеме Windows для Linux. Так что этот каталог был создан не Windows, а Ubuntu, работающей на WSL. Это может быть причиной проблемы, но я все еще не знаю, как ее исправить. Даже если это чувствительно к регистру, я ввожу папку с правильным регистром, поэтому я не знаю, почему это не сработает.

РЕШЕНОЕсли кто-то еще столкнется с этой проблемой, это была проблема с WSL. Я бы никогда не догадался об этом. Если вы хотите использовать папку, созданную с помощью WSL для вашего проекта Visual Studio, вам нужно отключить чувствительность к регистру:

  1. Запустите Windows Powershell от имени администратора.
  2. Выполните команду:

Файл fsutil.exe setCaseSensitiveInfo d:\my_wsl_created_folder отключить

Это решило мою проблему!

Связанный контент