How to Host ClickOnce Installer on GitHub

This is a guide on how to deploy a ClickOnce installer on GitHub Pages, it's an updated version based on the previous work done by RefactorsaurusRex.

Here are the steps needed
  1. Create a GitHub Pages
  2. In the GitHub Pages create an "Installer" folder.
  3. Create a .gitattributes file in the "Installer" folder. Add the following codes to the file
    • *.manifest binary
    • *.application binary
    • *.deploy binary
    • *  -text
  4. Get the URL of the "Installer" folder on your GitHub pages, it will be used later as the "Installation Folder URL". It should look something like https://raw.githubusercontent.com/{your-account-name}/{your-repo-name}/gh-pages/Installer/ (please make sure that you commit the application to the gh-pages branch, it will not work if you commit to other branches like main, develop, etc)
  5. Switch to Visual Studio > Build. Follow this video guide to publish your ClickOnce application. Use the "Installation Folder URL" you get in step 3 as the Update Location & Installation Folder URL. Refer to the screenshots below.
  6. Copy and paste the published application to your GitHub Pages - "Installer" folder. Do take note that "gh-pages" will be the branch where we publish the installer.
  7. Commit and push the changes to GitHub.
  8. To get the download link of your installer (that you can share with the users), follow this pattern. https://github.com/{your-account-name}/{your-repo-name}/raw/gh-pages/Installer/setup.exe
  9. Done

Please take note that the URL link is case sensitive on GitHub

Comments

  1. "In the GitHub Pages create an "Installer" folder."
    How can I do that?

    ReplyDelete
    Replies
    1. I meant create a folder name "Installer". So, just do it as like how we normally do to create a folder.

      Delete
  2. Thanks for the informative article. This is one of the best resources I have found in quite some time.
    Ethical Hacking training
    PHP Training in Chennai
    Dot net Training in Chennai
    SEO Training in Chennai

    ReplyDelete
  3. Really an informative blog...Thanks for sharing an informative article with us.
    cyber security online course
    best cyber security courses online

    ReplyDelete
  4. Glad to find this. Your site very helpful and this post gives lots of information. Do share more updates.
    PHP course in Chennai
    PHP Training Online
    PHP course in Coimbatore

    ReplyDelete
  5. I don't have much idea about this, this is why I don't wanna misguide to anyone. I'll discuss this with experts of Assignment Writing Services and talk after a while.

    ReplyDelete
  6. Great post. It is really helpful for me.keep sharing such a worthy information..
    Web Development courses in Chennai
    Web Designing Course in Chennai

    ReplyDelete
  7. I haven't any word to value this post.....Really i am awed from this post....the individual who make this post it was an extraordinary human..thanks for imparted this to us.
    pirater instagram

    ReplyDelete
  8. I have followed the steps to create the Installer folder and uploaded/committed the setup.exe app.application and Application Files folder to the Github Installer folder. When I use the URL for the setup.exe, it runs, but then gives me an error that I can't seem to get rid of: it fails to download the app.application file to carry out the install/upgrade. What am I missing? Here is the error from the log, with some info masked in brace brackets:

    URLDownloadToCacheFile failed with HRESULT '-2146697208'
    Error: An error occurred trying to download 'https://github.com/{account name}/Deploy/raw/gh-pages/Installer/{app}.application'.

    ReplyDelete
  9. Spent the day on this. Github now guides you to creating a gh-pages site (https://docs.github.com/en/pages/getting-started-with-github-pages/creating-a-github-pages-site) which results in a repository of the form yourname/yourname.github.io

    Follow the instructions above, and in your ClickOnce build specify https://github.com/youraccountname/yourname.github.io/raw/main/Installer/

    Make sure you get that 'raw' in there. GitHub's version of the location has 'tree': that won't work, as I spent the day finding out

    ReplyDelete
  10. I made a video for this:
    https://youtu.be/iMEGtrjMXPU

    Use it for free deployment on GitHub.

    ReplyDelete
  11. buy youtube views PlayStations are an enjoyment hub for their players to go into a virtual world of awesome graphics and sound technologies. If you are playing racing games on PlayStation 2, you will feel that you are driving a car in actual environment. PS2 racing games are one of best which come up with full of enjoyment and virtual reality.

    ReplyDelete

Post a Comment

Popular posts from this blog

How to Remove Certain URL Page from Google Analytics View

Google Analytics - Exclude Query Parameters from Hubspot