【问题标题】:Type library 'System_Windows_Forms' was exported from a CLR assembly and cannot be re-imported as a CLR assembly类型库“System_Windows_Forms”是从 CLR 程序集导出的,不能作为 CLR 程序集重新导入
【发布时间】:2021-01-21 06:03:41
【问题描述】:

我尝试创建一个使用 Windows 窗体的 .NET 控制台应用程序,以创建和保存屏幕截图。 在创建新的控制台应用程序项目时,我尝试使用 COM 引用通过依赖项导入 System.Windows.Forms 库。

导入后,我在 Visual Studio 2019 中收到以下错误消息:

Severity Code Description Project File Line Suppression State Warning MSB3290 Failed to create the wrapper assembly for type library "{215d64d2-031c-33c7-96e3-61794cd1ee61}". Type library 'System_Windows_Forms' was exported from a CLR assembly and cannot be re-imported as a CLR assembly. screenshot_console C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\Microsoft.Common.CurrentVersion.targets 2705

依赖项窗口如下所示: VS dependencies window

我尝试重新安装 VS 和 .NET 框架,但没有解决问题。

有什么方法可以成功导入库,还是无法将 windows 窗体库导入控制台应用程序?

【问题讨论】:

  • 您使用的是 .Net Core,而不是 .Net Framework。什么.Net Core 版本? -- 在 .Net 框架控制台应用程序中添加对 System.Windows.Forms 程序集的引用..
  • 做一个控制台项目。上菜单使用:项目:添加新项目:窗口窗体。将表单代码放入表单中。然后在表单的控制台上创建和实例:Form1 form1 = new Form1();然后使用 form1.Show();
  • 有时使用 COM 组件没有意义。尝试添加对实现它的程序集的引用。

标签: c# visual-studio winforms dependencies clr


【解决方案1】:

抱歉回复晚了,正忙于其他项目。

@Jimi 是对的,我不小心创建了一个 .NET 核心项目,因此一些不存在的引用将整个项目搞砸了。

之后我能够毫无问题地添加 Windows.System.Forms 引用。

感谢您的帮助。

【讨论】:

    猜你喜欢
    • 2012-11-09
    • 1970-01-01
    • 1970-01-01
    • 2010-10-10
    • 2023-03-28
    • 2014-08-27
    • 1970-01-01
    • 2011-04-15
    • 1970-01-01
    相关资源
    最近更新 更多