My application has been successfully updating for ages, and I’ve been making changes, releasing new builds etc every day for the past few months, but now, when the application starts (it checks for updates on startup), it begins downloading the updated version from the server, and then fails 3-quarters of the way through with the following message:
PLATFORM VERSION INFO Windows :
6.1.7600.0 (Win32NT) Common Language Runtime : 4.0.30319.1
System.Deployment.dll : 4.0.30319.1
(RTMRel.030319-0100) clr.dll :
4.0.30319.1 (RTMRel.030319-0100) dfdll.dll : 4.0.30319.1
(RTMRel.030319-0100) dfshim.dll :
4.0.31106.0 (Main.031106-0000)SOURCES Deployment url :
file:///C:/Users/Jason/Desktop/OOM.appref-ms%7C
Server : Microsoft-IIS/7.0
X-Powered-By : ASP.NET Deployment Provider url :
http://www.website.net.au/software/updates/something/OOM.application
Application url :
http://www.website.net.au/software/updates/something/jusername/Application%20Files/OOM_2_0_0_8/OOM.exe.manifest
Server : Microsoft-IIS/7.0
X-Powered-By : ASP.NETIDENTITIES Application Identity :
OOM.exe,
Version=2.0.0.8, Culture=neutral,
PublicKeyToken=38928ec70a12c5e6,
processorArchitecture=x86, type=win32ERROR SUMMARY Below is a summary of
the errors, details of these errors
are listed later in the log. *
Activation of
C:\Users\Jason\Desktop\One Stop
Management.appref-ms| resulted in
exception. Following failure messages
were detected: + Downloading
http://www.website.net.au/software/updates/something/jusername/Application
Files/OOM_2_0_0_8/One
Stop Management.exe.config 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.OPERATION PROGRESS STATUS *
[18/02/2011 5:55:50 PM] : Activation
of C:\Users\Jason\Desktop\One Stop
Management.appref-ms| has started. *
[18/02/2011 5:55:50 PM] : Performing
necessary update check as specified by
the deployment. * [18/02/2011 5:55:51
PM] : Consuming new update. *
[18/02/2011 5:55:52 PM] : Installation
of the application has started. *
[18/02/2011 5:55:53 PM] : Processing
of application manifest has
successfully completed. * [18/02/2011
5:55:53 PM] : Found compatible runtime
version 4.0.30319. * [18/02/2011
5:55:53 PM] : Request of trust and
detection of platform is complete.ERROR DETAILS Following errors were
detected during this operation. *
[18/02/2011 5:55:54 PM]
System.Deployment.Application.DeploymentDownloadException
(Unknown subtype)
– Downloading http://www.website.net.au/software/updates/something/jusername/Application
Files/OOM_2_0_0_8/One
Stop Management.exe.config 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.DownloadDependencies(SubscriptionState
subState, AssemblyManifest
deployManifest, AssemblyManifest
appManifest, Uri sourceUriBase, String
targetDirectory, String group,
IDownloadNotification notification,
DownloadOptions options) 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.ConsumeUpdatedDeployment(SubscriptionState&
subState, ActivationDescription
actDesc) at
System.Deployment.Application.ApplicationActivator.PerformDeploymentUpdate(SubscriptionState&
subState, String& errorPageUrl) at
System.Deployment.Application.ApplicationActivator.ProcessOrFollowShortcut(String
shortcutFile, String& errorPageUrl,
TempFile& deployFile) 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.
Okay, so that tells me that there is a file that was not found. But I have double-checked, several times, and the file is there.
Anybody know what causes this?
Any help at all is appreciated!
IIS won’t serve up *.config files by default to protect web.config and various other ASP configuration files which usually contain connection strings and other sensitive information involved in running the site. To get around this for Click-Once deployments all files get a .deploy added to the end so a *.config would be automatically renamed *.config.deploy when published. Did you manually add One Stop Management.exe.config or something? You might add a .deploy on the end as a temp workaround but in reality this should have been done for you at publish time. You DON’T want enable configs to download from IIS as this will present a security hole with your site.