我使用 installshield 2009 创建了一个应用程序安装程序。这个应用程序是一个 32 位应用程序。现在作为我们客户的要求,我们的软件必须通过 Windows 应用认证工具包测试 (WACK)。然后我尝试作为桌面应用程序进行测试,但结果失败。
注册表填充测试检测到以下错误:
应用程序未创建所需的注册表项。
写入适当的添加/删除程序值
错误发现:注册表填充测试检测到以下错误:应用程序没有创建所需的注册表项。
程序的非可选值“DisplayName”缺失或无效。
程序的可选值“InstallLocation”缺失或无效。
程序的非可选值“Publisher”缺失或无效。
程序的可选值“UninstallString”缺失或无效。
程序的非可选值“VersionMajor”缺失或无效。
程序的非可选值“VersionMinor”缺失或无效。
程序的非可选值“MajorVersion”缺失或无效。
程序的非可选值“MinorVersion”缺失或无效。
程序的可选值“InstallLocation”缺失或无效。
我在另一台已安装的机器上使用 regedit 检查。
注册表值正确,上述键均不为空或无效
Windows 注册表编辑器版本 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall{9DAA8BAB-2DD2-4BD5-A3A2-ACB2A28B8041}]
"AuthorizedCDFPrefix"=""
"Comments"=""
"Contact"=""
"DisplayVersion"="9.1 .0"
"HelpLink"=""
"HelpTelephone"="(123) 123-1234"
"InstallDate"="20140115"
"InstallLocation"="C:\Application Sample\"
"InstallSource"="C:\Install\ "
"ModifyPath"=hex(2):4d,00,73,00,69,00,45,00,78,00,65,00,63,00,2e,00,65,00,78,\00 ,65,00,20,00,2f,00,58,00,7b,00,39,00,44,00,41,00,41,00,38,00,42,00,41,00,\ 42,00,2d,00,32,00,44,00,44,00,32,00,2d,00,34,00,42,00,44,00,35,00,2d,00,41,\ 00,33,00,41,00,32,00,2d,00,41,00 ,43,00,42,00,32,00,41,00,32,00,38,00,42,00,\ 38,00,30,00,34,00,31,00,7d,00, 00,00
"NoModify"=dword:00000001
"NoRepair"=dword:00000001
"Publisher"="Sample Publisher"
"Readme"=""
"Size"=""
"EstimatedSize"=dword:0002861e
"UninstallString"=hex(2): 4d,00,73,00,69,00,45,00,78,00,65,00,63,00,2e,00,65,00,\ 78,00,65,00,20,00,2f ,00,58,00,7b,00,39,00,44,00,41,00,41,00,38,00,42,00,41,\ 00,42,00,2d,00,32, 00,44,00,44,00,32,00,2d,00,34,00,42,00,44,00,35,00,2d,00,\ 41,00,33,00,41,00 ,32,00,2d,00,41,00,43,00,42,00,32,00,41,00,32,00,38,00,42,\ 00,38,00,30,00, 34,00,31,00,7d,00,00,00
"URLInfoAbout"="www.publisher.com"
"URLUpdateInfo"=""
"VersionMajor"=dword:00000009
"版本次要"=dword:00000001
"WindowsInstaller"=dword:00000001
"版本"=dword:09010000
"语言"=dword:00000409
"DisplayName"="应用程序示例"
我还检查了与 WACK 相关的 Microsoft KB,它告诉发生此错误是由于注册表值无效或在安装过程中未创建注册表值。
有没有人有同样的经历?如何解决?
我尝试用谷歌搜索它,但没有人能给出确切的解决方案如何解决这个问题