我实现了一个WPF应用程序,并将其注册为在windows启动时启动。我的应用程序是一个简单的登录应用程序,当用户登录时出现在图标tray.The的问题是,它需要大约30秒后显示自己的视窗启动。我已经尝试了Ngen,但没有很大的成功。我希望避免实现闪屏。我希望我的WPF应用程序在Windows启动后“立即”出现,类似于Windows Live Messenger所做的事情。我能做些什么来减少它的启动时间?除了原生编码之外,我还有其他选择吗?谢谢。
发布于 2011-06-17 19:58:35
当计算机空闲时,是否也需要30秒才能启动(即,如果您在计算机不忙于加载windows时双击启动它)?
在windows启动期间,计算机通常会忙于处理大量的东西,这可能会导致应用程序运行缓慢。那你就无能为力了。
但是,下面是一些改善WPF应用程序启动的一般提示:
BackgroundWorker或使用异步调用来执行I/O和网络requests
您还可以在app.config中设置一个设置,告诉运行时不要使用证书对程序集进行身份验证(此检查可能需要很长时间,特别是冷启动):
<configuration>
<runtime>
<generatePublisherEvidence enabled="false"/>
</runtime>
</configuration>在Application Startup Time上的MSDN站点上提供了一些更一般的技巧。
发布于 2011-06-17 20:50:41
也许this site会对你有所帮助。它列出了在Windows登录之前(如果它是一项服务)或在Windows登录之后启动应用程序的一些选项。它们涉及一些注册表攻击,您需要在卸载过程中撤消这些操作。
发布于 2011-06-17 20:54:39
我非常喜欢Performance Tips of the wpftutorial.net。
https://stackoverflow.com/questions/6383568
复制相似问题