安装ORD中国版遇到"无法复制 Microsoft Visual Basic for Applications 7.1 (x64)的有效载荷"的报错。
当软件安装被取消或失败时,会创建一个日志文件。在退出安装程序之前,用户将被提示"点击此处打开日志文件",有机会打开这个文件。
日志文件的目标路径和命名规则将类似于以下格式:
C:\Users\%username%\AppData\Local\Temp\OpenRoads_Designer_Ultimate_For_China_CONNECT_Edition_20240806100738.log
注意,%username%
是一个环境变量,它代表当前登录到电脑的用户账户的用户名 ,日志文件名中包含了完整的产品名称和报错的时间。
在日志种搜索"error",会遇到"Hash mismatch", "Failed to verify payload" 等提示:
[16A4:30AC][2024-08-06T10:07:39]e000: Loading component /SetupPagesLib;v1.0.0.0;component/ErrorUserControl.xaml
[16A4:30AC][2024-08-06T10:07:39]i000: ErrorPage Code: 0
[16A4:2548][2024-08-06T10:07:45]i000: Failed to check for Windows Updates with error 未将对象引用设置到对象的实例。
[16A4:30AC][2024-08-06T10:07:52]i000: ErrorPage Code: 0
[3A28:1F8C][2024-08-06T10:07:54]e000: Error 0x80091007: Hash mismatch for path: C:\ProgramData\Package Cache\.unverified\VisualBasicCore, expected: 6D803F9DEBCAE4C748DF0DC190CC5D5CD575533D, actual: A63BAD840D499A0FC13C6AE8239BC438ED0C68AC
[3A28:1F8C][2024-08-06T10:07:54]e000: Error 0x80091007: Failed to verify hash of payload: VisualBasicCore
[3A28:1F8C][2024-08-06T10:07:54]e310: Failed to verify payload: VisualBasicCore at path: C:\ProgramData\Package Cache\.unverified\VisualBasicCore, error: 0x80091007. Deleting file.
[3A28:1F8C][2024-08-06T10:07:54]e000: Error 0x80091007: Failed to cache payload: VisualBasicCore
[16A4:23C0][2024-08-06T10:07:54]e000: CacheVerifyComplete: Failed with error code -2146889721 and retry number 0
[16A4:23C0][2024-08-06T10:07:54]e314: Failed to cache payload: VisualBasicCore from working path: C:\Users\mi\AppData\Local\Temp\{0BA8C3D0-39EC-435C-90DA-CDF9C0C57322}\VisualBasicCore, error: 0x80091007.
[16A4:23C0][2024-08-06T10:07:54]e349: Application requested retry of payload: VisualBasicCore, encountered error: 0x80091007. Retrying...
[3A28:1F8C][2024-08-06T10:07:54]e000: Error 0x80091007: Hash mismatch for path: C:\ProgramData\Package Cache\.unverified\VisualBasicCore, expected: 6D803F9DEBCAE4C748DF0DC190CC5D5CD575533D, actual: A63BAD840D499A0FC13C6AE8239BC438ED0C68AC
[3A28:1F8C][2024-08-06T10:07:54]e000: Error 0x80091007: Failed to verify hash of payload: VisualBasicCore
[3A28:1F8C][2024-08-06T10:07:54]e310: Failed to verify payload: VisualBasicCore at path: C:\ProgramData\Package Cache\.unverified\VisualBasicCore, error: 0x80091007. Deleting file.
[3A28:1F8C][2024-08-06T10:07:54]e000: Error 0x80091007: Failed to cache payload: VisualBasicCore
[16A4:23C0][2024-08-06T10:07:54]e000: CacheVerifyComplete: Failed with error code -2146889721 and retry number 1
[16A4:23C0][2024-08-06T10:07:54]e314: Failed to cache payload: VisualBasicCore from working path: C:\Users\mi\AppData\Local\Temp\{0BA8C3D0-39EC-435C-90DA-CDF9C0C57322}\VisualBasicCore, error: 0x80091007.
[16A4:23C0][2024-08-06T10:07:54]e349: Application requested retry of payload: VisualBasicCore, encountered error: 0x80091007. Retrying...
[3A28:1F8C][2024-08-06T10:07:54]e000: Error 0x80091007: Hash mismatch for path: C:\ProgramData\Package Cache\.unverified\VisualBasicCore, expected: 6D803F9DEBCAE4C748DF0DC190CC5D5CD575533D, actual: A63BAD840D499A0FC13C6AE8239BC438ED0C68AC
[3A28:1F8C][2024-08-06T10:07:54]e000: Error 0x80091007: Failed to verify hash of payload: VisualBasicCore
[3A28:1F8C][2024-08-06T10:07:54]e310: Failed to verify payload: VisualBasicCore at path: C:\ProgramData\Package Cache\.unverified\VisualBasicCore, error: 0x80091007. Deleting file.
[3A28:1F8C][2024-08-06T10:07:54]e000: Error 0x80091007: Failed to cache payload: VisualBasicCore
[16A4:23C0][2024-08-06T10:07:54]e000: CacheVerifyComplete: Failed with error code -2146889721 and retry number 2
[16A4:23C0][2024-08-06T10:07:54]e314: Failed to cache payload: VisualBasicCore from working path: C:\Users\mi\AppData\Local\Temp\{0BA8C3D0-39EC-435C-90DA-CDF9C0C57322}\VisualBasicCore, error: 0x80091007.
[16A4:30AC][2024-08-06T10:07:54]i000: ErrorPage Code: -2146889721
[16A4:2548][2024-08-06T10:07:54]e000: Error 0x80091007: Cache thread exited unexpectedly.
另外,在线安装文件的位置为:
[16A4:2548][2024-08-06T10:07:38]i000: Setting string variable 'WixBundleOriginalSource' to value 'C:\Users\mi\Desktop\安装包和插件\Setup_OpenRoadsUltimateChinax64_10.12.01.166_zh-CN_Full(旗舰版).exe'
结合报错信息:
[16A4:23C0][2024-08-06T10:07:54]i338: Acquiring package: VisualBasicCore, payload: VisualBasicCore, copy from: C:\Users\mi\Desktop\安装包和插件\Vba71.msi
[3A28:1F8C][2024-08-06T10:07:54]e000: Error 0x80091007: Hash mismatch for path: C:\ProgramData\Package Cache\.unverified\VisualBasicCore, expected: 6D803F9DEBCAE4C748DF0DC190CC5D5CD575533D, actual: A63BAD840D499A0FC13C6AE8239BC438ED0C68AC
综合以上,我们可以推断出:主安装程序.exe 同目录下有一个安装所需要的组件(Vba71.msi),但是却与要下载的组件不同,所以就报错了。
因为软件安装的时候,会下载需要的组件来安装,如果 主安装程序.exe 同目录下没有同名的组件就会去服务器下载,如果有同名的组件则不下载;但后续安装的时候,会校验组件的有效性,如果校验失败就会报错,从而安装失败。
解决方法:
新建一个文件夹,把 主安装程序.exe 放进去,保证 主安装程序.exe 同目录下没有同名但不匹配的组件。
关于这类报错您还可以参考下面的文章:
https://bentleysystems.service-now.com/community?id=kb_article_view&sysparm_article=KB0093404