我C:\Windows\assembly
在尝试删除病毒时意外删除了 Windows 8.1 安装程序中的文件夹。除了我使用的名为Gmail 通知程序。当我尝试运行它时,出现以下错误:
------------------------------
Gmail Notifier Pro
------------------------------
System.InvalidOperationException: Unable to generate a temporary class (result=1).
error CS0006: Metadata file 'C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll' could not be found
error CS0006: Metadata file 'C:\Windows\assembly\GAC_MSIL\System.Drawing\2.0.0.0__b03f5f7f11d50a3a\System.Drawing.dll' could not be found
error CS0006: Metadata file 'C:\Windows\assembly\GAC_MSIL\System.Xml\2.0.0.0__b77a5c561934e089\System.Xml.dll' could not be found
at System.Xml.Serialization.Compiler.Compile(Assembly parent, String ns, XmlSerializerCompilerParameters xmlParameters, Evidence evidence)
at System.Xml.Serialization.TempAssembly.GenerateAssembly(XmlMapping[] xmlMappings, Type[] types, String defaultNamespace, Evidence evidence, XmlSerializerCompilerParameters parameters, Assembly assembly, Hashtable assemblies)
at System.Xml.Serialization.TempAssembly..ctor(XmlMapping[] xmlMappings, Type[] types, String defaultNamespace, String location, Evidence evidence)
at System.Xml.Serialization.XmlSerializer.GenerateTempAssembly(XmlMapping xmlMapping, Type type, String defaultNamespace)
at System.Xml.Serialization.XmlSerializer..ctor(Type type, String defaultNamespace)
at System.Xml.Serialization.XmlSerializer..ctor(Type type)
at GMNcommon.XmlHelper.DeserializeFromFile(Type type, String fullFilename)
at GmailNotifierPro.GNconfig.InitConfig()
at #=q$YdU$AduRda_0zhCK7yQwtksdhi3_Q0_59l8ERR4j7Y=.#=q3wCGQXNfC$D9ZtMMiULm6Q==(Boolean #=qShgfTCOCLMcWck9_Oe$AGw==)
我请一位朋友将此文件夹的副本发送给我,但我发现他还缺少以下子文件夹:
C:\Windows\assembly\GAC_MSIL\System.Windows.Forms
C:\Windows\assembly\GAC_MSIL\System.Drawing
C:\Windows\assembly\GAC_MSIL\System.Xml
我也尝试安装一些 .NET Framework 包,但没有成功!有人能告诉我如何找到以下文件和其他丢失的文件吗?
答案1
考虑到 Gmail 通知程序需要 .Net 3.5,并且它包含在 Windows 8.1 中,您需要采用不同的方法。Microsoft 提供了一个.Net 修复工具它应该修复你的程序集目录。
GAC_MSIL 目录包含 JIT(即时)编译库。您可能没有设置创建文件的正确权限。您可以尝试以管理员身份运行程序,看看如果修复工具失败,这是否会创建您需要的文件。
答案2
使用系统还原将系统恢复到早期状态解决了该问题,并修复了 Gmail 通知程序的问题。