Visual Studio 2015에서 Release x64 플랫폼을 대상으로 HelloWorld.exe
에 다음 C++ 코드를 작성했다고 가정 해 봅니다.VS 2015 C++ 재배포 가능 파일이 단일 DLL에 없습니까?
#include <iostream>
int main()
{
std::cout << "Hello world!!" << std::endl;
return 0;
}
몇 년 전, 나는 단순히 HellowWorld.exe
과 함께 (C 또는 msvcr###.dll
) msvcp###.dll
을 복사하여 실행 가능한 프로그램을 가질 수 있습니다.
방금 VS2015를 설치했는데 이제는 msvcp140.dll
을 가져올 수없는 것 같습니다. 내 System32
폴더에는 70 ~ ish api-ms-win-.....dll
개의 파일이 있어야하는 것으로 보입니다.
가장 좋은 정책은 재배포 가능 패키지를 설치하는 것입니다.하지만 불가능한 경우 .DLL을 복사하는 것이 가능한 대안입니다. 아직도 그렇습니까? 나는 쉽게 뭔가를 놓치고 있습니까?
요약 : 나는 단지 msvcp140.dll
을 복사 할 수 있다고 생각했지만 제대로 작동하지는 않습니다. 내가 잘못?
참고 : list of things you are allowed to redistribute에 api-ms-....dll
개의 파일이 표시되지 않습니다. 아니면 이것이 2015 런타임의 일부이며 이해할 수 있습니까?
아니요. 버킷은 DLL, 디버그 DLL, 멀티 스레드 DLL 및 모든 smurfing 종류의 DLL로 가득 차 있습니다. 하나의 빠른 파일 교체와 PC가 Borg Collective에 환영 받고 있기 때문에 이러한 DLL을 보호하고 벽으로 막아 놓기를 원합니다. – user4581301
틀린 것은 아닙니다. 정적 빌드를 수행하고 파일 크기에 대해 불평하는 사람에게 새 컴퓨터를 가져 오라고 말하십시오. –