安装Visual Studio 2017 RC后,我有些代码无法编译。经过筛选,问题出在WMP和.NET Framework 2上(Framework 4下可以工作)。最基本的测试设置为两个项目:
第一个项目:
- Windows窗体应用 - .NET Framework 2.0 - 命名空间WMPClient - 引用了wmp.dll(尝试过system32和syswow64) - 在Form1.cs中添加了Windows Media Player 第二个项目:
- 类库(.NET Framework) - .NET Framework 2.0 - 命名空间WMPLib - 引用了WMPClient
这两个项目都可以构建。
但是,在Class1.cs(第二个项目)中添加
13个错误行,像
1个错误行,如下所示:
第一个项目:
- Windows窗体应用 - .NET Framework 2.0 - 命名空间WMPClient - 引用了wmp.dll(尝试过system32和syswow64) - 在Form1.cs中添加了Windows Media Player 第二个项目:
- 类库(.NET Framework) - .NET Framework 2.0 - 命名空间WMPLib - 引用了WMPClient
这两个项目都可以构建。
但是,在Class1.cs(第二个项目)中添加
using WMPClient;
之后,构建失败:13个错误行,像
System.Windows.Forms, mscorlib, System
警告 MSB3258: 主引用"C:\WMPClient\bin\Debug\WMPClient.exe"无法解析,因为它对.NET Framework程序集"System.Windows.Forms,Version=4.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089"具有较高版本"4.0.0.0" ,而当前目标框架中的版本为"2.0.0.0"。1个错误行,如下所示:
error CS0246: 找不到类型或命名空间名称"WMPClient"(是否缺少using指令或程序集引用?)
相同的代码在安装VS2017之前可以在VS2013下工作。