MSVCP120d.dll em falta
Msvcp120d.dll depurar a versão do tempo de execução em C++. Sem redistribuição permitir.
Http://msdn.microsoft.com/en-us/library/windows/hardware/dn448963(v=vs. 85).aspx
5 answers
- vc8 = Visual Studio 2005
- vc9 = Visual Studio 2008
- vc10 = Visual Studio 2010
- vc11 = Visual Studio 2012
- vc12 = Visual Studio 2013
- vc14 = Visual Studio 2015
Os dlls Microsoft C++ usam um código de 2 ou 3 dígitos também baseado na versão do compilador e não na versão do Visual Studio.
- MSVCP80.DLL é do Visual Studio 2005
- MSVCP90.DLL é do Visual Studio 2008
- MSVCP100.DLL é do Visual Studio 2010
- MSVCP110.DLL é do Visual Studio 2012
- MSVCP120.DLL é do Visual Studio 2013
- MSVCP140.DLL é do Visual Studio 2015
Se MSVCP120.Falta o DLL, o que significa que não instalou pacotes Redistributáveis visuais em C++ para o Visual Studio 2013 (x86 e x64). Instale isso, reinicie e você deverá encontrar este ficheiro em c:\Windows\System32 .
Agora se MSVCP120D.DLL está em falta, isto significa que a aplicação que você é tentar executar é construído no modo de depuração. Como o OP mencionou, a versão de depuração do tempo de execução não é distribuível.
Então, o que fazemos?Bem, existe uma opção que eu conheço: vá à configuração de depuração do seu projecto > C/C++ > geração de código > biblioteca de execução e seleccione a depuração multi-thread (/MTd). Isto irá estabelecer uma ligação estática MSVCP120D.dll no teu executável.
Também há uma correção rápida se você só quiser obter algo rapidamente: Copie o MSVCP120D.DLL de sys32 (o meu é C:\Windows\System32) pasta. Pode também necessitar de MSVCR120D.DLL.
Adenda à correção rápida: para reduzir a adivinhação, pode usar dependency walker . Abra sua aplicação com o andarilho de dependência, e você verá que arquivos dll são necessários.
Por exemplo, a minha recente aplicação foi construída no Visual Studio 2015 (Windows 10 64-bit machine) e estou a direccioná-la para uma máquina Windows XP de 32-bit. Usando o andador de dependências, a minha aplicação (ver screenshot) necessita dos seguintes ficheiros:- opencv_*.dll
- msvcp140d.dll
- kernel32.dll
- vcruntime140d.dll
- à base de dados. = = ligações externas = = dll
Além dos arquivos opencv * que eu construí, eu também precisaria copiar os arquivos do sistema de C:\Windows\SysWow64 (System32 para 32 bits).
De nada. :-)Tenho o mesmo problema contigo quando implementei o OpenCV 2.4.11 no VS 2015. Tentei resolver este problema com três métodos, um a um, mas não funcionaram.:
- telecarregamento MSVCP120.DLL online e adiciona - o à localização do windows e à localização do ficheiro do bin OpenCV
- Instalar Pacotes Redistribuíveis visuais C++ para o Visual Studio 2013, tanto x86 como x86
- ajustar o modo de depuração. Ir para a configuração > C/C++ > geração de código > biblioteca de tempo de execução e seleccionar a depuração multi-threaded (/DMT)
Finalmente resolvi este problema ao reinstalar o VS2015 com a seleção de todas as opções que podem ser instaladas , é preciso muito espaço, mas realmente funciona.
Eu baixei msvcr120d.dll
e msvcp120d.dll
para uma versão de 32 bits e depois, coloquei-os na pasta Debug
do meu projecto. Funcionou bem. (O meu computador é uma versão de 64 bits)
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\redist\Debug_NonRedist\x64\Microsoft.VC120.DebugCRT