Click-Once is not so simple...
thanks in advance,
alex
alex
In order to better understand the issue you're facing, can you post the error portion of the installation log? To access the log, click the 'Details' button on the error dialog that appears on install.
Thanks,
-Patrick Darragh
VB PM
Hi,
Thanks for replying.
Here's the details:
PLATFORM VERSION INFO
Windows : 5.1.2600.131072 (Win32NT)
Common Language Runtime : 2.0.50215.44
System.Deployment.dll : 2.0.50215.44 (beta2.050215-4400)
mscorwks.dll : 2.0.50215.44 (beta2.050215-4400)
dfdll.dll : 8.0.50215.44 (beta2.050215-4400)
dfshim.dll : 2.0.50215.44 (beta2.050215-4400)
SOURCES
Deployment url : file:///C:/DOCUME~1/ALEX/LOCALS~1/TEMP/MyRPG%20Game%20Creator.application
ERROR SUMMARY
Below is a summary of the errors, details of these errors are listed later in the log.
* Activation of C:\DOCUME~1\ALEX\LOCALS~1\TEMP\MyRPG Game Creator.application resulted in exception. Following failure messages were detected:
+ Exception reading manifest from file:///C:/DOCUME~1/ALEX/LOCALS~1/TEMP/MyRPG%20Game%20Creator.application: the manifest could be invalid or the file could not be opened.
+ The manifest has no XML signature.
COMPONENT STORE TRANSACTION FAILURE SUMMARY
No transaction error was detected.
WARNINGS
There were no warnings during this operation.
OPERATION PROGRESS STATUS
* [29 Apr 2005 19:39:48 +01:00] : Activation of C:\DOCUME~1\ALEX\LOCALS~1\TEMP\MyRPG Game Creator.application has started.
ERROR DETAILS
Following errors were detected during this operation.
* [29 Apr 2005 19:39:49 +01:00] System.Deployment.Application.InvalidDeploymentException (ManifestParse)
- Exception reading manifest from file:///C:/DOCUME~1/ALEX/LOCALS~1/TEMP/MyRPG%20Game%20Creator.application: the manifest could be invalid or the file could not be opened.
- Source: System.Deployment
- Stack trace:
at System.Deployment.Application.ManifestReader.FromDocument(String localPath, ManifestType manifestType, Uri sourceUri)
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.DownloadDeploymentManifest(SubscriptionStore subStore, Uri& sourceUri, TempFile& tempFile, IDownloadNotification notification, DownloadOptions options)
at System.Deployment.Application.ApplicationActivator.PerformDeploymentActivation(Uri activationUri, Boolean isShortcut)
at System.Deployment.Application.ApplicationActivator.ActivateDeploymentWorker(Object state)
Inner Exception
System.Deployment.Application.ValidationFailedException (Unknown subtype)
- The manifest has no XML signature.
- Source: System.Deployment
- Stack trace:
at System.Deployment.Application.Manifest.AssemblyManifest.ValidateSignature(Stream s)
at System.Deployment.Application.ManifestReader.FromDocument(String localPath, ManifestType manifestType, Uri sourceUri)
COMPONENT STORE TRANSACTION DETAILS
No transaction information is available.
Alex
If you publish from VS with default settings using the Publish Wizard, the appropriate files will be signed with an auto-gen'd test certificate.
Can you go over the specific steps that you took to publish your application? Also, did you have VS 2005 Beta1 previously installed on your machine?
-Patrick
It is common to experience non-determinstic errors like this after uninstalling Beta1 and installing Beta2. If you haven't already done so already, I would install beta2 on a clean machine (ie, on a machine with a fresh install of Windows).
-Patrick
I am having the same problem as Alex. I did install Beta 2 on a machine that has never had Beta 1 installed on it and still hadthe same error.
Marie
Thanks Marie for adding that feedback. To fully understand what's the root cause, I will need the project that you're experiencing the issue with.
Can you open a bug at http://labs.msdn.microsoft.com/productfeedback/ and attach the project? Make a note in the bug that it should be assigned to 'pdarragh.'
Thanks,
-Patrick
Alex
Hi Alex,
I believe the cause of the problem is that your application name has spaces in the it. There is a known issue in Beta2 that this will cause the ClickOnce manifests to not be signed when published (a requirement for successful install).
Workaround: Remove the spaces from your application name and republish.
Application Event log
Go to your StartMenu -> Control Panel -> Administrative Tools -> Event Viewer -> Application to view the event logs.
ClickOnce Purpose
ClickOnce can be used in many windows client deployment scenarios. It is intended to be a safe installation service with automatic updates back to a server (see: http://msdn.microsoft.com/msdnmag/issues/04/05/ClickOnce/default.aspx)
The main decision point for you is whether your installation is low-impact, or whether it needs to do things like
-set a key/value in the registry
-register a file ext.
-install a driver
-register a globally shared component, etc
These types of operations cannot be done with ClickOnce, and a Windows Installer package would be better suited.
Cheers,
-Patrick Darragh
VB PM
Hi,
Thank you very much for the solution. I'm sure this small bug will be fixed in the final release. The event log viewer is also helpful but for some reason it doesn't show anything to do with VB.NET. Unfortunately, I still have a problem... I hope you can still assist me in solving it, as this is important to me and I would be very grateful.
I tried removing the whitespaces from the application name (there's many places where the name is defined but I'm pretty sure I changed the main ones) and I just get a new error when launching the program from the publish web page but the same error when trying to run the application in release mode. The new error states: "Unable to retrieve application. Files missing in deployment."
This is the error log:
PLATFORM VERSION INFO
Windows : 5.1.2600.131072 (Win32NT)
Common Language Runtime : 2.0.50215.44
System.Deployment.dll : 2.0.50215.44 (beta2.050215-4400)
mscorwks.dll : 2.0.50215.44 (beta2.050215-4400)
dfdll.dll : 8.0.50215.44 (beta2.050215-4400)
dfshim.dll : 2.0.50215.44 (beta2.050215-4400)
SOURCES
Deployment url : file:///C:/DOCUME~1/ALEX/LOCALS~1/TEMP/MyRPG_Game_Creator.application
IDENTITIES
Deployment Identity : MyRPG_Game_Creator.application, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2d42c8a437d355ca, processorArchitecture=msil
APPLICATION SUMMARY
* Installable application.
ERROR SUMMARY
Below is a summary of the errors, details of these errors are listed later in the log.
* Activation of C:\DOCUME~1\ALEX\LOCALS~1\TEMP\MyRPG_Game_Creator.application resulted in exception. Following failure messages were detected:
+ Failed while downloading file:///C:/DOCUME~1/ALEX/LOCALS~1/TEMP/MyRPG_Game_Creator_1_0_0_0/MyRPG_Game_Creator.exe.manifest
+ Could not find a part of the path 'C:\Documents and Settings\Alex\Local Settings\TEMP\MyRPG_Game_Creator_1_0_0_0\MyRPG_Game_Creator.exe.manifest'.
+ Could not find a part of the path 'C:\Documents and Settings\Alex\Local Settings\TEMP\MyRPG_Game_Creator_1_0_0_0\MyRPG_Game_Creator.exe.manifest'.
+ Could not find a part of the path 'C:\Documents and Settings\Alex\Local Settings\TEMP\MyRPG_Game_Creator_1_0_0_0\MyRPG_Game_Creator.exe.manifest'.
COMPONENT STORE TRANSACTION FAILURE SUMMARY
No transaction error was detected.
WARNINGS
There were no warnings during this operation.
OPERATION PROGRESS STATUS
* [03 May 2005 20:03:27 +01:00] : Activation of C:\DOCUME~1\ALEX\LOCALS~1\TEMP\MyRPG_Game_Creator.application has started.
* [03 May 2005 20:03:27 +01:00] : Processing of deployment manifest has successfully completed.
* [03 May 2005 20:03:27 +01:00] : Installation of the application has started.
ERROR DETAILS
Following errors were detected during this operation.
* [03 May 2005 20:03:27 +01:00] System.Deployment.Application.DeploymentDownloadException (Unknown subtype)
- Failed while downloading file:///C:/DOCUME~1/ALEX/LOCALS~1/TEMP/MyRPG_Game_Creator_1_0_0_0/MyRPG_Game_Creator.exe.manifest
- 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.DownloadManifest(Uri& sourceUri, String targetPath, IDownloadNotification notification, DownloadOptions options, ManifestType manifestType, ServerInformation& serverInformation)
at System.Deployment.Application.DownloadManager.DownloadApplicationManifest(AssemblyManifest deploymentManifest, String targetDir, Uri deploymentUri, IDownloadNotification notification, DownloadOptions options, 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)
at System.Deployment.Application.ApplicationActivator.ActivateDeploymentWorker(Object state)
Inner Exception
System.Net.WebException
- Could not find a part of the path 'C:\Documents and Settings\Alex\Local Settings\TEMP\MyRPG_Game_Creator_1_0_0_0\MyRPG_Game_Creator.exe.manifest'.
- Source: System
- Stack trace:
at System.Net.FileWebRequest.EndGetResponse(IAsyncResult asyncResult)
at System.Net.FileWebRequest.GetResponse()
at System.Deployment.Application.SystemNetDownloader.DownloadSingleFile(DownloadQueueItem next)
Inner Exception
System.Net.WebException
- Could not find a part of the path 'C:\Documents and Settings\Alex\Local Settings\TEMP\MyRPG_Game_Creator_1_0_0_0\MyRPG_Game_Creator.exe.manifest'.
- Source: System
- Stack trace:
at System.Net.FileWebResponse..ctor(Uri uri, FileAccess access, Boolean asyncHint)
at System.Net.FileWebRequest.WrappedGetResponseCallback(Object state)
Inner Exception
System.IO.DirectoryNotFoundException
- Could not find a part of the path 'C:\Documents and Settings\Alex\Local Settings\TEMP\MyRPG_Game_Creator_1_0_0_0\MyRPG_Game_Creator.exe.manifest'.
- Source: mscorlib
- Stack trace:
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, Boolean useAsync)
at System.Net.FileWebStream..ctor(String path, FileMode mode, FileAccess access, FileShare sharing, Int32 length, Boolean async)
at System.Net.FileWebResponse..ctor(Uri uri, FileAccess access, Boolean asyncHint)
COMPONENT STORE TRANSACTION DETAILS
No transaction information is available.
I hope you can understand this better than me.
Thanks again,
Alex
Alex
I'm sorry to hear that didn't work out for you right away. The only place you need to change is the name of the assemblies in your application.
I would revert the name changes you did previously, and proceed w/ this:
Foreach assembly that makes up your app
if the assembly has spaces in the name then
1. Right-click associated project root node in solution explorer
2. Select Properties
3. On application, remove spaces from value in the Assembly Name field
end if
end foreach
I would then un-install the application from your target machine and clear the publish location of old publish output. Re-publish your app & re-install it to the target machine. Let me know if this works ..
As for the other issue that you're having in the IDE, can you provide any more details (eg, what are the error/warning messages in the error pane?, what's in the output window?)
Thanks,
-Patrick
VB PM
This application has failed to start because the application configuration is incorrect. Review the manifest file for possible errors. Reinstalling the application may fix this problem. For more details, please see the application event log.
--
The solution builds perfectly, but I can't actually RUN the application. I get the error shown above when I try to run the EXE from the IDE or explorer.
Hopefully this will clairfy it again...
Thanks,
Alex
Alex
I tried to remove all the empty spaces in the name of the project, and even created a brand new project from scratch with no blank spaces anywhere just to be sure that the problem was not that. Didn't help, I can run the application from within Visual C# but as soon as I try to publish I get the same error message you got, with the xml sig "unsigned".
I hope someone picks up the discussion again so I can see the solution, it's interesting that it is not specific to Visual Basic.
Hi Azriel,
The issue is caused by having spaces in the name of the assemblies that make up the application. If you ensure that this is the case, then your project should publish without signing errors.
Cheers,
-Patrick
Visual Studio 2005 will create a test publish.htm page that has a link to your .applicaotin file, and display it after publishing completes. To enable this behaviour do the following:
1. Open the project designer (right-click on your project in the designer and select 'Properties')
2. Go to the 'Publish' tab
3. Select the 'Options' button
4. Check the 'Automatically generate deployment web page on every publish'
Cheers,
-Patrick
.manifest text/xml
.deploy application/ocetet-stream
Hope it could be helpful. ![]()
Frank Zhang wrote:
I have solved this problem by adding MIME mappings on the Virtual machine. .manifest text/xml
.deploy application/ocetet-streamHope it could be helpful.
.manifest text/xml
.deploy application/ocetet-stream
Should be:
.manifest text/xml
.deploy application/octet-stream
I got tired of trying to get my small slideshow application
to work...in the end i just renamed the generated .exe.deploy file
to .exe and send it off to my users. it works beautifully....because
the only files needed on the destination computer is the .NET
framework dlls.
cheers