Uno de nuestros usuarios tiene un problema muy grave con ClickOnce. El error es clásico:FileNotFoundException durante la instalación de ClickOnce, falta HKCU Software Classes Software
Following errors were detected during this operation. * [14/10/2011 01:40:25] System.IO.FileNotFoundException
- The system cannot find the file specified. (Exception from HRESULT: 0x80070002)
- Source: System.Deployment
- Stack trace:
at System.Deployment.Internal.Isolation.IsolationInterop.GetUserStore(UInt32 Flags, IntPtr hToken, Guid& riid)
at System.Deployment.Internal.Isolation.IsolationInterop.GetUserStore()
at System.Deployment.Application.ComponentStore..ctor(ComponentStoreType storeType, SubscriptionStore subStore)
at System.Deployment.Application.SubscriptionStore..ctor(String deployPath, String tempPath, ComponentStoreType storeType)
at System.Deployment.Application.SubscriptionStore.get_CurrentUser()
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)
Pero ninguna de las soluciones tradicionales funcionó. Tratamos:
- carpetas y archivos en Eliminar relacionada manifiesta a la aplicación
- Eliminar 2.0 carpeta
- Borrar carpeta de aplicaciones
- Run mago -cc
- Kill dfsvc.exe y vuelva a intentarlo (dfsvc se carga cada vez que falla)
Publiqué una aplicación helloworld en .NET 3.5 y .NET 4.0 y copié toda la carpeta \ publish a su máquina. Esto tampoco se instaló, dando el mismo error. Finalmente, fui al registro para intentar agregar el registro mejorado por RobinDotNet y me di cuenta de que HKCU \ Software \ Classes \ Software faltaba por completo. Siguiendo algunos hilos más, fui y cambié el nombre de UsrClass.dat. Sin embargo, después de cerrar la sesión e ingresar, esto no fue reconstruido. Sospecho que esto tal vez el problema. ¿Alguna idea sobre cómo hacer que ClickOnce vuelva a funcionar?
Se trata de una instalación de Windows 7 Professional relativamente reciente.
Actualización Aquí hay otra pista. Podemos cambiar el nombre de UsrClass.dat a cualquier cosa o eliminarlo sin ninguna queja de Windows, por lo que no se está cargando. En mi máquina, se queja de que está en uso.
¿Qué quiere decir cuando dice que publicó la aplicación en .NET 3.5 y .NET 4.0 y copiado la carpeta \ publicar en su máquina? ¿Cuál es la URL de instalación para su aplicación? Porque copiarlo en la máquina no funcionará si está configurado para instalarlo desde otro lugar: se verá en esa ubicación. – RobinDotNet