0

由于某种原因,我无法启动我的 64 位应用程序。我收到一个错误:

14:17:41:587 Error: The type initializer for 'Va.MBClient.Program' threw an
 exception.

Unhandled Exception: System.TypeInitializationException: The type initializer fo
r 'Va.MBClient.Program' threw an exception. ---> System.IO.FileNotFoundExce
ption: Could not load file or assembly 'CGateCliAdapter.dll' or one of its depen
dencies. The specified module could not be found.
   at Va.MBClient.Program..cctor()
   --- End of inner exception stack trace ---
   at Va.MBClient.Program.Main(String[] args) in c:\Oleg\projects\Va.M
BClient\Va.MBClient\Program.cs:line 87

不知何故,这与我的 CLI DLL 文件有关,因为当我注释掉private static CGateCliAdapterMain cliAdapter = new CGateCliAdapterMain();引用 CLI 库的行时,我可以启动应用程序。

我确实在 Visual Studio 中看到了这一点:

Microsoft.VisualStudio.HostingProcess.Utilities.dll!Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
mscorlib.dll!System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state, bool preserveSyncCtx)
mscorlib.dll!System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state, bool preserveSyncCtx)
mscorlib.dll!System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state)
mscorlib.dll!System.Threading.ThreadHelper.ThreadStart()
[Native to Managed Transition]

我试图用它fuslogvw来捕获绑定失败,但由于某种原因它无法捕获它!所以现在我不知道如何解决这个问题。

我使用了Dependency Walker,发现缺少以下文件:

MSVCR110.DLL
GPSVC.DLL
IESHIMS.DLL
MF.DLL
MFPLAT.DLL
MFREADWRITE.DLL
WLANAPI.DLL

我尝试wlanapi.dll使用应用程序直接复制到一个文件夹,这有帮助(DLL 文件从丢失的列表中消失了),但是为什么当我安装Visual C++ Redistributable for Visual Studio 2012时 DLL 文件不可见?我已尝试重新安装并修复安装。

另外,我找不到 DLL 文件MSVCR110.DLLMSVCP110.DLL.

我不知道为什么。我曾多次尝试为 Visual Studio 2012 重新安装 Visual C++ Redistributable。


更新:

现在我又因为某种原因无法运行我的程序!一天后,Dependency Walker 再次声称缺少 DLL 文件。但是,我确实有“Visual C++ Redistributable for Visual Studio 2012”。

4

1 回答 1

0

我找到了解决方案。需要安装Visual C++ Redistributable for Visual Studio 2012 。

于 2012-11-25T13:26:57.650 回答