C# VS2010-PresentationFramework程序集。为什么?

C# VS2010-PresentationFramework程序集。为什么?,c#,.net,winforms,visual-studio-2010,C#,.net,Winforms,Visual Studio 2010,=========更新(里德·科佩)========== 我把父母的例外情况留给了所有其他人。所有其他文件都在其他文件中。重建后,错误仍保留在同一文件上。下面是小的源代码。我看不到任何需要新组件的内容: using System; namespace PROJECT.AuxLibraryProject { public class SharedExceptionParent: Exception { public str

=========更新(里德·科佩)==========

我把父母的例外情况留给了所有其他人。所有其他文件都在其他文件中。重建后,错误仍保留在同一文件上。下面是小的源代码。我看不到任何需要新组件的内容:

using System;

    namespace PROJECT.AuxLibraryProject
    {
        public class SharedExceptionParent: Exception
        {
             public string ErrorMessage
             {
                 get
                 {
                     return base.Messsage.ToString();
                 }
             }
             public SharedExceptionParent() { }
             public SharedExceptionParent(string errorMessage) : base(errorMessage) { }
             public SharedExceptionParent(string errorMessage, Exception innerEx) : base(errorMessage, innerEx) { }
        }
    }
========================================

你好,

对于c#和VS2010,我真的是个新手-\

我有一个“纯”Winforms应用程序。至少我这么认为

但是,在构建辅助DLL时,突然(随着对源代码的最后更改),我出现了以下错误:

错误7类型错误 “System.Windows.Interop.HwndHost”是 在未定义的程序集中定义 参考。您必须添加一个引用 要组装“表示框架”, 版本=3.0.0.0,区域性=中性, PublicKeyToken=31bf3856ad364e35'。D:\MyprojectPath\SharedExceptions.cs AuxLibraryProject

我不想将PresentationFramework.dll添加到项目中,即使我尝试添加它,也需要很多其他程序集:-(

我想知道这个汇编需求的罪魁祸首在哪里。我很乐意把责任归咎于我的源代码,但我找不到它

SharedExceptions.cs是已更改的文件之一,但当我(手动)删除所有更改时,错误仍然存在

同样的程序集在Windows XP Visual Studio 2010系统上可以很好地编译。但在Windows Vista上不行。:-O

有线索吗


谢谢。

您正在引用
HwndHost
,或者您添加的内容正在引用
HwndHost
。这在PresentationFramework.dll中定义

你需要追踪罪犯。它在你的
SharedExceptions.cs
文件中。显然,至少有一个更改没有在该文件中完全撤消


(顺便说一句,这是每个类使用一个文件的一个巨大优势……我猜您在该文件中定义了许多异常类型,这就是为什么您不会立即看到这一点。)

您正在引用
HwndHost
,或者您添加的内容正在引用
HwndHost
。这在PresentationFramework.dll中定义

你需要追踪罪犯。它在你的
SharedExceptions.cs
文件中。显然,至少有一个更改没有在该文件中完全撤消


(顺便说一句,这是每个类使用一个文件的一个巨大优势…我猜您在该文件中定义了许多异常类型,这就是为什么您不会立即看到它。)

我找到了它:

两个程序集的namespace关键字顶部的这一行是罪魁祸首:

[assembly: CLSCompliant(true)]
我已经在两个程序集和所有版本上删除了这一行,现在一切正常


你好。

我找到了:

两个程序集的namespace关键字顶部的这一行是罪魁祸首:

[assembly: CLSCompliant(true)]
我已经在两个程序集和所有版本上删除了这一行,现在一切正常


您好。

您是否添加了对该项目的任何其他引用?我必须记住这在Windows XP上编译得很好。使用相同的subversion树更新。它只在Windows Vista上失败。我正在尝试检查同事在另一个Windows XP工作站上的另一个更新。您是否添加了对该项目的任何其他引用?我必须记住此cWindows XP上的所有文件都可以。使用相同的subversion树更新。它仅在Windows Vista上失败。我正在尝试检查同事在另一个Windows XP工作站上的其他更新。是的,所有异常都在该.cs文件中:-(但是里面只有五个例外,所以我可以在几个文件中分开,甚至只找到罪犯。我会这样做并返回结果,这样也许我可以更具体地找到它。是的,所有例外都在该.cs文件中。)-(但是里面只有五个例外,所以我可以在几个文件中分开,甚至只找到罪犯。我会这样做,然后返回结果,这样也许我可以更具体地找到它。