使用 Microsoft 登录
登录或创建帐户。
你好,
使用其他帐户。
你有多个帐户
选择要登录的帐户。

摘要

虚拟应用程序包包含一个清单,该清单提供程序包的所有核心信息和默认设置。 如果要为特定用户或组调整这些默认值,可以创建和编辑用户配置文件 (UserConfig)。 UserConfig 文件允许你为程序包指定或修改自定义设置。 当程序包部署到运行 App-V 客户端的计算机时,这些设置将应用于特定用户。

症状

通过 App-V 管理控制台发布包含 UserConfig 文件的虚拟应用程序包可能会失败,原因是 SQL Server 2016 及更高版本处理数据类型的方式发生了更改。  有关该更改的详细信息,请参阅 KB4010261。   出现此问题的程序包的时间戳中将包含 7 位数的毫秒数,例如,“2019-12-30T14:41:57.7433333”。  可能成功发布的程序包的时间戳中包含两位数的毫秒数,例如,“2019-12-30T14:41:50.58”。

如果遇到此问题,可能会在详细日志记录中收到以下错误:

5756 [7]14D4.4320::12/10/19-08:28:34.9973489 [Microsoft.Windows.AppMan.AppV] LOGLEVEL=1, MESSAGE=Catalog: Failed to set the last modification time on policy file 'C:\Users\sgern\AppData\Roaming\Microsoft\AppV\Client\Catalog\Packages\{1D45F06B-874D-4A85-86EF-2330B430E47D}\{DB5DE6F6-15E8-4932-A7CF-2DA12EA5B068}\DynamicConfiguration.xml. Error code: 0x0FD0A725-00000057, FUNCTION=AppV::Client::Catalog::DocumentStoreImpl::SavePolicyDocumentToFile, LINENO=1078, UTCReplace_AppSessionGuid=true

从 Windows 返回错误 0x0FD0A725-00000057,表示“参数错误”

解决方法

若要缓解此问题,你可能需要执行以下操作之一:

  • 使用 PowerShell 发布包。

  • 将数据库的兼容性级别更改为低于 130。

  • 更改用于时间戳的列的数据类型。

更改用于时间戳的列数据类型的示例脚本如下。  注意 你需要根据你的环境调整脚本中的 DB 名称。 重要 建议你在运行任何脚本之前备份 DB。

USE  AppVManagement
GO
ALTER TABLE dbo.PackageEntitlements ALTER column UserConfigurationTimestamp datetime2(3)
GO
ALTER TABLE dbo.PackageVersions ALTER column TimeAdded datetime2(3)
GO
ALTER TABLE dbo.PackageVersions ALTER column TimeChanged datetime2(3)
GO
ALTER TABLE dbo.PackageVersions ALTER column TimeEnabled datetime2(3)
GO
ALTER TABLE dbo.PublishingServers ALTER column LastPublishingAttempt datetime2(3)
GO


注意 如果你通过 PowerShell 发布虚拟应用程序包,你将不会遇到此问题。

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。

此信息是否有帮助?

你对语言质量的满意程度如何?
哪些因素影响了你的体验?
按“提交”即表示你的反馈将用于改进 Microsoft 产品和服务。 你的 IT 管理员将能够收集此数据。 隐私声明。

谢谢您的反馈!

×