ClickOnce的慢启动的WinForms更新后的应用程序 [英] Slow startup of Clickonce winforms application after update

查看:348
本文介绍了ClickOnce的慢启动的WinForms更新后的应用程序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们有通过的ClickOnce部署到用户,并使用自动更新功能的WinForms应用程序。

We have a winforms application that is deployed to users through clickonce and uses the autoupdate functionality.

我们已经注意到的是,为我们的用户,它需要几分钟的时间应用的ClickOnce更新发生之后出现。该应用程序的可执行文件是在这段时间与相当高的CPU使用率运行,但不显示窗口。

What we have noticed is that for our users, it takes several minutes for the application to appear after a clickonce update occurs. The application executable is running during this time with fairly high cpu usage, but no windows are displayed.

这是不是开发商的机器可重复性。还有的用户和开发者的机器之间的2主要区别是:

This is not reproducible on the developers' machines. There are 2 primary differences between the users' and the devs' machines:


  1. 的用户运行的是Windows XP,那里的开发商正在运行的窗口Vista系统。

  2. 的开发者都在同一个域中的ClickOnce服务器,而用户是在具有与ClickOnce的服务器的一部分域2双向信任关系的不同的域。

对其进行了更新后运行一次后,应用程序的冷启动性能几乎是瞬间完成的。

The cold start performance of the application is almost instantaneous after its been run once after an update.

下面这个链接是有人在MSDN论坛有同样的问题,但目前还没有公布解决办法:
http://social.msdn.microsoft.com/Forums/en-US/winformssetup/thread/5ec061c4-ec6f- 4101-98a6-dc8bb5acab60

The following link is for someone on the msdn forums with the same issue, but there is no posted solution: http://social.msdn.microsoft.com/Forums/en-US/winformssetup/thread/5ec061c4-ec6f-4101-98a6-dc8bb5acab60

由于开发商已经无法重现本地,我们还没有什么应用程序在做跟踪分析这次。

As the developers have been unable to reproduce locally, we don't yet have a profiling trace of what the application is doing during this time.

为什么这可能会在如何去解决该问题的发生或建议?

Any thoughts on why this might be occurring or suggestions on how to go about troubleshooting the problem?

感谢任何思考

编辑2009年8月24日:创建运行XP 32位虚拟机并将其加入到同一个域中的用户。的问题不会在虚拟机中体现。这似乎消除XP和域成员身份问题的根源。这似乎离开VLAN,系统配置和补丁级别为潜在的罪魁祸首。

EDIT 08/24/2009: Created a 32 bit virtual machine running XP and joined it to the same domain as the users. The issue does not manifest in the virtual machine. This seems to eliminate both XP and the domain membership as the source of the issue. That seems to leave VLAN, system configuration, and patch level as potential culprits.

推荐答案

在应用程序更新,所有的新组件将需要准时编译。这通常只发生一次,所以可以解释为什么有一个缓慢的初始启动,为什么你不能在开发机器重现。

When the application is updated, all new assemblies will need to be Just in Time Compiled. This typically only occurs once so would explain why there is a slow initial startup and why you can't reproduce on developers machines.

我看到的性能非常差(分钟VS几秒钟)用于新部署的第一次运行.NET应用程序是用户正在运行防病毒软件的防病毒工具检查新即时编译组件是没有恶意的。

I have seen very poor performance (minutes vs a few seconds) for a newly deployed first run .Net application is the users are running antivirus software as the antivirus tool checks the newly Jitted assemblies are not malicious.

如果您能够监视应用程序的初始启动 - 检查,看看是否mscorjit.dll已加载,并且进程占用CPU显著的原因是因为jitting的。同时检查是否有任何防病毒工具被消耗CPU的显著量。

If you are able to monitor the initial startup of the application - check to see if mscorjit.dll is loaded and the reason the process is consuming significant CPU is because of the jitting. Also check if any antivirus tool is consuming a significant amount of CPU.

这篇关于ClickOnce的慢启动的WinForms更新后的应用程序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆