在 Visual Studio 2013(C# 代码)中执行测试期间,我遇到了这样的错误:
System.TypeInitializationException:System.TypeInitializationException:“Teigha.Core.GlobalsPINVOKE”的类型初始化程序引发了异常。---> System.TypeInitializationException:“SWIGExceptionHelper”的类型初始化程序引发了异常。---> System.DllNotFoundException:无法加载 DLL 'TD_SwigCore_4.00_10.dll':找不到指定的模块。(来自 HRESULT 的异常:0x8007007E)。中止测试执行。
我的朋友在另一台计算机上使用相同的代码分支。他没有这样的问题。在构建期间,所有 dll 都被复制到 TestResults\Deploy 目录(TD_SwigCore_4.00_10.dll 也是如此)。
我用了
dependbin /DEPENDENTS TD_SwigCore_4.00_10.dll
检查此 dll 的 dll 依赖项:KERNEL32.dll、USER32.dll、ole32.dll、TD_Ge_4.00_10.dll、TD_DbRoot_4.00_10.dll、TD_Gi_4.00_10.dll、TD_Gs_4.00_10.dll、TD_SpatialIndex_4.00_10.dll、 TD_Br_4.00_10.dll、TD_Db_4.00_10.dll、TD_Root_4.00_10.dll、TD_Alloc_4.00_10.dll、MSVCP100.dll、MSVCR100.dll。我将所有这些 dll 复制到 system32 文件夹,以便加载所有 dll(https://msdn.microsoft.com/en-us/library/7d83bc18 (v=vs.120).aspx )。这没有帮助。错误依然存在。