绿色安装 vs2010(VC++10) 的 msvcr100.dll

同事开发了一个小工具,为了避免使用前 必须安装 vs2010的 VC++10库,于是试着将 运行库的DLL全部收集起来,记录一下具体的步骤:

首先找到 VC++运行库的下载地址:https://learn.microsoft.com/zh-CN/cpp/windows/latest-supported-vc-redist

找一个没有安装过 Visual Studio 2010 (VC++ 10.0)  的系统,使用 SysinternalsSuite 套件中的 Procmon (地址:https://learn.microsoft.com/zh-cn/sysinternals/ ),检测安装过程,将 Procmon 的过滤规则 增加2条规则:
Path --> contains --> .dll --> include
Process Name
--> is --> msiexec.exe --> include
点击add,点击OK,开始记录 msiexec.exe 往系统里写入的DLL文件。

配置 Promon Filter

此时正常安装 Visual Studio 2010 (VC++ 10.0) 运行库,将 promon记录的内容导出为 CSV。

使用Excel打开,删除:Time of Day、Detail 、PID 这3列,然后筛选:Operation列,只保留:CreateFile、WriteFile 这两个操作,在“数据”选项卡中,点击“删除重复项”按钮,这时候我们来看剩下的内容:

找到对应的DLL文件

Result列,开始文件都是:NAME NOT FOUND,后面WriteFile都成功了,那这些文件就是 VS2010写入的DLL(为了截图更清晰,我删掉了一些其他语言的DLL),最后,拼接一个批处理命令,将安装的DLL拷贝出来。

当程序运行过程中,提示缺少某个DLL,我们就将需要的DLL文件,放到程序的根目录。

经过验证,发现同事的程序需要包含3个DLL文件:msvcr100.dll、msvcp100.dll、msvcr110.dll(Visual Studio 2012 (VC++ 11.0)),就可以绿色运行,无需安装VC++运行库。

                                                    陈树树    2023.7.25

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容