2012-04-26 75 views
4

.NET EXE应用程序在启动时崩溃。erxkab1r2c2ibqtnnxtpzrumqv3gqlpl是什么程序集?

的事件被记录到事件日志:

的EventType clr20r3,P1 erxkab1r2c2ibqtnnxtpzrumqv3gqlpl,P2 1.0.2.0,P3 4f4b95e0,P4 mscorlib程序,P5 2.0.0.0,P6 4a7ce2b8,P7 F8B,P8 80, P9 system.io.filenotfoundexception,P10 NIL。

破译参数(StackoverflowMSDN)产生:

  • 埃克文件名erxkab1r2c2ibqtnnxtpzrumqv3gqlpl
  • 埃克版本1.0.2.0
  • EXE文件时间戳4f4b95e0
  • 大会名称mscorlib
  • 断裂作用组件版本2.0.0.0
  • 断裂作用组件时间戳4a7ce2b8
  • 断裂作用组装方法定义f8b
  • 断裂作用方法偏移80
  • 异常类型system.io.filenotfoundexception
  • ???NIL

现在我只需要弄清楚大会erxkab1r2c2ibqtnnxtpzrumqv3gqlpl是什么。

我以为这是一个众所周知的组装公共令牌 - 除了我不知道它是什么。


我试图运行下面的

C:\WINNT>dir *erxkab* /s 
Volume in drive C has no label. 
Volume Serial Number is E0E5-1C1A 
File Not Found 

希望是在WinSxS文件夹作为并排侧公共令牌文件名的地方。

注意:请记住这是一个客户端应用程序(即.exe),而不是一个ASP.net网站。

+4

这可能是一个临时生成的一个,虽然我已经预料到已根据临时或ASP.NET临时生成的文件在Windows目录中。尝试使用您正在运行代码/应用程序池的用户的临时文件。 – Rup 2012-04-26 14:04:37

+1

也许暂时或其他临时组件有这样奇怪的名字。 – CodesInChaos 2012-04-26 14:04:47

+1

我已经看到这些名称与XML序列化。正则表达式也编译成一个奇怪的名字IIRC。 – leppie 2012-04-26 14:06:45

回答

0

它是托管过程本身。这意味着它是(很可能是*)您正在启动的可执行文件。你真的开始了哪个应用程序?

*它也可能是一个可执行文件,它在主应用程序的新应用程序域中启动。

+0

我开始使用'devenv.exe'(Visual Studio 2010) – 2012-05-24 14:51:20

0

一般文件未找到clr20r3只是意味着它试图加载参考无法找到。

对我来说,这与完全无关,名为可执行文件。相反,它被证明是一个没有被复制到目标环境的引用项目中的缺失库。我通过以下方式解决了这个问题。

  • 验证目标机器上的所有版本相同的.NET作为我的构建机器
  • 将所有非系统*库CopyLocal:真。
  • 检查所有的相关项目,以及图书馆。

你可以有更多的麻烦,如果它是一个第三方库导致此。如果是这种情况,我建议逐个删除引用,直到找到违规的库。不幸的是,如果没有检测到依赖项,则不会告诉您直接丢失的文件。但是,如果您确定负责的库,那么您可能能够确定依赖关系。