How to deploy ClickOnce applications to Windows Azure?

Deploying ASP.NET applications (including Silverlight) to your Windows Azure account is easy, but you may want to use Azure services from ClickOnce deployed WinForms or WPF applications. Unfortunately, it is not obvious how to publish ClickOnce applications to Windows Azure accounts. They key in the solution is that you have to publish the application to Windows Azure blob storage, not to the web role, as publishing it to web role simply doesn’t work. Here is the steps to publish your ClickOnce application to Windows Azure blob storage:

  1. Publish your ClickOnce application into a folder on your local hard drive.
  2. Upload this folder to your Windows Azure blob storage.
    1. The easiest way to do this is with SpaceBlock, you can download it from here:
    2. Please don’t forget, you can’t upload files to the root container on blob storages, so create one target container.
    3. Be sure the target container is publicly available on the blob storage. You can allow public access on the container with SpaceBlock with right clicking on the container and choose “Edit Azure Container Access..” from the context menu.

Here is a real example of the above solution:

Wikipedia Explorer