最早碰到vc运行库是什么意思这个问题,是前阵子装一个绘图工具的时候,弹窗直接提示缺少某个版本,点确定之后安装包直接闪退,折腾半天才意识到,不是安装包本身损坏,是电脑里缺了这个东西。
之前一直以为,下载软件只要把主程序下好就能打开,哪知道很多软件不是独立完整的文件,写代码的时候,开发人员不会把所有基础功能都打包进程序里面,会直接借用一套现成的代码库,这套库就是vc运行库。程序启动的时候,要去找对应的库文件,找不到就直接报错打不开。
版本很乱。
同一个电脑上,可以同时装2015、2017、2019还有2022版,它们之间有的能兼容,有的不行。那次我自作主张,把旧版本的运行库全部卸载干净,只留最新的一个,想着新版本能向下兼容,省得列表里一堆条目看着杂乱。结果更麻烦,几个老游戏直接启动失败,弹出一模一样的缺失提示,那时候才明白,不同时期开发出来的软件,绑定的库版本不一样,新版本并不一定能顶替老版本。
网上有不少整合包,打包了一大堆不同版本,一键批量安装。试过一次,装完之后开机弹窗少了一些,但也带出来别的状况,有个桌面小工具莫名开始卡顿,关掉之后重新单独安装它提示需要的那一个版本,才恢复正常。整合包省事,但也会装上很多你电脑根本用不上的组件,多占一点磁盘空间,还没法精准匹配单个软件的需求。这只是我的个人感受,不是标准答案。
很多人会把vc运行库跟显卡驱动、系统补丁混在一起。显卡驱动管画面渲染,系统补丁修补系统漏洞,它俩和运行库要做的事情完全不一样。运行库本身不负责画面,也不修复系统安全问题,它就只是一层中间文件,帮软件和Windows系统之间传递指令,让软件可以正常调用内存、文件读写这些基础能力。
还有一个容易搞混的点,它不是VisualStudio开发软件本身。开发工具是给写程序的人用的,而运行库是给普通用户准备的,用户不用写代码,只是跑别人做好的程序,只需要装上对应的运行库文件就行,不用去下载庞大的开发套装。
清理的时候也得小心。
在控制面板的程序列表里面,一堆名字长得很像的条目,只看名字很难分清哪个软件在用它。上次删错一个,办公软件里的插件直接失效,卸载重装插件都没用,最后回头重新装上被删掉的运行库,才恢复原样。从那之后,除非明确知道是哪个程序已经卸载不再使用,不然不会随便去删这些组件。
大部分时候,软件安装程序自带对应的运行库,跟着步骤走就自动装好,不用手动单独处理。只有一部分绿色版、精简打包的程序,制作者为了压缩文件体积,把运行库剥离出去了,才会让使用者自己去找资源安装。找资源的时候也要留意,尽量从微软官方渠道获取,别的地方流传的修改包,里面附带什么东西很难说。
到现在也不会想着一次性把所有版本都补齐。电脑上装什么软件,遇到报错再补对应的那一个,够用就停。桌面上那个绘图软件,现在每次重装系统之后,最先装的就是它要的那版运行库,免得又卡在安装界面干等着。
那天晚上弄完这些,关掉页面顺手清了下下载文件夹里攒的安装包。