我有两个Visual C ++应用程序。这两部分都是DVR系统。他们共享一个live555库。 On是通用RTSP服务器。另一个使用RTSP访问摄像机并下载视频剪辑。在Visual Studio 2008中编译和部署都很好。下载剪辑的文件失败,并且缺少msvcr120d.dll错误。它们不是在调试中编译的。两者都有相同的编译/链接选项:
这有效:
/ GS / GL / analyze- / W3 / Gy- / Zc:wchar_t / I“。\”/ I“SharedLibraries \ mediaServer”/ I“SharedLibraries \ mediaServer \ include”/ I“SharedLibraries \ LiveMedia”/ I “SharedLibraries \ LiveMedia \ include”/ I“SharedLibraries \ Groupsock”/ I“SharedLibraries \ Groupsock \ include”/ I“SharedLibraries \ BasicUsageEnvironment”/ I“SharedLibraries \ BasicUsageEnvironment \ include”/ I“SharedLibraries \ UsageEnvironment”/ I“SharedLibraries \ UsageEnvironment \ include“/ I”SharedLibraries“/ Zi / Gm / Od /Fd".\obj\Release\vc120.pdb”/ fp:precise / D“WIN32”/ D“_CONSOLE”/ D“_UNICODE”/ D “UNICODE”/ errorReport:prompt / WX- / Zc:forScope / RTC1 / Gd / Oy- / MD / Fa“。\ obj \ Release \”/ EHsc / nologo / Fo“。\ obj \ Release \”/ Fp“ 。\ obj \ Release \ VGRTSPServer.pch“
/ OUT:“M:\ VG CODE \ Vg \ V1 \ D1 \ Dvr \ Output \ Tracker Monitor \ VGRTSPServer.exe”/ MANIFEST / LTCG / NXCOMPAT / PDB:“M:\ VG CODE \ Vg \ V1 \ D1 \ Dvr \ Output \ Tracker Monitor \ VGRTSPServer.pdb“/ DYNAMICBASE”wsock32.lib“”kernel32.lib“”user32.lib“”gdi32.lib“”winspool.lib“”comdlg32.lib“”advapi32.lib“ “shell32.lib”“ole32.lib”“oleaut32.lib”“uuid.lib”“odbc32.lib”“odbccp32.lib”/ MACHINE:X86 / OPT:REF / SAFESEH / INCREMENTAL / PGD:“M:\ VG CODE \ Vg \ V1 \ D1 \ Dvr \ Output \ Tracker Monitor \ VGRTSPServer.pgd“/ SUBSYSTEM:CONSOLE / MANIFESTUAC:”level ='asInvoker'uiAccess ='false'“/ ManifestFile:”。\ objj \ Release \ _VGRTSPServer。 exe.intermediate.manifest“/ OPT:ICF / ERRORREPORT:PROMPT / NOLOGO / TLBID:1
不起作用:
/ GS / TP / GL / analyze- / W3 / Gy / Zc:wchar_t / I“。\”/ I“SharedLibraries \ mediaServer”/ I“SharedLibraries \ mediaServer \ include”/ I“SharedLibraries \ LiveMedia”/我“SharedLibraries \ LiveMedia \ include”/ I“SharedLibraries \ Groupsock”/ I“SharedLibraries \ Groupsock \ include”/ I“SharedLibraries \ BasicUsageEnvironment”/ I“SharedLibraries \ BasicUsageEnvironment \ include”/ I“SharedLibraries \ UsageEnvironment”/ I“ SharedLibraries \ UsageEnvironment \ include“/ I”SharedLibraries“/ Zi / Gm- / O2 /Fd"Release\vc120.pdb”/ fp:precise / D“WIN32”/ D“_CONSOLE”/ fp:except- / errorReport:prompt / GF- / WX- / Zc:forScope / GR / Gd / Oy- / Oi / MD / openmp- / Fa“Release \”/ EHsc / nologo / Fo“Release \”
/ OUT:“M:\ VG CODE \ Vg \ V1 \ D1 \ Dvr \ Output \ Tracker Monitor \ VGVideoBufferer.exe”/ MANIFEST / LTCG / NXCOMPAT / PDB:“M:\ VG CODE \ Vg \ V1 \ D1 \ Dvr \ Output \ Tracker Monitor \ VGVideoBufferer.pdb“/ DYNAMICBASE”wsock32.lib“/ MACHINE:X86 / OPT:REF / SAFESEH / INCREMENTAL:NO / PGD:”M:\ VG CODE \ Vg \ V1 \ D1 \ Dvr \ Output \ Tracker Monitor \ VGVideoBufferer.pgd“/ SUBSYSTEM:CONSOLE / MANIFESTUAC:”level ='asInvoker'uiAccess ='false'“/ ManifestFile:"Release\VGVideoBufferer.exe.intermediate.manifest”/ OPT:ICF / ERRORREPORT :PROMPT / CLRUNMANAGEDCODECHECK:NO / NOLOGO / ASSEMBLYDEBUG:DISABLE / TLBID:1
我能看到的唯一区别是第一个有更多/ DYNAMICBASE库,如何在这里添加不必要的库有所不同?
使用依赖进行了重击,其中说我的应用程序可预测依赖于msvcr120d.dll。它指出所有c都涉及到一些我不理解的事情:
TYPE_INFO ::〜TYPE_INFO(无效) void * operator new(unsigned int) void operator delete(void *) void terminate(void) _CRT_RTC_INITW _CrtDbgReportW _CrtSetCheckCount _CxxThrowException _XcptFilter __CxxFrameHandler3 __crtSetUnhandledExceptionFilter __crtTerminateProcess __crtUnhandledException __dllonexit __getmainargs __initenv __iob_func __set_app_type __setusermatherr _amsg_exit _calloc_dbg _cexit
(无法发布图片。没有足够的代表) 我已经在这里休息了三天。