Visual C++ 7.0.NET 1.0Visual Studio .NET 2003.NET 1.1Windows 2000Windows XP中级开发Visual StudioWindowsC++.NETVisual BasicC#
用于转换 VS.NET 2003 项目文件的实用工具






4.92/5 (118投票s)
2003 年 1 月 3 日
2分钟阅读

891734

23127
此实用工具可以将 VS.NET 7.0 的项目和解决方案转换为 VS.NET 7.1,反之亦然。
引言
我决定创建一个实用工具,将来自新的 Visual Studio .NET 2003(代号“Everett”)的项目转换为 Visual Studio .NET 2002。这是因为在我的经验中,我同时使用这两者,发现手动转换项目很困难,而且经常会引入问题,所以我制作了一个自动化工具来完成这项工作。因此,所有遇到相同困难的人,这个工具就是为你们准备的。
我包含了完整的源代码,以便您了解我是如何操作的,并且可以自定义该工具以满足您自己的需求。截至 2004 年 3 月 12 日,我已经使用一些小的更改更新了原始 VSConvert。版本 2.0 检测只读文件,并警告用户在转换托管 C++ 项目时会丢失 .NET 引用。
我的操作方法
所以,您可能会问,“您是如何知道如何转换项目文件的?” 以下是项目从 VS 7.1 转换为 VS 7.0 时发生更改的逐步描述。
- 在 SLN 文件中,必须将 8.0 替换为 7.0。
- 在 vcproj 文件(仅限 vcproj)中,必须将 7.10 部分替换为 7.0。注意:MC++ 项目的 <References> 部分将与 VS.NET 2002 不兼容,因为它使用了 'stdafx.h' 中的 #using 语句。
- 在 VB.NET 或 C# 项目文件中,将 7.10.3077 替换为 7.0.9466。
- 同样在 VB.NET 和 C# 项目中,应将模式版本 2.0 替换为 1.0。
- 在 RESX 文件中,声明的类型为 1.0.5000,必须替换为 1.0.3300。
- 同样,在 RESX 文件(二进制流)中,描述流版本的 base-64 编码部分也必须从 LjAuNTAw 更改为 LjAuMzMw(基本上是 1.0.5000 和 1.0.3300 的 base-64 编码版本)。
要从 VS.NET 2002 转换为 VS.NET 2003,只需反向应用此过程即可。