代码之家  ›  专栏  ›  技术社区  ›  Amit

将“Visual C++6”解决方案/项目升级为“VS2022”解决方案或项目

  •  -1
  • Amit  · 技术社区  · 1 年前

    我在Windows 11 Pro上使用VS2022,我有一个2006年的Visual Studio C++项目(包含DSW和DSP文件): https://www.codeproject.com/Articles/1796/XListCtrl-A-custom-draw-list-control-with-subitem

    经过一番阅读,VS2022似乎无法处理自动升级,而自动升级仅延伸到VS2019。 我不希望仅为此目的安装VS2019,我正试图避免创建还原点、安装VS2019然后恢复到还原点的过程 。是否有其他方法可以自动升级这些DSW/DSP文件,以便使用VS2022打开和构建代码?

    0 回复  |  直到 1 年前
        1
  •  2
  •   Amit    1 年前

    我很不情愿地创建了一个标记为X的恢复点,安装了VS2019(只是“使用C++的桌面开发”),转换了解决方案(导致所有相关项目的转换),然后恢复到X恢复点。为了清理:我删除了DSW文件,对于每个项目:DSP文件,转换日志文件。*请确保转换文件夹位于其他驱动器上,否则转换将在还原过程中删除。

    还需要采取其他步骤:

    1. 这个 .vcxproj .manifest 文件有一个 .xml 扩展(例如: XListCtrlDS.vcxproj.xml )需要手动移除以允许VS2022从解决方案加载。

    2. 在里面 Solution | Properties ,我必须创建 x64 配置我打开了 Configuration Manager... 和以下 Active solution platform: 我选择了 New... | x64 ,选择从x86平台配置复制设置(首先)。 额外费用: 在下面 Edit... 我删除了 x86 配置,因为它与我的需求无关 .

    此时,当我打开解决方案时,VS2022打开解决方案,加载所有项目,但项目标记为: (Visual Studio 2019) .

    对于每个项目:属性(当 Configuration: All Configurations Platform: All Platforms ):

    1. 设置 | General | Platform toolset Visual Studio 2022 (v143) . 额外费用: 我变了 C++ Language Standard ISO C++20 Standard .

    2. 编辑 | C/C++ | General | Additional Include Directories 我补充道: ..\XListCtrlLib 出租 stdafx.h 要找到。