欢迎来到Introzo百科
Introzo百科
当前位置:网站首页 > 技术 > 有了vs2010怎么安装vs2017_Vs2010项目转Vs2017问题总结

有了vs2010怎么安装vs2017_Vs2010项目转Vs2017问题总结

日期:2023-09-19 09:11

1.手动卸载2010:

参考链接:https://www.introzo.com/heng_2679/article/details/39024285

?

??环境:Win7?? 卸载工具:IobitUninstaller(绿色版)//个人推荐,比较强大好用 在软件上按照以下顺序: 1.Microsoft .NET Framework 4 框架??? //建议保留,很多东西会用到

1.1.Microsoft .NET Framework 4 Multi-Targeting Pack 1.2.Microsoft .NET Framework 4 Extended???????? //含语言包,先卸载语言包 1.3.Microsoft .NET Framework 4 Client Profile?? //含语言包,先卸载语言包

2.Microsoft www.introzo.com MVC 开发组件包

2.1.Microsoft www.introzo.com MVC 2???????????????????? //含语言包,先卸载语言包 2.2.Microsoft www.introzo.com MVC 2 - Visual Studio 2010 Tools? //含语言包,先卸载语言包

3.Microsoft Help Viewer 1.0???????????????????? //含语言包,先卸载语言包

4.Microsoft Silverlight 开发组件包

4.1.Microsoft Silverlight 4.2.Microsoft Silverlight 3 SDK

5.Microsoft SQL Server 2008 R2 开发组件包

5.1.Microsoft SQL Server 2008 R2 Data-Tier Application Framework 5.2.Microsoft SQL Server 2008 R2 Data-Tier Application Project 5.3.Microsoft SQL Server 2008 R2 Management Objects 5.4.Microsoft SQL Server 2008 R2 Management Objects (x64) 5.5.Microsoft SQL Server 2008 R2 Transact-SQL Language Service 5.6.Microsoft SQL Server Compact 3.5 SP2 ENU 5.7.Microsoft SQL Server Compact 3.5 SP2 x64 ENU 5.8.Microsoft SQL Server Database Publishing Wizard 1.4 5.9.Microsoft SQL Server CLR Types 5.10.Microsoft SQL Server CLR Types (x64)

6.Microsoft Sync Fraemwork 框架

6.1.Microsoft Sync Framework SDK v1.0 SP1 6.2.Microsoft Sync Services for www.introzo.com v2.0 SP1(x64)??? //卸载完12步后卸载 6.3.Microsoft Sync Framework Services v1.0 SP1(x64)????? //卸载完12步后卸载 6.4.Microsoft Sync Framework Runtime v1.0 SP1(x64)?????? //卸载完12步后卸载

7.Microsoft Team Foundation Server 2010 Object Model - ENU

8.Microsoft Visual C++ 开发组件包????? //含更新先卸载更新

8.1.Microsoft Visual C++ 2008 Redistributable - x86 9.0.30411 8.2.Microsoft Visual C++ 2008 Redistributable - x86 9.0.30729.4974 8.3.Microsoft Visual C++ 2010 x64 Designtime - 10.0.30319 8.4.Microsoft Visual C++ 2010 x64 Runtime - 10.0.30319 8.5.Microsoft Visual C++ 2010 x86 Runtime - 10.0.30319

9.Microsoft Visual F# 2.0 Runtime

10.Microsoft Visual Studio www.introzo.com Entity Framework Tools

11.Visual Studio 开发工具包

11.1.Microsoft Visual Studio IntelliTrace Collection(x64) 11.2.Microsoft Visual Studio Tools for Office Runtime(x64) 11.3.Microsoft Visual Studio Macro Tools 11.4.Visual Studio 2010 Tools for SQL Server Compact 3.5 SP2 ENU 11.5.Visual Studio 2010 Prerequisites - ENU 11.6.Web Deployment Tool

12.Microsoft Visual Studio 2010 Ultimate - ENU然后在C盘/program files/关于vs的都给删了,最后用360清理注册表.

? ? ? VS卸载完全后,为了保证安装不再出现问题,重启机子,卸载SQL,在控制面板中,先卸载SQL sever,剩下其他的关于SQL的,都卸载了,同样在C盘/program files/关于vs的都给删了,最后用360清理注册表

? ? ?再次重启机子后,在控制面板中确认没有vs没有SQL,说明卸载成功了。

?

2.重装2017:

?

① 下载2017:

https://www.introzo.com/zh-hans/?rr=https%3A%2F%www.introzo.com%2Flink%3Furl%3DbJwk5ACk-i5Ey3gEjavx_5K1e0HOgCaey2PncUIcTO1NeWyRyXnM79mbjT7zPLP3%26wd%3D%26eqid%3D9f37597c00054563000000065ac340c3

?

免费的Community版是可以的,不要预览版,正式版即可。打开Visual Studio Installer,需要安装:? - 使用C++桌面开发? - VC++ 2017版本 v14.11工具箱? - Anaconda也可以勾选,这样你就可以跳过安装Anaconda这一步

安装即可。

?

遇到的问题:(前面我把framework也卸掉了)

?

重新下载安装.Net Framework:

https://www.introzo.com/zh-hans/vs/support/visual-studio-requires-net-framework-4-6-higher/

继续安装,成功:

?

前言:

由于最新项目中要应用语音识别的功能,考虑到调用百度语音的接口。但是百度语音接口要求使用C++11的规范,而我们当前项目是在Vs2010的基础上开发的。众所周知,Vs2010对C++11的支持是很有限的,所以就花费了点时间把项目移植到Vs2017上。期间也遇到了不少问题,记录下,可能不太详尽,勿怪。

1、Vs2017打开Vs2010的工程,会提示工具集升级,确定即可。大部分程序都是可以直接移植的,如有问题请继续。

2、重写虚函数限制性规范比基类少

虚函数已被重写,但在/Za,则重写函数具有限制性较少异常规范。

// C2694.cpp

// compile with: /Za /c

class MyBase {

public:

virtual void f(void) throw(int) {

}

};

class Derived : public MyBase {

public:

void f(void) throw(...) {} // C2694

void f2(void) throw(int) {} // OK

}; 3、msvcrt.lib与其他库的使用冲突

项目属性--链接器--输入:/nodefaultlib:msvcrt.lib

其他类似的错误都可以这样添加命令

4、error C2220:警告被视为错误 - 没有生成 “object”文件

项目属性--C++--常规:警告视为错误改为否

5、error C1189:Macro definition of snprintf conflicts with Standard Library function declaration

#define snprintf _snprintf

替换为

#if defined(_MSC_VER) && _MSC_VER<1900

# define snprintf _snprintf

#endif6、imp_strncpy无法解析的外部符号

此类错误都是找不到函数入口导致的,确认是否添加对应lib文件或是dll即可

7、项目中如果有内部调用的lib文件,需要在Vs2017下重新编译生成,然后再调用。另外需要注意,对于Vs2010转Vs2017,lib文件也需要从Vs2010升级到Vs2017后编译,而不能是Vs2012升级到Vs2017后编译,否则会出现链接错误。

暂时都这样~

也就是说,如果汝已经搭建好了VS2010编译环境,可以先省事,接着编译JDK12。之后再考虑VS2017。

关灯