我开发了一个带有.NET 3.5的小应用程序,其中包含几个表单和一个rdlc报告。之后,我将其升级到.NET 4.0并使用.NET客户端配置文件分发到客户端,并在先决条件中添加了Windows安装程序3.1。它在一个客户端上安装并运行良好,但在另一个客户端上,它在.NET客户端配置文件4.0期间出现意外错误。 我的应用程序相对较小,不需要.NET 4.0功能,因此现在我将其降级为.NET 2.0并使用在先决条件中添加了.NET 2.0的clickOnce发布它,但在客户端计算机上它再次在安装和退出时显示错误。有关安装的详细信息,它指的是我无法在系统上找到的日志文件。 我在Windows 7上开发,大多数客户端机器都使用Windows XP。
答案 0 :(得分:1)
在.NET 2.0中,每个安装的ClickOnce日志文件都写入WinInet缓存( Temporary Internet Files 文件夹),用于失败和成功部署和启动。遗憾的是,日志文件具有混淆的名称,这使得识别哪个日志文件属于哪个应用程序非常困难。您可能还必须从大多数用户的Internet缓存中的数十个或数百个其他文件中过滤它们。这些文件的命名约定是前缀 System_Deployment_Log_XXX ,其中XXX是混淆。
您还可以设置自定义日志文件位置。如果选择执行此操作,则会将所有错误写入您指定位置的单个文件,并且每次激活都会将其日志条目附加到文件末尾。因此,这种方法可以为您提供多次启动尝试的运行评论。
要进行此设置,请找到注册表项: HK_Current_User \ Software \ Classes \ Software \ Microsoft \ Windows \ CurrentVersion \ Deployment
添加名为 LogFilePath 的字符串值,并将其值设置为您希望写入日志条目的完全限定路径(即 C:\ temp \ ClickOnceErrors.txt )。一旦你这样做,所有错误都将写在那里。您还可以通过添加名为 LogVerbosityLevel 的新字符串值并将其设置为1来增加记录的详细信息级别。