Я создал два консольных приложения (запрограммированных на C / C ++), клиент и сервер, которые обмениваются сообщениями. Приложения работают хорошо, но проблема возникает, когда мне приходится переключать исполняемый файл на другой компьютер, на котором не установлена Visual Studio. После запуска одного из двух приложений мне сообщают, что отсутствуют msvcp140.dll, vcruntime140.dll и vcruntime140_1.dll. Поэтому я провел некоторое исследование и попытался решить. Некоторые говорили, что нужно настроить stati c linking (Свойства конфигурации -> C / C ++ -> Генерация кода -> Библиотека времени выполнения: «Многопоточная (/ MT)»), но однажды я переключился на второй p c Я получил сообщение о том, что DLL отсутствуют.
Кроме того, исполняемый файл не увеличился в размерах (12 КБ) по сравнению с предыдущим. Некоторые сказали, что они пытались использовать сторонние приложения или просто переключить dll на второй p c. Моя цель, однако, состояла в том, чтобы получить один исполняемый файл, который работал бы автономно, без использования установщиков.
Поиск на различных форумах Я не нашел решений; Дело в том, что те же приложения, скомпилированные в Dev- Cpp, а затем перенесенные во второй p c, работали отлично, поэтому должен быть способ. Разница, которую я заметил между .exe, скомпилированным в Dev и Visual Studio, заключается в размере (примерно 1,3 МБ и 23 КБ соответственно). Итак, как я могу (если это возможно в VS) получить один .exe (больший или меньший размер исполняемого файла не проблема), что я могу перейти на другой компьютер без необходимости какой-либо DLL?
Я программирую в Visual Studio 2019, студенческая версия; в качестве «second p c» я использую виртуальную машину, работающую Windows 10 (та же система, что и у хоста). Конфигурация решения при сборке: Выпуск x86.