【问题标题】:Error CS0008 When Running Application运行应用程序时出现错误 CS0008
【发布时间】:2012-02-23 04:35:56
【问题描述】:

我有一个应用程序在数百台客户端计算机上安装并运行良好,除了一台。此客户端在 Windows 7 上(即使它在 Windows 7 上运行完美)并且应用程序安装正常,但是当您运行它时,他收到以下错误(见下文)。一周前,该应用程序对他来说运行良好,现在才刚刚开始。我尝试过全新安装,以及重新安装 .Net 4(这是应用程序使用的)。任何人都知道可能是什么原因造成的?

无法生成临时类(结果=1)。错误 CS0008: 从文件中读取元数据时出现意外错误 'c:\Windows\Microsoft.NET\assembly\GAC_MSIL\System.Xml\v4.0_4.0.0.0_b77a5c561934e089\System.XML.dll' -- '给定的程序集名称或代码库无效'

【问题讨论】:

  • 一般是因为无法访问TEMP目录而产生的。这听起来像是一个烤面包的硬盘。当然,您无能为力。

标签: .net windows vb.net winforms .net-4.0


【解决方案1】:

很难确定,但它带有XmlSerializer 的味道。我不是 100% 支持 4.0 实现,但在过去,它会在临时位置生成 .cs 文件,编译它们,然后使用该代码执行序列化。

将代码部署到加固的 Web 服务器并发现序列化代码会失败的情况并不少见,因为 ASP.NET 有权写入任何临时目录。你能检查权限吗?

除此之外,如何手动删除 System.xml 程序集并从其中一台工作机器中替换它?您可能需要使用命令行才能到达那里。

这两种选择都不是万无一失的赌注,但值得一试。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-05-14
    • 2018-08-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-09
    • 2020-03-05
    相关资源
    最近更新 更多