IDE/VS2015和VS2017帮助文档MSDN安装和使用

news/2024/7/16 8:32:56 标签: ide, VS, MSDN, 帮助文档, 离线安装, 在线安装

文章目录

概述

本文主要介绍了VS集成开发环境中,帮助文档MSDN的安装和使用方法,包括VS2015的MSDN离线安装VS2017的MSDN在线安装MSDN的一般使用方法,如何在VS中跳转Qt帮助等,也记录了少许MSDN使用过程中的问题和处理方法。MSDN(Microsoft Developer Network)是由微软提供的开发者资源平台,为开发人员提供了广泛的技术文档、示例代码、开发工具、论坛和培训资源。尤其是对于Windows程序开发者,MSDN是至关重要的,无论是初学者还是有经验的开发人员,都可以从MSDN中获取到有价值的信息和资源。

历史201907:
本文草稿积压了好几年。起草该文时,是因为当时的项目中,使用Qt线程和套接字实现的通信功能,存在较明显的性能瓶颈,须用WinAPI接口重新实现,多年不用,十分生疏…

VS2015MSDN_6">VS2015MSDN离线安装

离线安装包下载和安装。看见过几篇用U盘系统工具来实现MSDN安装的帖子;但当前办公环境并不允许插优盘…

MSDN_8">离线MSDN的下载

早就记不清楚 VS2015 的 MSDN 离线安装包,是从哪里下载到的了,只知道个人百度网盘里有备份可用,提取码:CSDN。但我不死心,总想着能在微软的官网上找到 VS2015Document 它的一丝痕迹。后来在微软的learn网站上,搜索到了 Visual Studio 2015 文档 这篇文章,文中提到,
自 2020 年 10 月 13 日起,Visual Studio 2015 文档已移至以前版本的存档。 此日期标记此产品的主要支持结束。 在该日期,Visual Studio 2015 进入了外延支持。 根据文档保留策略,在外延支持期间,Visual Studio 的旧版本的文档可在存档位置的文档站点(URL 中的先前版本)上获得,而不是在主站点上。 有关产品生命周期策略的详细信息,请参阅固定生命周期策略和对 Visual Studio 的旧版本的支持。这意味着 Visual Studio 2015 文章不再显示在此站点的版本选择器中,并且不再在搜索引擎中建立索引。
我按照上文指示,进入旧版本存档,但没有嗅到任何MSDN的东西。再到后来,在官网上意外搜索到到 VS2012 的帮助文档的镜像,我并没有去下载、安装和使用,因为这个VS版本太老了,早就不用了。但是该页面的展示信息,似乎给了我放弃继续寻找的理由,
在这里插入图片描述
详细信息,
在这里插入图片描述
似乎可猜测,微软基于某种原因,不再推出MSDN离线安装包,也很少再见到DVD安装盘啦,而是提供更加便利的在线安装方式。在以前的关于一些文章中,也提到过,其实不光是microsoft 的软件产品,大多数的IT软件越来越难以下载到离线文件。从用户的角度来看,随着互联网的普及和网络速度不断提升,通过在线更新,用户可以更容易的获得最新补丁、安全更新和新功能,以保持软件的最佳性能和稳定性。从开发商的角度上来看,通过在线渠道下载和激活软件,可以便捷的验证其许可证的有效性和合法性,可以提供更好的安全性和防止盗版。而网络中的iso文件可能是前辈们从旧官网或者从DVD中存留的。

MSDN_17">离线MSDN安装

使用从网盘中提取的MSDN镜像文件。打开VS安装管理界面(菜单[帮助] -> 添加和删除帮助内容),选择磁盘安装源。
注意,这里它只识别*.msha类型的文件,iso 镜像文件根本不识别。此时,你只需要双击iso格式的安装包(算是一个解压过程,会生成一个“DVD驱动器(G:/)”的盘符,在这个新盘符下,便会找到.msha后缀的文件)。
在这里插入图片描述
选择想要安装的文档名称,然后点击右下角的 “更新” 按钮,等待安装完成。其他不再赘述。

MSDN_23">MSDN使用方法

在安装完成本地MSDN帮助文档后,可以通过F1快捷键或者直接通过HlpViewer可执行程序启动它。

VSF1_25">从VS内F1启动

在 [帮助] -> 设置帮助首选项,设置为 “在帮助查看器中启动”。当在VS中按下F1时,就会打开帮助程序,并进行自动搜索。

直接启动帮助程序

添加VS帮助程序的快捷方式到桌面,点击后却弹出警告无法启动。
在这里插入图片描述
快捷方式-属性页中,如上 “目标” 一栏修改如下:

"C:\Program Files (x86)\Microsoft Help Viewer\v2.2\HlpViewer.exe" 修改为:
"C:\Program Files (x86)\Microsoft Help Viewer\v2.2\HlpViewer.exe" /catalogName VisualStudio14

跳转到了Qt的帮助网页

由于我的VS集成开发环境(以VS2017社区版为例)安装了 Qt VS Tools 插件,即使我新建的是非Qt的工程,当我在某个WindowsAPI函数(如WSAGetLastError)上,执行F1帮助查询时,其竟然跳转到了Qt的帮助网页上,而此时我在帮助首选中设置了 “在帮助查看器中” 启动,而且已经确定被查询函数的的相关帮助文档已经被安装。鼓捣了许久,终于在工具菜单-选择配置卡中找打了答案,如下图:
在这里插入图片描述
如上,修改红色框标注位置,关闭 Qt VS Tools 插件对F1的捕获即可。注意上图选项卡不是通过项目-右键-属性打开的,而是通过工具菜单 - 选项 - 打开的。

VS2017MSDN_40">VS2017在线安装MSDN

安装VS2017社区版本有半年多了,但是没怎么用。今天闲来无事,想整理GetLastError机制的相关笔记,无奈就是跳转不到指定的在线帮助文档页面,这才想起来还没有安装MSDN。按照以前的方法,却没有在VS2017社区版的帮助菜单下找到 “添加和删除内容” 这个操作项。难道VS2017不再支持安装本地帮助文档了?当然不是!是没有开启此功能。因为至少从VS2017开始,所谓的VS安装包,仅仅是一个空壳,所有的真正的功能,都要借助此壳在线现在和安装…

在工具菜单 -> 获取工具和功能(T),会弹们熟悉的VS安装界面,这里弹出了两层Dialog窗口,我们关闭顶层窗口,留下底层窗口:
在这里插入图片描述
如上图,点击修改,进入界面后,选择 “单个组件” 选项卡,如下,并在组件列表中找打 HelpViewer
在这里插入图片描述
点击界面后右下角的下载安装按钮,等待下载完成,并耐心等待自动安装过程完成。待安装完成后,在帮助菜单中,便有了你熟悉的选项。
在这里插入图片描述
之前我们使用的是离线安装,现在我的网络畅通,这次选择在线安装,过程如下。
在这里插入图片描述
注意更改下上图中的本地存储路径,从系统盘修改到一个别的目录(如,在VS根目录下新建个MSDN目录),我只临时选择了Visual C++和Programming reference for Windows API这两个组件,点击更新按钮后,提示我有138个包需要下载。另外,后来我发现,不管是联机还是磁盘,是可以混合这安装的,可以相互补充。

MSDN_52">有些函数在本地MSDN没有帮助?

我尝试了很多方式,都没有成功的在本地MSDN中安装关于GetLastError函数的帮助文档。当时为了找到问题症结,我在Microsoft Help Viewer 2.3 中一股脑的安装了联机和磁盘全部的帮助文档包,但是始终是搜索不到GetLastError函数的帮助。
在这里插入图片描述
在本地MSDN中可以查询到 WSAGetLastError 函数,但是的确找不到GetLastError的帮助。再后来 ChatGPT 刚兴起时,它告诉我,有时候某些函数藏在某个其他函数或模块的介绍中,可能就是搜不到,我差点就信了,于是我尝试从WSAGetLastError的文档中找到GetLastError的蛛丝马迹,还真找打了,在WSAGetLastError帮助中有,
For information on how to handle error codes when porting(移植) socket applications to Winsock, see Error Codes - errno, h_errno and WSAGetLastError.
在这个链接中,就有GetLastError的链接,
In Winsock applications, error codes are retrieved using the WSAGetLastError function, the Windows Sockets substitute for(代替) the Windows GetLastError function.(译:在Winsocket应用中,使用WSAGetLastError函数获取错误代码,(语法-定语)它是Windows Socket中代替Windows GetLastError函数的函数。) The error codes returned by Windows Sockets are similar to UNIX socket error code constants, but the constants(常量) are all prefixed with WSA. So in Winsock applications the WSAEWOULDBLOCK error code would be returned, while in UNIX applications the EWOULDBLOCK error code would be returned.

后来我比较了 WSAGetLastError 和 GetLastError 的在线帮助的地址,如下,

WSAGetLastError function (winsock.h)
//https://learn.microsoft.com/en-ca/windows/win32/api/winsock/nf-winsock-wsagetlasterror
GetLastError function (errhandlingapi.h)
//https://learn.microsoft.com/en-ca/windows/win32/api/errhandlingapi/nf-errhandlingapi-getlasterror?redirectedfrom=MSDN

我最终也依然没有成功的在本地MSDN中安装GetLastError的帮助文档,有online文档作为补充,临时将就着用,不了了之。另外,还有一点让我比较纳闷,我从VS2017安装的是 Help Viewer 2.3,但是其联机文档包大多为2015的名称…

切换中英文在线帮助文档

截止我写本小节的时间20221201,microsoft 的在线学习网站,虽然也可以切换到中文版,但是恕我直言,可能是机器自动翻译吧,一塌糊涂,大多时候不如直接读美文原版靠谱,中文版只能是作为一个快速参考,有时候这种中英文切换,可能与浏览器的行为有关,这里不再细究。此处仅记录一点,中英文在线帮助文档之间是可以手动方便切换的。以 “Visual Studio 中的 CMake 项目” 这个MSDN帮助条目为例,
其中文页面地址,
https://learn.microsoft.com/zh-cn/cpp/build/cmake-projects-in-visual-studio?view=msvc-150
其英文页面地址,
https://learn.microsoft.com/en-ca/cpp/build/cmake-projects-in-visual-studio?view=msvc-150
如上,两个地址仅仅是 zh-cn 和 en-ca 的不同。


http://www.niftyadmin.cn/n/5460730.html

相关文章

X进制减法(蓝桥杯)

文章目录 X进制减法题目描述解题思路贪心算法模拟减法(大数相减) X进制减法 题目描述 进制规定了数字在数位上逢几进一。 X 进制是一种很神奇的进制,因为其每一数位的进制并不固定!例如说某种 X 进制数,最低数位为二…

kafka学习笔记02(小滴课堂)

Kafka命令行生产者发送消息和消费者消费消息实战 已存在的kafka不能重复创建。 broker设置的是1,factor大于broker了,所以报错。 生产者发送消息: kafka列表出现了新的kafka。 我们使用这个kafka。 我们启动消费者: 我们现在不从…

YARN集群 和 MapReduce 原理及应用

YARN集群模式 本文内容需要基于 Hadoop 集群搭建完成的基础上来实现 如果没有搭建&#xff0c;请先按上一篇: <Linux 系统 CentOS7 上搭建 Hadoop HDFS集群详细步骤> 搭建&#xff1a;https://mp.weixin.qq.com/s/zPYsUexHKsdFax2XeyRdnA 配置hadoop安装目录下的 etc…

Linux 动静态库的制作,使用和加载

Linux 动静态库的制作,使用和加载 一.前置说明1.mylib.h2.mylib.c3.mymath.h mymath.c4.如何制作库 二.动静态库的制作1.静态库的制作1.制作2.使用一下静态库,验证是否成功打包 2.动态库的制作1.编译.c源文件文件生成.o目标文件2.打包生成动态库3.编写makefile文件,自动化制作动…

头歌 实验一 关系数据库标准语言SQL湖北汽车工业学院 )

头歌 实验一 关系数据库标准语言SQL 制作不易&#xff01;点个关注呗&#xff01;为大家创造更多的价值&#xff01; 目录 头歌 实验一 关系数据库标准语言SQL**制作不易&#xff01;点个关注呗&#xff01;为大家创造更多的价值&#xff01;** 第一关&#xff1a;创建数据库第…

c#仿ppt案例

画曲线 namespace ppt2024 {public partial class Form1 : Form{public Form1(){InitializeComponent();}//存放所有点的位置信息List<Point> lstPosition new List<Point>();//控制开始画的时机bool isDrawing false;//鼠标点击开始画private void Form1_MouseD…

java Web 疫苗预约管理系统用eclipse定制开发mysql数据库BS模式java编程jdbc

一、源码特点 JSP 疫苗预约管理系统是一套完善的web设计系统&#xff0c;对理解JSP java 编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为TOMCAT7.0,eclipse开发&#xff0c;数据库为Mysql5.0&#xff0c;使…

使用第三方远程连接工具ssh连接vagrant创建的虚拟机

vagrant默认密码都是vagrant 密码认证默认是关闭的&#xff0c;进入虚拟机&#xff0c;打开密码认证 1、使用命令vi /etc/ssh/sshd_config进入配置&#xff0c;注意要切换到root用户&#xff0c;这个配置root有权限 2、找到PasswordAuthentication默认为no,改为yes 3、重启虚…