Создание визуальных студийных проектов портативно, проблема - PullRequest
0 голосов
/ 12 ноября 2018

У меня проблема.

Где бы я ни пытался запустить программу c ++ (встроенную в Visual Studio 2017 Community Edition) на другом компьютере, он говорит, что отсутствуют три dll: vcredist, MSVCP140D и ucrtbased.dll. Единственное решение, которое я нашел, - это установить сообщество Visual Studio на другой компьютер.

Мой вопрос: как вы создаете программу, которая не требует постоянно этих библиотек на другом компьютере? Как мне исправить эту проблему на моей стороне?

Спасибо за ваше время и любую помощь, которую вы предлагаете.

С уважением, John

1 Ответ

0 голосов
/ 12 ноября 2018

Проблема, с которой вы сталкиваетесь, связана с тем, как вы распространяете свое приложение и как вы связываете библиотеки, от которых оно зависит.

Ваше приложение связывается с DLL, которые вы упоминаете , динамически . Это означает, что вам необходимо включить эти библиотеки в виде отдельных файлов вместе с приложением или попросить пользователя установить их отдельно на целевом компьютере.

Однако вы можете скомпилировать их в приложение, связав статически . Microsoft не рекомендует эту практику по причинам, которые могут быть связаны с общей производительностью системы и управлением памятью.

Посмотрите эту статью Microsoft для получения дополнительной информации об этом различии, поскольку оно конкретно относится к разработке приложений для Windows.

...