最新消息:20210917 已从crifan.com换到crifan.org

【已解决】错误 命名空间“System”中不存在类型或命名空间名称“Windows”。是否缺少程序集引用?

工作和技术 crifan 10999浏览 0评论

【背景】

用Visual Studio 2010写C#类库(dll文件)的时候,如下代码:

using System.Windows.Forms;

显示错误:

错误 命名空间“System”中不存在类型或命名空间名称“Windows”。是否缺少程序集引用?

【解决过程】

1.网上搜了一通,看到命名空间“System”中不存在类型或命名空间名称“Windows”说是由于当前创建的项目类型,不是windows form类型(帖子中的是consle,我这里的是dll类库),所以此处无法添加System.Windows.Forms。然后看起来也挺有道理的,所以就放弃了,以为这里真的无法添加。

同时该贴有人提到了System.Windows.Forms.dll,即System.Windows.Forms的namespace对应的是dll文件是System.Windows.Forms.dll。

后来在这里:Control Class中也看到了System.Windows.Forms.dll。

其中也提到了“winform中默认就引用System.Windows.Forms.dll的System.Windows.Forms.dll”,但是我这里的是C#类库,所以默认没有引用,也是对的。

2.后来尝试去添加对应的System.Windows.Forms引用。

项目中有引用,右击->添加引用,然后在COM项中,找到一个System.Windows.Forms.tlb,想要添加,结果出错,说是其是从.NET集中导出的,无法将其作为引用添加。

3.然后才发现,原来与COM的tab项对应的,还有一个.NET项,所以,去.NET项中,找到了System.Windows.Forms,然后确定,添加完成,就解决了此问题。

【总结】

此错误原因是缺少了对应的dll库System.Windows.Forms.dll,即需要添加对System.Windows.Forms.dll库的引用。

方法是:

右击项目名下面的那个“引用” -> 添加引用 –> .NET –> 在“组建名称”中找到”System.Windows.Forms”并添加。

即可解决此问题。

转载请注明:在路上 » 【已解决】错误 命名空间“System”中不存在类型或命名空间名称“Windows”。是否缺少程序集引用?

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

网友最新评论 (3)

  1. 好感动啊啊啊啊终于好了啊啊啊啊
    116年前 (2018-05-21)回复
  2. 謝謝你~ ya 順順的過了,爽爽的用了
    打磚員8年前 (2016-09-02)回复
  3. 非常有用啊
    周杰伦8年前 (2016-05-24)回复
100 queries in 0.210 seconds, using 23.40MB memory