Windows Develop Bookmark and Share   
 index > ClickOnce and Setup & Deployment Projects > Yet Another Expired Certificate Question(s).
 

Yet Another Expired Certificate Question(s).

Hello,

I recently encountered the expiring certificate issue in VS2005 and would like to get a bit of clarificationas tomy options. I've been reading a number of threads on the net, but a few things are still not clear.

Briefly, the project in question was developed on an XP/VS2005/.Net 2.0 platform using ClickOnce deployment. I was using the default certificate automatically generated by VS2005, which expired on 11/24. When I attempted a recent publish, I received what seems to be the standard error message;

Error 1 Cannot publish because a project failed to build.

Error 2 An error occurred while signing: Failed to sign bin\Debug\app.publish\\setup.exe. SignTool Error: ISignedCode:Tongue Tiedign returned error: 0x80880253

The signer's certificate is not valid for signing.

SignTool Error: An error occurred while attempting to sign: bin\Debug\app.publish\\setup.exe

Coincidentally, the certificate expired during the window of time when I was transitioning from my original XP/VS2005/.Net 2.0 development PC to a new XP/VS2008/.Net 3.5 PC. It was on my first attempt to publish on the new machine that I first encountered the problem. Going back to my old PC, which is still just as it was, an attempt to publish generates the same error. (The project was simply copied to the VS2008 PC after the certificate expired)

In short, I don't care about certificate/signing as this is an internal application used by about 20 people in our department.

Given the above, I am wondering�/strong>

1.) I've read that while signing is mandatory in VS2005, it is optional in VS2008. I've tried, on the VS2008 machine, simply unchecking the "Sign the ClickOnce manifests" box and then publishing, however this generates the same error as above. It appears that since the certificate has already expired, the fact that VS2008 does not require signing will not do me any good at this point. Is this correct?

2.) I've read that I should be able to simply click the "Create Test Certificate" button on the Signing tab and create a new certificate to replace the expired one, after which I should be able to publish and be off and running. Is this correct? If so, does this simply create another of the 'default' certificates, such as the one that was originally created with a one year lifespan?

3.) I've read some about the renewcert solution but users seem to be getting mixed results from using it. Is this a reliable option to renew the expired certificate?

4.) I've read of one workaround whereby you simply change the date on the development PC to a pre-expiration date, publish, and then return your date to normal. Apart from the fact of this being rather clunky, are their any other drawbacks/side-effects of doing this?

5.) Some threads seem to suggest that not only will an expired certificate prevent users from installing new publishings, but it can also prevent the user from running the version of the app currently installed on their PC. Is this correct?

6.) Lastly, some threads seem to indicate that if you can fix the issue with renewcert you are good to go, but if you end up having to install a new certificate that you willalso be obliged to uninstall the original app from all clients before they can successfully install anything published using the new certificate. Is this correct?

Sorry for the long post - I'm just trying to figure out what options I have.

Thank You for any assistance you can offer.

Dale M  Wednesday, December 10, 2008 7:22 PM
You need to checkout my thread telling how I dealtwith this problem.

If you change the certificate, and you are deploying with VS2005, OR any of your users are on Vista and don't have .Net 3.5, they will have to uninstall and reinstall.

EXCEPT that YOU are using a test certificate created from Visual Studio, you lucky devil! So you can actually create a new certificate with the same public token key as the old one, and change the expiration date, thenselect that certificate in Visual Studio for your signing, and you will be good to go.

Check out the parts about using RenewCert in my thread here: If this doesn't give the exact syntax for using it, post back and I will provide it. You can't use the MSFT version of RenewCert -- it doesn't work --but this thread contains a pointer to a page with a working version.

http://social.msdn.microsoft.com/Forums/en-US/winformssetup/thread/1217520d-6dc4-4fb1-83d1-0fa148d60e5d

For others reading this thread, note that if you use MakeCert instead of having VS create a test certificate for you, you can set your own expiration date. MakeCert is in the bin folder under Microsoft SDKs under Program Files.

Post back if you have any more questions.

RobinS.
GoldMail.com
RobinDotNet  Friday, December 12, 2008 9:48 PM
You need to checkout my thread telling how I dealtwith this problem.

If you change the certificate, and you are deploying with VS2005, OR any of your users are on Vista and don't have .Net 3.5, they will have to uninstall and reinstall.

EXCEPT that YOU are using a test certificate created from Visual Studio, you lucky devil! So you can actually create a new certificate with the same public token key as the old one, and change the expiration date, thenselect that certificate in Visual Studio for your signing, and you will be good to go.

Check out the parts about using RenewCert in my thread here: If this doesn't give the exact syntax for using it, post back and I will provide it. You can't use the MSFT version of RenewCert -- it doesn't work --but this thread contains a pointer to a page with a working version.

http://social.msdn.microsoft.com/Forums/en-US/winformssetup/thread/1217520d-6dc4-4fb1-83d1-0fa148d60e5d

For others reading this thread, note that if you use MakeCert instead of having VS create a test certificate for you, you can set your own expiration date. MakeCert is in the bin folder under Microsoft SDKs under Program Files.

Post back if you have any more questions.

RobinS.
GoldMail.com
RobinDotNet  Friday, December 12, 2008 9:48 PM

You can use google to search for other answers

Custom Search

More Threads

• How to do automated build of VS2008 solution by using MSbuild with .Net framework 2.0?
• Setup Project error - can't add files
• How to Create Installer Patches for .net application
• User interface: 2 same dialog?
• Deployment provider URL
• create text file on 'rebuild all'
• "Cannot find keycodev2.dll or invalid keycode"
• Updater Application Block and Win98/ME Clients
• AppUpdater ...using MSI files.
• ActivationUri file://unc_path