Published Application won't run

robertb_NZ

Well-known member
Joined
May 11, 2010
Messages
146
Location
Auckland, New Zealand
Programming Experience
10+
I have developed a VB application (called "Jazz") using VS2010, and .NET 4.0. I have previously successfully published this as a click-once, but I can't publish the latest version (1.13.1.67).

It runs perfectly using the VS debugger.

When I publish the application, there are no error or warning messages from the build, and all the expected objects are created in the target folder which is within the test (local) version of my web site. These objects are: Jazz.application, publish.htm, setup.exe, and in the /Application folder there is a subfolder Jazz_1_13_1_67. This subfolder contains the objects that I'd expect: Jazz.application, Jazz.exe.manifest, and several ...deploy files.

When the Publish process is completed publish.htm is displayed. When I click [Install] a window appears "Verifying application requirements. This may take a few moments", followed by "Application cannot be started. Contact the application vendor". Clicking [Details] here indicates the following error: -
ERROR DETAILS
Following errors were detected during this operation.
* [25/04/2015 9:53:45 p.m.] System.Net.WebException
- The remote server returned an error: (500) Internal Server Error.
The full display from [Details] is below.

What should I change?

Thank you for your attention,
Regards,
Robert.

Full error display: -
PLATFORM VERSION INFO
Windows : 6.1.7601.65536 (Win32NT)
Common Language Runtime : 4.0.30319.1026
System.Deployment.dll : 4.0.30319.1029 (RTMGDR.030319-1000)
clr.dll : 4.0.30319.1026 (RTMGDR.030319-1000)
dfdll.dll : 4.0.30319.1029 (RTMGDR.030319-1000)
dfshim.dll : 4.0.31106.0 (Main.031106-0000)

SOURCES
Deployment url : Log In
Server : Microsoft-IIS/8.5
X-Powered-By : ASP.NET
Deployment Provider url : Log In

IDENTITIES
Deployment Identity : Jazz.application, Version=1.13.1.67, Culture=neutral, PublicKeyToken=0baa7b1f27a7ad25, processorArchitecture=x86

APPLICATION SUMMARY
* Installable application.
* Trust url parameter is set.
ERROR SUMMARY
Below is a summary of the errors, details of these errors are listed later in the log.
* Activation of Log In resulted in exception. Following failure messages were detected:
+ The remote server returned an error: (500) Internal Server Error.

COMPONENT STORE TRANSACTION FAILURE SUMMARY
No transaction error was detected.

WARNINGS
There were no warnings during this operation.

OPERATION PROGRESS STATUS
* [25/04/2015 9:53:22 p.m.] : Activation of Log In has started.
* [25/04/2015 9:53:22 p.m.] : Processing of deployment manifest has successfully completed.
* [25/04/2015 9:53:22 p.m.] : Installation of the application has started.

ERROR DETAILS
Following errors were detected during this operation.
* [25/04/2015 9:53:45 p.m.] System.Net.WebException
- The remote server returned an error: (500) Internal Server Error.
- Source: System
- Stack trace:
at System.Net.HttpWebRequest.GetResponse()
at System.Xml.XmlDownloadManager.GetNonFileStream(Uri uri, ICredentials credentials, IWebProxy proxy, RequestCachePolicy cachePolicy)
at System.Xml.XmlUrlResolver.GetEntity(Uri absoluteUri, String role, Type ofObjectToReturn)
at System.Xml.XmlTextReaderImpl.OpenAndPush(Uri uri)
at System.Xml.XmlTextReaderImpl.PushExternalEntityOrSubset(String publicId, String systemId, String baseUriStr, Uri& baseUri, String entityName)
at System.Xml.XmlTextReaderImpl.DtdParserProxy_PushExternalSubset(String systemId, String publicId)
at System.Xml.DtdParser.ParseExternalSubset()
at System.Xml.DtdParser.Parse(Boolean saveInternalSubset)
at System.Xml.DtdParser.System.Xml.IDtdParser.ParseInternalDtd(IDtdParserAdapter adapter, Boolean saveInternalSubset)
at System.Xml.XmlTextReaderImpl.ParseDtd()
at System.Xml.XmlTextReaderImpl.ParseDoctypeDecl()
at System.Xml.XmlTextReaderImpl.ParseDocumentContent()
at System.Deployment.Application.ManifestValidatingReader.XmlFilteredReader.Read()
at System.Xml.XmlCharCheckingReader.Read()
at System.Xml.XsdValidatingReader.Read()
at System.Deployment.Application.ManifestReader.FromDocument(String localPath, ManifestType manifestType, Uri sourceUri)
at System.Deployment.Application.DownloadManager.DownloadApplicationManifest(AssemblyManifest deploymentManifest, String targetDir, Uri deploymentUri, IDownloadNotification notification, DownloadOptions options, Uri& appSourceUri, String& appManifestPath)
at System.Deployment.Application.DownloadManager.DownloadApplicationManifest(AssemblyManifest deploymentManifest, String targetDir, Uri deploymentUri, Uri& appSourceUri, String& appManifestPath)
at System.Deployment.Application.ApplicationActivator.DownloadApplication(SubscriptionState subState, ActivationDescription actDesc, Int64 transactionId, TempDirectory& downloadTemp)
at System.Deployment.Application.ApplicationActivator.InstallApplication(SubscriptionState& subState, ActivationDescription actDesc)
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)

COMPONENT STORE TRANSACTION DETAILS
No transaction information is available.
 

jmcilhinney

VB.NET Forum Moderator
Staff member
Joined
Aug 17, 2004
Messages
14,381
Location
Sydney, Australia
Programming Experience
10+
It sounds like you have messed up the publishing configuration and have it set to connect to some web address that doesn't exist. Check where you have it configured to install from and also where to get updates from.
 

robertb_NZ

Well-known member
Joined
May 11, 2010
Messages
146
Location
Auckland, New Zealand
Programming Experience
10+
jmcilhinney, thank you for your help (again!).

I can't see anything obviously wrong with the publishing configuration. I am publishing to a file location on my laptop, then FTP to the web site. Both the file location and the web site exist. The file location is
C:\Users\Advanced Computers\Documents\Visual Studio 2010\Projects\JazzSoftware\Jazz\
and the Installation Folder URL is (without the quotes)
"http://www.jazzsoftware.co.nz/Jazz/"

I tried clearing the textbox "Installation folder URL". The publish wizard then continues expecting the application to be installed from a CD, and not updated, and terminates with Windows Explorer showing the publication objects. When I clicked setup.exe this didn't work at first, with a message that the application was already installed at another location, but I uninstalled it with the control panel, and then setup.exe worked correctly.

I uninstalled Jazz (Control panel), then I went back to the earlier setup, with installation folder URL as above. I got the same results as before (application doesn't start, detail shows Server Error 500). I tried navigating to the local folder and clicking setup.exe: this also failed with Server Error 500.

So: If I publish with nothing as "Installation folder URL" I can click setup.exe and it all works. If I give a valid URL then I get this error when I click setup.exe, as well as when I attempt to download the application from the web site. I don't understand how any problems with the Installation Folder URL can affect clicking setup.exe from the original file folder.

What do you suggest I try next?

Regards, Robert
 

robertb_NZ

Well-known member
Joined
May 11, 2010
Messages
146
Location
Auckland, New Zealand
Programming Experience
10+
Problem Sorted

The issue: the "Install from" folder was protected by a Web.config file that kept out non-authenticated users with this: -
<system.web>
<authorization>
<deny users="?"/>​
</authorization>​
</system.web>

This may not have mattered before when the web site was hosted on a site using SBS2003 and an earlier release of IIS but the web site has been re-hosted by Amazon, and now has the latest Microsoft environment. I think that one of the changes in the technology leap is that IIS can now enforce "needs authentication" for all types of objects, whereas with the earlier version this was enforced only for .aspx pages. Anyway, I removed the web.config from the folder, and click-once now works as it should.
 
Top Bottom