我们的一位用户在使用ClickOnce时遇到了非常严重的问题。错误是经典错误:
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)
但传统解决方案都没有奏效。我们试过了:
我在.NET 3.5和.NET 4.0中发布了一个helloworld应用程序,并将整个\ publish文件夹复制到他的机器上。这也没有安装,给出了同样的错误。最后,我去了注册表尝试为RobinDotNet添加增强的日志记录,并意识到HKCU \ Software \ Classes \ Software完全缺失。继一些线程之后,我又重新命名为UsrClass.dat。但是,在注销并登录后,没有重建。我怀疑这可能是个问题。关于如何让ClickOnce再次运行的任何想法?
这是一个相当新鲜的Windows 7 Professional安装。
更新这是另一条线索。我们可以将UsrClass.dat重命名为任何内容或删除它而不受Windows的任何投诉 - 因此它没有被加载。在我的机器上,它抱怨它正在使用中。
答案 0 :(得分:0)
我会说忘掉ClickOnce并将该注册表整理出来。这可能不是StackOverflow的正确主题,更像是SuperUser.com ......
反正:
1)尝试进行系统还原,看看是否可以找到存在该注册表配置单元的状态,您可能需要返回许多周。
2)尝试从您的计算机导出该注册表配置单元并将其导入客户端计算机。看看错误是否消失或是否有人抱怨不同的蜂巢 - 注册表可能已损坏,并且还有其他荨麻疹丢失......
3)如果这两个问题没有解决问题,那么你最好做一个干净的安装(它会比找出问题的确切原因更快,你可以确定一切都将被修复)
4)最后卸载任何注册表清理器或PC调整软件。众所周知,它们会导致问题,注册表损坏就是其中之一。还要检查硬件问题,硬盘驱动器可能已经开发出坏块或RAM可能有问题(运行MemTest 3次通过以确保)...
答案 1 :(得分:0)
尝试卸载它,然后重新安装!我相信它应该有用。
答案 2 :(得分:0)
尝试删除以下文件夹:
C:\Users\username\AppData\Local\Apps\2.0\
Data
文件夹除外。
您也应该删除.NET Framework临时文件:
C:\WINDOWS\Microsoft.NET\Framework\<version>\Temporary ASP.NET Files
答案 3 :(得分:-1)
尝试清理注册表的工具。我从未经历过这种情况,但我认为与您的应用程序和清单无关,请检查可能导致该用户计算机出现此问题的软件或工具。