C ++: способ найти то, что зависит от Visual C ++ Redistribute

Я сделал много вещей с моим учебным проектом на C ++, для которого stackoverflow мне очень помог. Я всегда старался сделать его как можно более «стандартным», чтобы он был кроссплатформенным. Используя boost здесь и там, поток C ++ 11 и оболочка, которая использует либо сокеты WIN32, либо API BSD. И я решил скомпилировать в RELEASE для друга, чтобы просто выпендриваться, и для этого требовалось установить MSVCPP110.dll на его компьютер 🙁

У меня была эта проблема в начале, но затем я настроил Visual Studio для компиляции MFC как библиотеки STATIC, и это исправило начальные тесты, но я понятия не имею, что я вставил в код, который потребовал бы «моего пользователи «, чтобы установить Visual C ++ Redistribute для простого консольного приложения, которое запускает 2 потока и открывает TCP-сокет в одном из них.

Есть ли у вас какие-либо советы новичку, как я могу проверить, что беспокоит мою систему, ИЛИ способ включить его в исполняемый файл, я видел, как некоторые игры на моем компьютере имеют вышеупомянутую DLL в своих установочных каталогах, это будет работать, если я просто упакую эту DLL с моим исполняемым файлом?

Спасибо за любые предложения по этому вопросу заранее!

PS: после тщательного просмотра моего кода я понял, что это может быть проблемой

#pragma comment(lib, "ws2_32.lib")

Но я не вижу статической версии этой библиотеки: U Есть ли обходной путь к этому. Мне нужна эта библиотека для вызова запуска WSA

WSAStartup(MAKEWORD(2,2), &Winsock);

2

Решение

вам не нужны все файлы, как правило, только 1 или 2
как mfcXXX и msvcrxxx

проверьте свои зависимости, используя http://dependencywalker.com/ и добавить их в свой дистрибутив

4

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]