gpt4 book ai didi

.net - 当用户在其 .NET 安装中选择 "Repair"时,幕后发生了什么?

转载 作者:行者123 更新时间:2023-12-02 03:29:14 27 4
gpt4 key购买 nike

特别是,我们创建了一个 .msi 安装程序,用于将程序集安装到 GAC,并且在 msxml3.dll 上具有内置的 DoRegisterTypeLib 操作。然而(以某种方式),错误的 msxml3.dll 版本(8.70.1104.0,Microsoft 知道)仍然存在于某些最终用户的 PC 上。如果 msxml3.dll 是那个错误的版本,则 DoRegisterTypeLib 会失败(错误代码 11)。我们告诉最终用户“修复”他们的 .NET 安装,结果一切正常。

那么,这个“修复”又是做什么的呢?它会更新某些/任何 Microsoft .dll 吗?

即使我们不应该在那个(或任何 .dll)上创建 DoRegsiterTypeLib,我仍然真的很想知道“Repair .NET”在幕后做了什么。任何人都有任何见解,我们将不胜感激!

最佳答案

它遍历每个组件并检查其 KeyPath 是否存在且正确。

它将注册dll和组件,并将丢失的损坏文件复制到INSTALLDIR

您可以激活修复的LOG第一步是打开 windows 的日志记录安装程序。您可以在运行 MSI 时执行此操作(假设您是直接运行 MSI 文件,不使用控制面板)或使用注册表设置以全局打开日志记录。看 http://support.microsoft.com/kb/223300了解详情。

关于.net - 当用户在其 .NET 安装中选择 "Repair"时,幕后发生了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28204330/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com