I am getting the error of System.Deployment.Application.DeploymentDownloadException
when I try to run setup.exe for my ClickOnce application. If run it over the
The way I understand it, the Setup.exe
file doesn't contain your application; it's just how Visual Studio installs prerequisites, and then it runs your .application
file to actually install your application.
I tested this out with one of my own applications. First, I copied just setup.exe
over and got the same error you did:
ERROR SUMMARY
Below is a summary of the errors, details of these errors are listed later in the log.
* Activation of C:\Users\Andy\Desktop\Video Uploader.application resulted in exception. Following failure messages were detected:
+ Downloading file:///C:/Users/Andy/Desktop/Video Uploader.application did not succeed.
+ Could not find file 'C:\Users\Andy\Desktop\Video Uploader.application'.
+ Could not find file 'C:\Users\Andy\Desktop\Video Uploader.application'.
+ Could not find file 'C:\Users\Andy\Desktop\Video Uploader.application'.
Then I copied the Video Uploader.application
over to my desktop too and it worked. So it seems like if you want to install it from somewhere other than the network share, you just need to make sure that it has both files.
Other things to check, if you don't have it downloading the prereqs from the venders website, then make sure that it is pointing to a static place, or at least make sure that you copy those files over too.
In the Publish Wizard, on the How will users install the application?
page, I selected From a CD-ROM or DVD-Rom
. I don't know if selecting either of the other two options might change how it works.
Edit:
I read through your other post. I suspect that it has to do with how the different protocols handle files. I was able to get it working from the publish.html
page, but I actually published it to a webserver, so that the page address was http://www.example.com/programs/publish.html
.
I tried running it from n:\webroot\programs\publish.html
, and it failed.
Do you have a way to publish it to a webserver? Or at least install IIS or Apache to make it into a webserver?
Alternately, just make sure that everyone has the prerequisites, and then have them click the launch link:
Edit 2:
Here is my publishing setup. It works by clicking on the install button in Internet Explorer, Firefox, and Chrome (all I tested).
It seems like the setup file is looking at the website for the .application
file, so that it doesn't need to be on the local computer.
Edit 3:
In Windows (XP and Windows 7 verified):
* Step 1 : Start menu –> Run
* Step 2 : Type ‘iexpress’ without ‘
* Step 3 : Follow the wizzard.
http://expertester.wordpress.com/2008/07/11/create-self-extractinginstaller-for-free/
Once it's done, then you can just make your own HTML page pointing to your installer EXE file. The only thing I ran into was that the install didn't work the first time every time. I ran it, and it didn't extract the files. Then I instantly ran it a second time, and it worked just fine... I don't know why yet.
We use a self-extracting ZIP file to launch our installation. (There are many ways to do this, for example, use 7-Zip, WinZip, etc.) This way there is only 1 file to download.
But I'm not sure how you would handle updates in this scenario - I assume you could publish both the ClickOnce and the self extacting ZIP file so that the application finds the necessary files afterwards...
I hope this helps.