Windows Develop Bookmark and Share   
 index > ClickOnce and Setup & Deployment Projects > Optional Signing ClickOnce Manifest on Windows Vista Fails
 

Optional Signing ClickOnce Manifest on Windows Vista Fails

Hi

I have a created a ClickOnce installation for a windowsapplication thatneeds to be installed as "Available Offline". The application needs to be distributed to various client sites and they willmodify the config file before deployment.

I followed the instructionsfor Optional Hashing and Signing(http://blogs.msdn.com/mwade/archive/2008/08/29/what-s-new-in-visuall-studio-2008-sp1-clickonce-tooling.aspxand http://social.msdn.microsoft.com/Forums/en-US/winformssetup/thread/4827d4a7-21b2-4553-b33e-8e400ef6e65f/) and it works100% on windows XP. It even created the desktop icon which I wanted.

When I try and run the same install on Windows Vista it fails:
------------------------------------------------------------------------
Manifest XML signature is not valid.
- Source: System.Deployment
- Stack trace:
at System.Deployment.Application.Manifest.AssemblyManifest.ValidateSignature(Stream s)
at System.Deployment.Application.ManifestReader.FromDocument(String localPath, ManifestType manifestType, Uri sourceUri)
--- Inner Exception ---
System.Security.Cryptography.CryptographicException
- No signature was present in the subject.
--------------------------------------------------------------------------------

I looked at IE on the Vista machine and tried to play around with some security settings but none helped. Is there some way I can switch off this security check on Vista?

Thanks for any help.
T Rex  Thursday, April 30, 2009 7:08 AM
To answer my own question:

The problem was that I was not targeting the .NET framework 3.5 SP1. By adding a reference to System.Data.Entity.dll the Clickonce install targets 3.5 SP1 and the new features such as Optional Hashing and Signing are "activated".

I did run into an associated problem:

.NET 3.5 SP1 redistributable's are not deployed with VS 2008 SP1 and so if you add it as a pre-requisite and select "Download from same location as my application" it fails. You need to follow the steps outlined here under section "SameSite"(http://download.microsoft.com/download/A/2/8/A2807F78-C861-4B66-9B31-9205C3F22252/VS2008SP1Readme.htm) to create an installation package that gets copied to "C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Packages".
  • Marked As Answer byT Rex Thursday, April 30, 2009 12:35 PM
  •  
T Rex  Thursday, April 30, 2009 12:35 PM
To answer my own question:

The problem was that I was not targeting the .NET framework 3.5 SP1. By adding a reference to System.Data.Entity.dll the Clickonce install targets 3.5 SP1 and the new features such as Optional Hashing and Signing are "activated".

I did run into an associated problem:

.NET 3.5 SP1 redistributable's are not deployed with VS 2008 SP1 and so if you add it as a pre-requisite and select "Download from same location as my application" it fails. You need to follow the steps outlined here under section "SameSite"(http://download.microsoft.com/download/A/2/8/A2807F78-C861-4B66-9B31-9205C3F22252/VS2008SP1Readme.htm) to create an installation package that gets copied to "C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Packages".
  • Marked As Answer byT Rex Thursday, April 30, 2009 12:35 PM
  •  
T Rex  Thursday, April 30, 2009 12:35 PM

You can use google to search for other answers

Custom Search

More Threads

• Problem creating shortcuts in Setup and Deployment Project
• Problem installing service without manually uninstalling previous version
• Office 2003 Updates will not install
• Releasing VS 2005 C# .NET (framework 2.0) Application in a single setup.exe file
• User Interface
• How to add application shortcut from Start Menu
• COM Exception during Click Once Deployment
• How to get installation path for custom action?
• Generic Bootstrapper - SQL Express Named Instance
• Application is published to localhost but then.....