开发者

Issue with click-once deployment in MS Visual Studio C# 2008 Express Edition

I have an application which I have been deploying releases for over a year now. I have no issues building the appl开发者_Python百科ication, but today, when I tried to publish it, I got the following error:

An error occurred while signing: Failed to sign bin\Release\app.publish\\setup.exe. SignToolError:
ISignedCode::Sign returned error: 0x80880253
    The signer's certificate is not valid for signing.
SignToolError: An error occurred while attempting to sign: bin\Release\app.publish\\setup.exe

I checked an I have the .NET 3.5 Framework with SP1. I'm not sure why this suddenly stopped working, unless some certificate I had was only valid for one year, and it's been a year since I first installed VS 2008. However, I was able to publish as recently as last week, so it's got to be something that changed this week.

What certificate is it that may have expired, and how do I go about updating it with a new certificate?


This helped me out of the same situation:

http://may.be/renewcert/

It supposedly only happens with VS2005, but, like you, I had this happen with a .NET 3.5 SP1 project that I had been deploying from VS2008 for a year. Maybe it was using a cert that was created when/if I had VS2005 installed on this machine previously (don't remember).

The fix is a pain, because you have to download VC++ Express to compile the project, but in my case it was worth it to prevent having to ask 80 users to uninstall and reinstall the application. Now I'm good until 2014.


If you're in an Active Directory environment (most of us .NET developers are) then you should be able to request a Code Signing certificate from the domain controller using certmgr.msc.

If you don't have a trusted CA then I wouldn't bother signing the code at all.

You can find the signing settings in the project properties, one or two tabs above the Publish tab - that's where you can choose whether or not to sign the ClickOnce manifests also and/or the assembly itself. That's where your presently-expired certificate is likely referenced.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜