Visual Studio 2015本机单元测试无法找到第三方.DLL

时间:2016-05-04 23:45:46

标签: visual-studio sqlite unit-testing dll visual-studio-2015

我正在使用Visual Studio 2015.我创建了一个.dll,并希望编写单元测试。我使用

中的本机单元测试项目创建了一个新项目

文件|新的|项目...

Visual C ++ |测试|本地单元测试项目

所有工作直到我运行它。该代码需要使用SQLite .dll(sqlite3.dll)。当我运行测试时,我得到错误对话框:

程序无法启动,因为您的计算机缺少sqlite3.dll。尝试重新安装该程序以解决此问题。

我有.dll所以我怀疑这条消息说它是"缺少"真的意味着无法找到"。

我尝试了很多方法来解决这个问题,包括编辑以下属性页值:

配置属性:

调试|环境 VC ++目录|可执行目录

我项目的这些更改没有任何区别。有谁知道如何让VS2015测试找到第三方.dll?

THX。

更新

尝试设置配置属性|调试|环境:

PATH =%PATH%; $(SolutionDir)源码; $(LocalDebuggerEnvironment)

然后认为我可能需要重新启动Visual Studio环境才能更新PATH。没有帮助。看来如果我让Visual Studio静置一段时间,我会收到以下消息:

StandardCollector.Service.exe [6324]中发生了未处理的win32异常。

我不知道异常是否相关。如果重要的话,我正在使用VS2015更新#2。

更新

我从崩溃中得到了一个堆栈转储......

  

ntdll.dll!string&#34;启用堆调试选项\ n&#34;()未知       DiagnosticsHub.StandardCollector.Runtime.dll!StandardCollectorService :: ~StandardCollectorService(void)未知       DiagnosticsHub.StandardCollector.Runtime.dll!ATL :: CComObjectCached :: vector deleting destructor'(unsigned int) Unknown DiagnosticsHub.StandardCollector.Runtime.dll!ATL::CComObjectCached<class StandardCollectorService>::Release(void) Unknown DiagnosticsHub.StandardCollector.Runtime.dll!ATL::CComObjectCached<class ATL::CComClassFactorySingleton<class StandardCollectorService> >::向量删除析构函数&#39;(unsigned int)未知       DiagnosticsHub.StandardCollector.Runtime.dll!ATL :: CComObjectCached&gt; :: Release(void)Unknown       DiagnosticsHub.StandardCollector.Runtime.dll!ATL :: CAtlComModule :: Term(void)Unknown       DiagnosticsHub.StandardCollector.Runtime.dll!_guard_dispatch_icall_nop()未知       ucrtbase.dll!(void)()未知       ucrtbase.dll!__ crt_seh_guarded_call :: operator(),class&amp;,class&gt;(class&amp;&amp;,class&amp;,class&amp;&amp;)Unknown       ucrtbase.dll!_execute_onexit_table()未知       DiagnosticsHub.StandardCollector.Runtime.dll!operator new(unsigned __int64,struct std :: nothrow_t const&amp;)未知       DiagnosticsHub.StandardCollector.Runtime.dll!operator new(unsigned __int64,struct std :: nothrow_t const&amp;)未知       ntdll.dll!LdrShutdownProcess()未知       ntdll.dll!RtlExitUserProcess()未知       ucrtbase.dll!exit_or_terminate_process()未知       ucrtbase.dll!common_exit()未知       StandardCollector.Service.exe!CStandardCollectorService :: OnStart(void)未知       kernel32.dll!BaseThreadInitThunk()未知       ntdll.dll!RtlUserThreadStart()未知

0 个答案:

没有答案