b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

应用软件发生异常 下一代VC运行时库系统 the Universal CRT(3)

电脑杂谈  发布时间:2018-02-09 14:42:11  来源:网络整理

VCRuntime140.dll 这是VC运行时库和编译器相关的必备模块,必须存在。

dnfexe应用程序错误_应用软件发生异常_cf0xc0000417错误原因

msvcp140.dll 如果你写的程序含有C++标准库的代码,那就必须存在。

ucrtbase.dll和api-ms-xxxxx.dll 必须存在。

微软强烈推荐使用vcredist.exe来给目标机安装相应的文件。它会安装所有对的UCRT文件和必备组件。这是最省事儿便捷的方法。

但是vcredist_x86.exe和vcredist_x64.exe就各有近14MB的体积!大型程序发布的时候可能无所谓,而很多很多基于互联网发布的程序,却不可能这么干。互联网程序对安装包的大小很敏感,这直接影响最终用户终端的到达率和推广成本。

可参考PHP7.1的Windows版的下载页面和安装包。

程序自带VCRuntime140.dll和msvcp140.dll,再给系统打基于msu的KB2999226补丁。KB2999226补丁会给系统安装UCRT。一般情况下,Windows10已经自带了UCRT,不需要额外打补丁。

这种方法不适用于WinXP系统。而在中国WinXP系统还有很大保有量,大家都不会轻易放弃这个庞大的用户群的。

可参考Python 3.5的Windows安装包。

现在互联网程序大多使用的是app-local的部署模式,意思就是把依赖库放在自己程序目录下,既不会跟别的应用软件冲突,又方便了软件分发。

起初,微软并没有打算针对UCRT程序继续这样的部署模式。但是后来大家反响比较强烈,所以在Windows 10 SDK发布的时候,把UCRT和UMP的相关dlls都一起发布了。这个目录一般是“C:\Program Files (x86)\Windows Kits\10\Redist\ucrt”。

你也可以在Visual Studio 2015的安装目录下找到VCRuntime140.dll和msvcp140.dll。这个目录一般是“C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\redist\x86\Microsoft.VC140.CRT”。

有些开发者一开始可能会被ucrt目录下的四十几个文件吓到,不过还好都不大,打包压缩以后都很小。

可参考Visual Studio 2015配套的Remote Debugger 调试工具。这个工具由于要求是“standalone”的,所以就是用此方法部署的。可以在这里找到:“C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Remote Debugger\x86”。

UCRT的确给我们带来了很多全新的概念,也给我们带来了少许的不适应。但这毕竟是未来的发展方向。基于UCRT的Visual Studio 2015给我们带来的众多新的C、C++语言标准的支持,我相信以后C++程序会变得更加强大。按照网上的一些说法,未来不排除会对VCRuntime模块再次优化重构的可能性,这个我们只能拭目以待了。Visual Studio 2017即将发布,我们也将继续跟进UCRT的发展方向。

[1] CTP 即Community Technology Preview,译为社区技术预览版,一般是微软开发软件的早期对内测试版

[2] 参考:https://blogs.msdn.microsoft.com/vcblog/2015/03/03/introducing-the-universal-crt/

[3] 参考:https://msdn.microsoft.com/zh-cn/library/mt186421.aspx

作者简介:陈建明,目前就职于上海恺英网络科技,C++组组长。十多年来,尽管各种编程语言均有涉猎,但主要一直致力于Windows C++平台的各种应用架构、开发和前沿技术的研究。

责编:何永灿(heyc@csdn.net)


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-68942-3.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...