安装 DotNetFramework、LogMeIn Go to Assist 等应用程序时会出现时间戳签名错误。如果您的系统 Windows 已过时或系统的执行策略存在限制,通常会发生这种情况。
以下是完整的错误消息:
安装未成功
.Net Framework 4.8 尚未安装,因为:
时间戳签名和/或证书无法验证或格式不正确
许多因素都可能导致时间戳签名问题,但以下是据报告导致该问题的主要原因:
- 过时的 Windows:Microsoft 不断更新 Dotnet Framework 以清除运行/开发应用程序中的错误并赶上它,您的 PC 的 Windows 必须完全修补到最新版本。如果您的系统缺少任何此类更新,则可能会导致 Dotnet 框架的时间戳签名问题。
- 过时的 Dotnet Framework 安装程序:如果您尝试使用过时的 Dotnet Framework 安装程序(可能已经存在于您系统的下载文件夹中),那么此安装程序可能与您系统的操作系统不兼容,并可能导致手头的 Dotnet 问题。
- 未签名的系统驱动程序:为了增强 Windows 和 Dotnet Framework 运行应用程序的安全性,必须对系统上的所有驱动程序进行数字签名,如果系统中的任何驱动程序未进行数字签名,Dotnet Framework 安装程序可能会抛出错误时间戳签名错误。
- 您系统的过时根证书:如果您的系统由于系统证书管理器中的故障而无法自动更新其根证书,则 Dotnet Framework 安装程序可能无法验证许多基本系统资源,从而显示时间戳问题。
在继续解决方案之前,请确保系统的日期和时间准确无误。此外,如果您因证书过期而遇到问题,则可以通过将系统日期设置为证书过期之前的时间来消除错误,然后在安装应用程序后恢复日期/时间/司机。
将系统的 Windows 更新到最新版本
时间戳签名问题可能是有问题的应用程序(如 LogMeIn Go to Assist)与操作系统之间不兼容的结果。在这种情况下,将 PC 的 Windows 更新到最新的稳定版本可能会解决问题。
- 单击Windows,键入检查更新,然后打开Windows 更新。
- 现在,在 Windows Update 窗口中,单击“检查更新”按钮,如果有可用更新,请下载并安装这些更新(以及可选更新)。
- 更新后,重新启动您的 PC,并在重新启动后检查证书验证问题是否已解决。
如果有无法安装的更新,则您可以从 Microsoft 目录网站手动安装这些更新以解决证书错误。
如果问题仍然存在于LogMeIn Go to Assist之类的应用程序中,则检查使用其EXE文件安装应用程序(而不是打开程序)是否可以解决问题。
使用最新的 Dotnet 框架安装程序
不使用最新的 .NET 框架可能会导致设计为使用最新框架运行的应用程序出现问题。更新它可能会立即解决问题。
- 启动Web 浏览器并导航到Microsoft 网站的以下 Dotnet 页面:
https://dotnet microsoft com/en-us/download/dotnet-framework
- 现在单击最新和推荐的 .Net Framework(当前为 .Net Framework 4.8)。
- 然后点击Download .Net Framework 4.8 Runtime并让下载完成。
- 完成后,以管理员身份启动.Net Framework安装程序并检查它是否成功安装而没有遇到证书验证问题。
执行系统的 SFC 扫描
如果基本系统文件损坏,您可能会遇到手头的问题;执行系统的SFC 扫描将替换不完整的文件。请记住,此扫描可能需要一些时间才能完成(取决于您的系统驱动器的大小),因此请在您的系统有空闲时间(例如过夜)时尝试它。
- 单击Windows,键入命令提示符,右键单击它,然后选择以管理员身份运行
- 然后执行以下命令:
sfc /scannow
- 现在,等待扫描完成,然后检查是否可以安装有问题的应用程序(如 Dot Net 框架)而不会出现时间戳签名错误。
禁用驱动程序包的代码签名
如果您遇到驱动程序的“无法验证证书”问题,则禁用驱动程序包的代码签名将解决问题。
警告:
继续前进需要您自担风险,因为禁用驱动程序包的代码签名可能会对您的系统造成不同的安全威胁。
- 单击Windows,键入组策略编辑器,然后选择编辑组策略的结果。
- 现在,在“组策略编辑器”窗口中,展开“用户配置”并转到以下路径:
管理模板>>系统>>驱动程序安装
- 然后,在窗口的左半边,双击Code Signing for Device Drivers并选择Enabled 。
- 现在展开When Windows Detects a Driver File Without a Digital Signature的下拉列表并选择Ignore。
- 然后应用所做的更改并重新启动您的 PC。
- 重新启动后,检查驱动程序是否可以在没有时间戳签名问题的情况下安装。
禁用根证书的自动根更新
如果系统无法自动更新根证书,也可能会发生此错误。使用第 3 方实用程序 (DigiCert) 禁用根证书的自动根更新将解决这种情况下的问题。
警告:由于引用的实用程序是第 3方实用程序,使用第 3方实用程序可能会对您的系统/数据构成安全威胁,因此请自行承担风险。
- 启动Web 浏览器并转到DigiCert 下载页面。
- 然后单击“下载”按钮,下载完成后,启动该实用程序。
- 现在,在左窗格中,转到“工具”菜单,然后在右窗格中单击“自动根目录更新”。
- 然后将Auto Root Update的设置更改为Disabled并关闭该实用程序(如果要求,请确保应用更改)。
- 现在重新启动您的 PC,并在重新启动后检查证书验证问题是否已解决。
如果问题仍然存在,那么您可以将有问题的证书导出并 重新导入以解决证书验证问题(如果确定有问题的证书)。如果您遇到 DotNetFramework 问题,请检查下载以下 Microsoft 证书并将其导入管理用户证书>>受信任的根证书颁发机构>>证书是否可以解决问题。