2008-11-11 3 views
20

Мне нужно внести некоторые изменения в приложение ClickOnce, которое я не коснулся больше года, и поэтому срок действия сертификата истек.Как я могу продлить мой сертификат ClickOnce с истекшим сроком действия?

Я читал, что публикация с новым сертификатом приведет к сбою приложения, поскольку он будет подписан другим ключом.

Поэтому я думаю, что мне нужно использовать тот же сертификат, но не знаю, как его продлить.

ответ

11

Если вы после быстрого решения, вы можете «обновить» существующий сертификат и просто дать ему более длительный срок действия.

Cliff Stanford очистил «обходной путь» Microsoft и сделал его доступным в виде простой командной строки exe - доступно здесь: http://may.be/renewcert/ - Хорошая работа Cliff!

+5

Есть пара проблем с этим, только FYI. Можете проверить это. http://robindotnet.wordpress.com/2010/01/26/how-to-extend-an-existing-certificate-even-if-it-has-expired/ – RobinDotNet 2011-02-08 06:38:46

+2

Я знаю это старое, но это (довольно смешно) все еще проблема. Что делать, если сотрудник уже создал новый сертификат (таким образом, «продлевается» на один год), но когда мы отправляемся на публикацию, он предупреждает об изменении подписи. Это огромная проблема, поскольку после изменения подписи клиенты больше не могут получать обновления: «Не удается обновить приложение. Обратитесь к поставщику». или что-то. И если они снова установит его вручную, он создаст значки/ссылки «Имя -1». – Keith 2015-04-09 15:21:04

1

Если я правильно помню, я столкнулся с той же проблемой и просто создал новый сертификат.

Я думаю, что автоматическое обновление сломалось между этими версиями, но не было долговременного ущерба. Возможно, это помогло, что мое приложение предназначено только для внутреннего использования, поэтому мне не нужен надлежащим образом подписанный сертификат.

1

В принципе, вам необходимо создать приложение, чтобы продлить срок действия вашего сертификата. Ссылки, приведенные выше, приведут вас к исходному коду C++ для приложения. Если вам повезет и просто подписал это самостоятельно, это может сработать. Если вы использовали Verisign и т. Д., Чтобы подписать его, вы являетесь SOL. Вам нужно будет удалить и переустановить каждое приложение. Это похоже на то, что вы покупаете новый автомобиль, который двигает двигатель, и производитель дает вам книгу о перестройке двигателей вместо замены или фиксации. ClickOnce нет.

7

Вот окончательная статья MSDN об истечении срока действия сертификата, которая также включает ссылку на обновление на RenewCert. http://msdn.microsoft.com/en-us/library/ff369721.aspx Это охватывает все случаи.

Если вы настроили таргетинг на .NET 3.5, используя автоматические обновления и не имеете приложения VSTO, или вы планируете использовать .NET 4, изменение сертификата не вызовет каких-либо проблем.

Смежные вопросы