我阅读了一些关于如何进行ClickOnce部署的文档,现在我正在尝试部署一个hello world应用程序。
我有一个WPF默认应用程序(只是一个空窗口)。
这就是我的所作所为:
http://localhost:6507/publish.htm
,如下所示:
日志是:
The following properties have been set:
Property: [AdminUser] = true {boolean}
Property: [InstallMode] = HomeSite {string}
Property: [NTProductType] = 1 {int}
Property: [ProcessorArchitecture] = AMD64 {string}
Property: [VersionNT] = 6.2.0 {version}
Running checks for package 'Microsoft .NET Framework 4.5 (x86 and x64)', phase BuildList
Reading value 'Version' of registry key 'HKLM\Software\Microsoft\NET Framework Setup\NDP\v4\Full'
Read string value '4.5.50938'
Setting value '4.5.50938 {string}' for property 'DotNet45Full_TargetVersion'
The following properties have been set for package 'Microsoft .NET Framework 4.5 (x86 and x64)':
Property: [DotNet45Full_TargetVersion] = 4.5.50938 {string}
Running checks for command 'DotNetFX45\dotNetFx45_Full_x86_x64.exe'
Result of running operator 'ValueEqualTo' on property 'InstallMode' and value 'HomeSite': true
Result of checks for command 'DotNetFX45\dotNetFx45_Full_x86_x64.exe' is 'Bypass'
Running checks for command 'DotNetFX45\dotNetFx45_Full_setup.exe'
Result of running operator 'ValueNotEqualTo' on property 'InstallMode' and value 'HomeSite': false
Result of running operator 'VersionGreaterThanOrEqualTo' on property 'DotNet45Full_TargetVersion' and value '4.5.50709': true
Result of checks for command 'DotNetFX45\dotNetFx45_Full_setup.exe' is 'Bypass'
'Microsoft .NET Framework 4.5 (x86 and x64)' RunCheck result: No Install Needed
Launching Application.
URLDownloadToCacheFile failed with HRESULT '-2146697208'
Error: An error occurred trying to download `http://agarwaen-pc:6507/WpfApplication1.application`.
我坚持这个因为它是一个Hello World示例并且无法正常工作。我需要部署一个更复杂的项目。 任何帮助将不胜感激。 提前谢谢。
PD:我认为错误的原因可能是我正在使用的服务器。我的意思是我只指向一个包含发布页面的项目,然后右键单击在浏览器中显示以启动ISS服务器。也许安装程序无法下载所需的文件,因为服务器不能为这些文件提供服务。
修改 我转移到ISS的Express版本,现在 setup.exe 文件下载成功。现在,当应用程序尝试下载剩余文件时,我收到另一个下载错误。消息显示无法建立连接,因为目标计算机主动拒绝
消息是:
PLATFORM VERSION INFO
Windows : 6.2.9200.0 (Win32NT)
Common Language Runtime : 4.0.30319.18408
System.Deployment.dll : 4.0.30319.17929 built by: FX45RTMREL
clr.dll : 4.0.30319.18408 built by: FX451RTMGREL
dfdll.dll : 4.0.30319.17929 built by: FX45RTMREL
dfshim.dll : 4.0.41209.0 (Main.041209-0000)
SOURCES
Deployment url : http://agarwaen-pc/WpfApplication1.application
Server : Microsoft-IIS/8.0
Deployment Provider url : http://agarwaen-pc:6507/WpfApplication1.application
ERROR SUMMARY
Below is a summary of the errors, details of these errors are listed later in the log.
* Activation of http://agarwaen-pc/WpfApplication1.application resulted in exception. Following failure messages were detected:
+ Downloading http://agarwaen-pc:6507/WpfApplication1.application did not succeed.
+ Unable to connect to the remote server
+ No connection could be made because the target machine actively refused it 10.6.53.219:6507
COMPONENT STORE TRANSACTION FAILURE SUMMARY
No transaction error was detected.
WARNINGS
There were no warnings during this operation.
OPERATION PROGRESS STATUS
* [4/25/2014 12:15:27 AM] : Activation of http://agarwaen-pc/WpfApplication1.application has started.
ERROR DETAILS
Following errors were detected during this operation.
* [4/25/2014 12:15:33 AM] System.Deployment.Application.DeploymentDownloadException (Unknown subtype)
- Downloading http://agarwaen-pc:6507/WpfApplication1.application did not succeed.
- Source: System.Deployment
- Stack trace:
at System.Deployment.Application.SystemNetDownloader.DownloadSingleFile(DownloadQueueItem next)
at System.Deployment.Application.SystemNetDownloader.DownloadAllFiles()
at System.Deployment.Application.FileDownloader.Download(SubscriptionState subState)
at System.Deployment.Application.DownloadManager.DownloadManifestAsRawFile(Uri& sourceUri, String targetPath, IDownloadNotification notification, DownloadOptions options, ServerInformation& serverInformation)
at System.Deployment.Application.DownloadManager.DownloadManifest(Uri& sourceUri, String targetPath, IDownloadNotification notification, DownloadOptions options, ManifestType manifestType, ServerInformation& serverInformation)
at System.Deployment.Application.DownloadManager.DownloadDeploymentManifestDirect(SubscriptionStore subStore, Uri& sourceUri, TempFile& tempFile, IDownloadNotification notification, DownloadOptions options, ServerInformation& serverInformation)
at System.Deployment.Application.DownloadManager.FollowDeploymentProviderUri(SubscriptionStore subStore, AssemblyManifest& deployment, Uri& sourceUri, TempFile& tempFile, IDownloadNotification notification, DownloadOptions options)
at System.Deployment.Application.DownloadManager.DownloadDeploymentManifestBypass(SubscriptionStore subStore, Uri& sourceUri, TempFile& tempFile, SubscriptionState& subState, IDownloadNotification notification, DownloadOptions options)
at System.Deployment.Application.ApplicationActivator.PerformDeploymentActivation(Uri activationUri, Boolean isShortcut, String textualSubId, String deploymentProviderUrlFromExtension, BrowserSettings browserSettings, String& errorPageUrl)
at System.Deployment.Application.ApplicationActivator.ActivateDeploymentWorker(Object state)
--- Inner Exception ---
System.Net.WebException
- Unable to connect to the remote server
- Source: System
- Stack trace:
at System.Net.HttpWebRequest.GetResponse()
at System.Deployment.Application.SystemNetDownloader.DownloadSingleFile(DownloadQueueItem next)
--- Inner Exception ---
System.Net.Sockets.SocketException
- No connection could be made because the target machine actively refused it 10.6.53.219:6507
- Source: System
- Stack trace:
at System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)
at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception)
COMPONENT STORE TRANSACTION DETAILS
No transaction information is available.
答案 0 :(得分:4)
这是ClickOnce部署的一般问题。您无法将ClickOnce应用程序发布到您的localhost并从那里下载。我认为问题在于一些内部Windows DNS /名称解析,它将localhost
转换为your-pc:1234
- 始终。几个月前我遇到了同样的问题,因为我试图将我的应用程序发布到localhost。到目前为止,我找不到任何解决方法。在本地,您需要部署为脱机包。您只能使用实际在线的服务器进行在线部署(从http://...
更新)。不过,您可能会尝试使用UNC路径(如\\ServerInNetwork\Deployment\
)来测试更新过程。
UNC和Web之间的更新行为是相同的。
可以帮助你的另一个topic。