前提条件Setup.exe的错误URL单击VS 2008 [英] Error URL for Prerrequisites Setup.exe Click Once VS 2008

查看:86
本文介绍了前提条件Setup.exe的错误URL单击VS 2008的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我遇到了麻烦:

我正在使用VS 2008 Team Suite,并且我拥有WinForms csproj。我要使用ClickOnce进行发布。

I am using VS 2008 Team Suite, and I have WinForms csproj. I want Publish it using ClickOnce.

在csproj的发布属性中,我具有以下值:

In Publish Properties of csproj, I have these values:


发布文件夹位置(网站,
ftp服务器或文件路径):
C:\ClickOnce\Frk.Security.CarWin.WebInstall\Publicacion\

Publishing Folder Location (web site, ftp server, or file path): C:\ClickOnce\Frk.Security.CarWin.WebInstall\Publicacion\

安装文件夹URL(如果与上面的
不同):
http:// CHANGETHESERVER / carwinclickonce / Publicacion /

Installation Folder URL (if different than above): http://CHANGETHESERVER/carwinclickonce/Publicacion/

发布版本:1.0.0.0

Publish Version: 1.0.0.0

先决条件:Windows Installer 3.1,
.NET35。sp1

Prerrequisites: Windows Installer 3.1, .NET 35. sp1

现在,我发布了,一切都OK。我需要将我的应用程序部署到多台计算机(开发,预生产,生产环境...),然后使用Msbuild ...

Now, I publish and all is OK. I need deploy my app to several machines (Development, Preproduction, production environments...), and I use Msbuild...

<Microsoft.Sdc.Tasks.Folder.CopyFolder
    Source="Publicacion"
    Destination="$(Directorio_Destination)\Publicacion" />

我复制 C:\ClickOnce\Frk.Security.CarWin。 WebInstall\Publicacion\ 到另一台计算机的文件夹中(此文件夹是网站的根目录)

I copy C:\ClickOnce\Frk.Security.CarWin.WebInstall\Publicacion\ to another machine, in folder (this folder is root of a Web Site)

\\desiis\c$\Webs\carwinclickonce\Publicacion\ 

http:// desiis / carwinclickonce / Publicacion /

我这样使用MSBUILD和Mage;变量$(ProviderUrl)= http:// desiis / carwinclickonce / Publicacion /

I use MSBUILD and Mage like this; variable $(ProviderUrl) = http://desiis/carwinclickonce/Publicacion/

<Target Name="PublishClickOnce">
    <Exec Command="$(Mage) -u $(PublishDir)\Frk.Security.CarWin.application -pu $(ProviderUrl)" />

    <Exec Command="$(Mage) -u $(PublishDir)\Frk.Security.CarWin.application -cf $(CertDir)\Frk.Security.CarWin_TemporaryKey.pfx" />
  </Target>

现在,我的publish.htm在 http://desiis/carwinclickonce/Publicacion/publish.htm

Now, I have my publish.htm in http://desiis/carwinclickonce/Publicacion/publish.htm.

有两个安装应用程序的链接:
1.) http:// desiis / Carwinclickonce / Publicacion / Frk.Security.CarWin.application

There are two links to install application: 1. ) http://desiis/Carwinclickonce/Publicacion/Frk.Security.CarWin.application

此选项的所有设置都可以。

Everything is OK for this option.


  1. http:// desiis / Carwinclickonce / Publicacion / Setup .exe

  1. ) http://desiis/Carwinclickonce/Publicacion/Setup.exe

此选项会出错!

错误如下:


错误的故意除臭
' http://CHANGETHESERVER/carwinclickonce/Publicacion/Frk.Security.CarWin.application
(尝试下载
'http .... Frk.Security.CarWin.application'时失败)

Error al intentar descargar 'http://CHANGETHESERVER/carwinclickonce/Publicacion/Frk.Security.CarWin.application'. (FAILS when try download 'http....Frk.Security.CarWin.application')

Vea el archivo de registro de la
安装$ en $ en
'C:\DOCUME〜1\xxxxxx\CONFIG〜1\Temp\VSD5B7.tmp\install.log'
查看更多

Vea el archivo de registro de la instalación que se encuentra en 'C:\DOCUME~1\xxxxxx\CONFIG~1\Temp\VSD5B7.tmp\install.log' para obtener más información.

install.log内容:

install.log contents:


已设置以下属性
:属性:[AdminUser] = true
{boolean}属性:
[ProcessorArchitecture] =英特尔
{string}属性:[VersionNT] = 5.1.3
{version}运行检查包
'Windows Installer 3.1',阶段

The following properties have been set: Property: [AdminUser] = true {boolean} Property: [ProcessorArchitecture] = Intel {string} Property: [VersionNT] = 5.1.3 {version} Running checks for package 'Windows Installer 3.1', phase

BuildList以下属性
具有已为软件包 Windows
Installer 3.1设置:运行
命令
WindowsInstaller3_1\WindowsInstaller-KB893803-v2-x86.exe的运行检查
运行运算符$ b的结果
属性 VersionMsi和值 3.1上的$ b'VersionGreaterThanOrEqualTo':
true命令
的检查结果'WindowsInstaller3_1\WindowsInstaller-KB893803-v2-x86.exe'
是'Bypass''Windows Installer 3.1'
RunCheck结果:无需安装

BuildList The following properties have been set for package 'Windows Installer 3.1': Running checks for command 'WindowsInstaller3_1\WindowsInstaller-KB893803-v2-x86.exe' Result of running operator 'VersionGreaterThanOrEqualTo' on property 'VersionMsi' and value '3.1': true Result of checks for command 'WindowsInstaller3_1\WindowsInstaller-KB893803-v2-x86.exe' is 'Bypass' 'Windows Installer 3.1' RunCheck result: No Install Needed

启动应用程序。
URLDownloadToCacheFile失败,并出现
HRESULT'-2146697211'错误:错误al
intentar descargar
' http://CHANGETHESERVER/carwinclickonce/Publicacion/Frk.Security.CarWin.application
(尝试下载
'http .... Frk.Security.CarWin.application'时失败)

Launching Application. URLDownloadToCacheFile failed with HRESULT '-2146697211' Error: Error al intentar descargar 'http://CHANGETHESERVER/carwinclickonce/Publicacion/Frk.Security.CarWin.application'. (FAILS when try download 'http....Frk.Security.CarWin.application')

有什么想法吗?我可以使用Mage.exe命令吗?如何修改setup.exe?

Any ideas? Can I use Mage.exe commands? How can I modify setup.exe?

更新:

使用msbuild来使用setup -url = http:// desiis / ....

use msbuild for using setup -url=http://desiis/....

<Exec Command="$(PublishDir)\setup -url=$(ProviderUrl)" />

另一个问题是使用/ url开关更改URL后,出现一个消息框

Another problem is that after using the /url switch to change out the URL, a message box appears for manually confirming that the signature will be invalided for the assembly.


  1. 如何使用setup -url = http:// ...静默模式?

  2. 如何再次签名setup.exe?

我的msbuild

<Target Name="PublishClickOnce">

<Exec Command="$(PublishDir)\setup -url=$(ProviderUrl)" /> 
<Exec Command="$(Mage) -u $(PublishDir)\Frk.Security.CarWin.application -pu $(ProviderUrl)" /> 
<Exec Command="$(Mage) -u $(PublishDir)\Frk.Security.CarWin.application -cf $(CertDir)\Frk.Security.CarWin_TemporaryKey.pfx" /> 

</Target>


推荐答案

为澄清起见,ClickOnce可以工作。您的问题是Visual Studio生成用于安装必备组件的setup.exe引导程序文件。您使用伪造的服务器名称(CHANGETHESERVER),然后根据要部署到的服务器对其进行更改。可以很容易地为.application文件更改服务器名称,但是您不确定如何修复setup.exe文件,因为它尝试启动 http安装先决条件后:: // CHANGETHESERVER / ...。这一切正确吗?

To clarify, ClickOnce works. Your problem is with the setup.exe bootstrapper file that Visual Studio generates to install prerequisites. You use a bogus server name (CHANGETHESERVER) and change it later depending on what server you deploy to. The server name can easily be changed for the .application file but you're unsure how to fix the setup.exe file since it tries to launch http://CHANGETHESERVER/... after installs the prereqs. Is all this correct?

我不确定如何更新setup.exe文件以指向正确的URL。但是,我不必担心对其进行更新。我将转到Visual Studio,将 CHANGETHESERVER更改为实际的服务器(例如您的开发服务器),然后发布。生成的setup.exe非常适合您使用的服务器。保留该.exe的副本,然后对其他服务器(质量检查,生产等)再次执行该过程。将服务器特定的文件部署到每台服务器上就完成了。

I'm not sure how to update your setup.exe file to point to the proper url. However, I wouldn't worry about updating it. I would go to Visual Studio, change "CHANGETHESERVER" to an actual server (like your Development server), and publish. The setup.exe that's generated will be good for the server you used. Keep a copy of that .exe and do the process again for your other servers (QA, Production, etc.). Deploy the server specific files to each server and you're done.

除非您添加/删除了先决条件,否则setup.exe文件不会改变。每次部署时都不需要生成和部署新的。

The setup.exe files aren't going to change unless you're adding/removing prerequisites. There's no need to generate and deploy a new one every time you deploy.

这篇关于前提条件Setup.exe的错误URL单击VS 2008的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆