ClickOnce setup.exe fails, but the .application file works fine when using a Windows share for deployment

前端 未结 2 2059
南方客
南方客 2020-12-16 11:25

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

相关标签:
2条回答
  • 2020-12-16 11:45

    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:

    Enter image description here

    Edit 2:

    Here is my publishing setup. It works by clicking on the install button in Internet Explorer, Firefox, and Chrome (all I tested).

    Enter image description here

    Enter image description here

    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/

    Enter image description here

    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.

    0 讨论(0)
  • 2020-12-16 11:51

    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.

    0 讨论(0)
提交回复
热议问题