2009-06-29 12 views
5

私は大きなアプリケーション(190MBの600ファイル)をclickonce 3.5を使って配備しました。このアプリケーションのインストール後、スタートメニューにあるリンクから実行しますが、スプラッシュ画面を表示するには4〜12秒かかります。このアプリケーションを.exeファイルから実行すると、スプラッシュ画面が1秒後に表示されます。 自動更新を使用していない私のアプリケーションはClickOnceのスタートメニューリンクからの開始時間

私は起動時にとても長い時間がかかるものを見つけるとことを見つけるためにドットトレースを使用して、このアプリケーションをプロファイリングしてみました(ClickOnceの更新がソースコードから手動で行われる)

IActContext System.Deployment.Internal.Isolation.IsolationInterop.CreateActContext(IDefinitionAppId) 

時間ここ

がかかる全体のサブツリーです:

36,71% SetDomainManager - 12972 ms - 0 calls - System.AppDomain.SetDomainManager(Evidence, Evidence, IntPtr, Boolean) 
    18,52% CreateActivationContext - 6542 ms - 0 calls - System.Deployment.Internal.Isolation.Manifest.CmsUtils.CreateActivationContext(String, String [], Boolean, ApplicationIdentity &, ActivationContext &) 
    18,52% ActivationContext..ctor - 6542 ms - 0 calls - System.ActivationContext..ctor(ApplicationIdentity) 
     18,52% CreateFromName - 6542 ms - 0 calls - System.ActivationContext.CreateFromName(ApplicationIdentity) 
     18,52% CreateActContext - 6542 ms - 0 calls - System.Deployment.Internal.Isolation.IsolationInterop.CreateActContext(IDefinitionAppId) 
    18,19% SetupApplicationHelper - 6429 ms - 0 calls - System.AppDomain.SetupApplicationHelper(Evidence, Evidence, ApplicationIdentity, ActivationContext, String []) 
    18,19% DetermineApplicationTrust - 6429 ms - 0 calls - System.Security.HostSecurityManager.DetermineApplicationTrust(Evidence, Evidence, TrustManagerContext) 
     18,10% get_ActivationContext - 6396 ms - 0 calls - System.Runtime.Hosting.ActivationArguments.get_ActivationContext() 
     18,10% CreateFromName - 6396 ms - 0 calls - System.ActivationContext.CreateFromName(ApplicationIdentity) 
      18,10% CreateActContext - 6396 ms - 0 calls - System.Deployment.Internal.Isolation.IsolationInterop.CreateActContext(IDefinitionAppId) 
     0,09% DetermineApplicationTrustInternal - 33 ms - 0 calls - System.Security.Policy.ApplicationSecurityManager.DetermineApplicationTrustInternal(ActivationContext, TrustManagerContext) 

どのように私は私のこの開始時間を短縮することができます応用?これは非常に重要です。なぜなら、時にはユーザーが12秒以上待たなければならない場合があるからです。スプラッシュ画面

+0

誰でも私にこれを手伝ってもらえますか? – Irek

答えて

1

アプリケーションの信頼レベルを判断するのに時間がかかるようです。それが時間を減らすかどうかを確かめるために、このアプリケーションを完全に信頼して配備しようとしましたか?

+0

私のアプリケーションマニフェストを完全に信頼しています。 – Irek

+0

スタートアップ時間は同じです。何も変わっていません。 – Irek

関連する問題