Зачем устанавливать переменные среды для проекта VC++
Всем Привет,
Мне был назначен проект VC++, и это мой первый раз, когда я работаю над проектом VC++.
Проект был ранее построен на visual Studio 2015, и я вижу, что событие после сборки упоминается в свойствах проекта, где он вызывает пакетный файл-"vsvars32.bat".
Я использую Visual Studio 2017 и изменил имя файла на - "vsdevcmd.bat".
Я проводил кое-какие исследования, и мне в голову пришли некоторые вопросы. Я кое-что понял, а также нашел еще несколько тем, связанных с этим, которые я упомянул в разделе "Что вы пробовали". Я до сих пор гуглю, чтобы найти ответы, но до сих пор не мог их найти. Может быть, я смогу получить хорошее объяснение здесь.
1. Почему этот пакетный файл должен быть выполнен?
2. Могу ли я вызвать этот пакетный файл также для любых других проектов на языке C#/других языках?
3. Если я не вызову этот пакетный файл для текущего проекта VC++, то каковы могут быть последствия?
Что я уже пробовал:
По мере того как вопросы приходили мне в голову, я начал находить ответы и пришел к выводу, что все это является частью "MSBUild".
В основном, файл "vsdevcmd.bat" используется для настройки переменных окружения.
Кроме того, я узнал, что мы можем создавать проекты Visual Studio с помощью "MSBuild", и у него есть свойство под названием "набор инструментов платформы", где мы можем указать, для какой платформы я пытаюсь построить приложение, и это может быть для проектов драйверов и не драйверов.
И вот снова мне в голову пришло множество вопросов:
1. какова связь между набором инструментов платформы и переменной среды?
2. является ли эта переменная окружения специально для приложений Visual Studio или всей системы (как мы устанавливаем после установки многих программ, например Java SDK)?
3. я работал над проектами C#, но никогда не настраивал эти переменные среды с помощью этого пакетного файла. Итак, требуется ли это для любого проекта VC++?
4. я уже пишу код в Visual Studio и строю приложение с помощью VS Build, так что это означает, что оно управляется CLR, и поэтому мне нужно указать все эти переменные env или набор инструментов платформы?
Пожалуйста, помогите мне разобраться в ядре. Любые ссылки также были бы полезны.
Благодарить всех.