在部署新版本(从版本2升级到版本3)后,我们的一位客户正在更新其ClickOnce应用程序。
首先,当他运行应用程序时,它似乎没有检测到部署了新版本。稍后,在从Application Server手动下载最新的AssemblyName.application文件后(从应用程序发布到的URL),他得到了以下错误,由于某种原因,它似乎继续寻找旧的部署(没有不再存在,因为它被新的取代了。 “有趣”的是我们已经从不同的机器和安装中安装了这个版本。地点,它已经为每个人工作正常,除了“代理人背后”的2个人。这是他们收到的错误消息:
ERROR SUMMARY
Below is a summary of the errors, details of these errors are listed later in the log.
* Activation of example.com/YYY/Client/AppName.application resulted in exception. Following failure messages were detected:
+ Downloading example.com/YYY/Client/Application Files/AppName_2_0_0_0/AppName.exe.manifest did not succeed.
+ The remote server returned an error: (404) Not Found.
COMPONENT STORE TRANSACTION FAILURE SUMMARY
No transaction error was detected.
WARNINGS
There were no warnings during this operation.
ERROR DETAILS
Following errors were detected during this operation.
[22/03/2016 08:59:18] System.Deployment.Application.DeploymentDownloadException (Unknown subtype)
- Downloading example.com/YYY/Client/Application Files/AppName_2_0_0_0/AppName.exe.manifest did not succeed.
- Source: System.Deployment
- Stack trace:
at System.Deployment.Application.SystemNetDownloader.DownloadSingleFile(DownloadQueueItem next)
at System.Deployment.Application.SystemNetDownloader.DownloadAllFiles()
at System.Deployment.Application.FileDownloader.Download(SubscriptionState subState)
at System.Deployment.Application.DownloadManager.DownloadManifestAsRawFile(Uri& sourceUri, String targetPath, IDownloadNotification notification, DownloadOptions options, ServerInformation& serverInformation)
at System.Deployment.Application.DownloadManager.DownloadApplicationManifest(AssemblyManifest deploymentManifest, String targetDir, Uri deploymentUri, IDownloadNotification notification, DownloadOptions options, Uri& appSourceUri, String& appManifestPath)
at System.Deployment.Application.ApplicationActivator.DownloadApplication(SubscriptionState subState, ActivationDescription actDesc, Int64 transactionId, TempDirectory& downloadTemp)
at System.Deployment.Application.ApplicationActivator.InstallApplication(SubscriptionState& subState, ActivationDescription actDesc)
at System.Deployment.Application.ApplicationActivator.PerformDeploymentActivation(Uri activationUri, Boolean isShortcut, String textualSubId, String deploymentProviderUrlFromExtension, BrowserSettings browserSettings, String& errorPageUrl)
at System.Deployment.Application.ApplicationActivator.ActivateDeploymentWorker(Object state)
--- Inner Exception ---
System.Net.WebException
- The remote server returned an error: (404) Not Found.
- Source: System
- Stack trace:
at System.Net.HttpWebRequest.GetResponse()
at System.Deployment.Application.SystemNetDownloader.DownloadSingleFile(DownloadQueueItem next)
COMPONENT STORE TRANSACTION DETAILS
No transaction information is available.
DETAILED EXECUTION FLOW
...
[08:59:14] : DownloadQueueItem : _sourceUri = example.com/YYY/Client/AppName.application, _targetPath = D:\Users\UserName\AppData\Local\Temp\Deployment\MCX7AOC4.6KW\7E3KZCJY.P28.application
[08:59:16] : HttpWebRequest= Proxy.IsByPassed=False, ProxyUri=http://BLAproxy.BLA.com:8080/
[08:59:17] : HttpWebResponse=ResponseUri=example.com/YYY/Client/AppName.application
[08:59:17] : Method Call : ManifestReader.FromDocumentNoValidation(D:\Users\UserName\AppData\Local\Temp\Deployment\MCX7AOC4.6KW\7E3KZCJY.P28.application) called.
[08:59:17] : expectedAppId=example.com/YYY/Client/AppName.application#AppName.application, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0e37c329267e5e4f, processorArchitecture=msil/AppName.exe, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0e37c329267e5e4f, processorArchitecture=msil, type=win32
[08:59:17] : Reparse the deployment manifest for validations.
[08:59:17] : Method Call : ManifestReader.FromDocument(D:\Users\UserName\AppData\Local\Temp\Deployment\MCX7AOC4.6KW\7E3KZCJY.P28.application) called.
[08:59:17] : Schema validation passed.
[08:59:17] : Manifest is parsed successfully.
[08:59:17] : Semantic validation passed.
[08:59:18] : Signature validation passed.
[08:59:18] : Method Call : FollowDeploymentProviderUri called.
[08:59:18] : Deployment manifest zone is not local machine. Zone = Internet
[08:59:18] : providerUri=example.com/YYY/Client/AppName.application,sourceUri=example.com/YYY/Client/AppName.application
[08:59:18] : Deployment provider not followed.
[08:59:18] : Processing of deployment manifest has successfully completed.
[08:59:18] : Could not find application in store. Continue with downloading application manifest.
[08:59:18] : Method Call : InstallApplication called.
[08:59:18] : Method Call : DownloadApplication called.
[08:59:18] : Start processing application manifest.
[08:59:18] : Method Call : DownloadApplicationManifest called.
[08:59:18] : Method Call : DownloadManifest called.
[08:59:18] : Method Call : DownloadManifestAsRawFile called.
[08:59:18] : Method Call : DownloadSingleFile called
[08:59:18] : DownloadQueueItem : _sourceUri = example.com/YYY/Client/Application Files/AppName_2_0_0_0/AppName.exe.manifest, _targetPath = D:\Users\UserName\AppData\Local\Temp\Deployment\YLJO3ZJO.CAB\T2LP22AQ.EZX\AppName.exe.manifest
[08:59:18] : HttpWebRequest= Proxy.IsByPassed=False, ProxyUri=http://BLAproxy.BLA.com:8080/
有人知道可能发生了什么吗?我们有一些怀疑,但是,由于我不想说明你的答案,我暂时不会提及它们。
先谢谢你的帮助!!!
答案 0 :(得分:3)
如果它可以在将来帮助任何人:它最终成为缓存旧版Application Deployment Manifest的代理问题。
此外,卸载应用程序(从控制面板)&删除ClickOnce文件缓存(%userprofile%\ AppData \ Local \ Apps \ 2.0 *。*),如以下链接所述,也帮助修复了过去的许多问题:https://support.microsoft.com/en-us/kb/2713442
希望有一天能帮到某人......