Почти все C
или C++
программы, созданные с помощью Visual Studio 2015 или более поздней версии, будут только работать (правильно) на ПК с соответствующим VC Redistributable установлено.
Вы говорите, что не хотите, чтобы люди устанавливали что-то другое, но так или иначе им придется это делать. Однако, когда вы создаете пакет установки, вы, вероятно, можете установить соответствующий распространяемый файл как «предварительное условие» в этом установщике.
Это будет означать создание файла «Setup.exe» для запуска пакета .msi,хотя. Чтобы использовать этот метод, щелкните правой кнопкой мыши по проекту «.vdproj» в «Обозревателе решений» и нажмите кнопку «Необходимые условия». (Если эта кнопка не активирована, обязательно выберите одну из ваших конфигураций «Release» в верхнем левом углу страницы свойств.)
Когда вы нажимаете эту кнопку, убедитесь, что вы отметили «Create setup». установите флажок… в верхней части диалогового окна «Предварительные требования», затем прокрутите вниз и выберите соответствующий параметр «Библиотеки среды выполнения Visual C ++» 14 (по одному для каждой поддерживаемой платформы). [Обратите внимание, что хотя они и называются VC '14', они будут работать для любой версии VC, начиная с 14 и выше!]
Затем вам придется распространять оба файла "Setup.exe". "программа и ваш .msi
пакет. Когда они дважды щелкают «Setup.exe», он проверит и при необходимости загрузит и установит распространяемый пакет.
Существует еще один способ сделать это, включив соответствующую платформу. конкретный распространяемый в вашем установочном пакете, а затем запускает его как «Custom Action» из установщика. Но это не тривиально! Я могу опубликовать пример кода для этого, если вы решите пойти по этому пути.