当前位置:  开发笔记 > 编程语言 > 正文

如何移动ClickOnce部署包

如何解决《如何移动ClickOnce部署包》经验,为你挑选了2个好方法。

我在网络驱动器上的发布文件夹中有一组ClickOnce软件包,需要将它们全部移动到另一台服务器(我们的DR机器).

复制/粘贴整个目录并在新机器上运行安装程序后,我收到一条错误消息,指出它无法找到旧路径:

激活... MyClickOnceApp.application导致异常.检测到以下失败消息:

+正在下载文件://oldMachine/c$/MyClickOnceApp.application未成功.

+无法找到路径'\\ oldMachine\c $\MyClickOnceApp.application'的一部分.

一旦我将安装URL更改为指向我的新机器,我就会收到另一个错误:

清单XML签名无效.

+对象的数字签名未验证.

我已经尝试使用MageUI.exe来修改部署URL,但它要求提供我没有的证书.

我做错了什么以及如何成功移动已发布的ClickOnce软件包?



1> HAdes..:

我找到了解决方案:

首先,使用MageUI,我更改了"部署选项"下的"开始位置".在保存时,它促使我使用我在那里创建的密钥进行签名.然后我运行了setup.exe文件,它确实运行了.

检查哪些文件已更改后,我意识到它只是一个文件:应用程序清单文件(myAppName.application).文件中唯一发生变化的是部署提供程序签名(这是我在MageUI中更改的内容).

一旦我意识到这是怎么做的,我Mage.exe就使用了SDK附带的MageUI命令行版本.

下面是我在命令行上创建的所有批处理文件:

REM设置环境
调用"C:\ Program Files\Microsoft Visual Studio 9.0\VC\vcvarsall.bat"

REM更新部署提供程序URL
mage -Update%1.application -pu%2

REM用我们的关键
法师签署清单-Sign%1.application -CertFile C:\ AppKey.pfx -Password myPw

我现在可以使用它以快速简便的方式运行我所有已发布的应用程序.我希望这有帮助.



2> codeConcussi..:

没有太多细节,这应该让你去.

出于安全原因,必须使用证书对ClickOnce清单进行签名.您可以购买代码签名证书或生成测试证书.测试证书的主要缺点是您的应用程序发布者将显示为"未知"而不是您公司的名称.

在Visual Studio中,打开项目的属性并转到"签名"选项卡,选择"签署ClickOnce清单"和"创建测试证书".接下来,单击"更多详细信息"以打开一个对话框,然后单击"安装证书".这将指导您完成向导以在您的商店中获取测试证书.确保将其放在"个人"商店中.

现在您可以使用MageUI编辑清单.任何时候保存它都会提示您签署清单,但您现在应该可以选择刚刚存储的测试证书.在编辑/签署部署清单之前,始终编辑/签署应用程序清单.这很令人困惑,因为应用程序清单不是具有.application扩展名的文件.

祝好运!

推荐阅读
手机用户2402852387
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有