locked
Authenticode 署名を持つ .NET Framework 2.0 アプリケーションの起動に時間がかかる問題について RRS feed

  • Discussão Geral

  • こんにちは、Platform SDK (Windows SDK) サポートチームです。

    今回は、Authenticode 署名を持つ .NET Framework 2.0 アプリケーションの起動に時間がかかる問題についてご案内します。

    現象

    Authenticode 署名を持つ .NET Framework 2.0 アプリケーションを起動した際に通常よりも開始に時間がかかる場合があります。

    原因

    この問題は、Authenticode 署名を持つ .NET Framework 2.0 のアセンブリのロードに時間がかかるために発生したします。

    Authenticode 署名を持つ .NET Framework 2.0 のアセンブリをロードする際には、毎回署名の検証が行われます。

    ネットワーク環境によっては、署名に関わる証明書の失効確認のために発生する外部への失効サーバーへのアクセスが遮断されており、タイムアウトに達するまでの遅延が生じます。

    なお、.NET Framework 4 以降では上記のような署名の検証処理は廃止されているため、同様の現象は発生しません。

    解決方法

    generatePublisherEvidence False に設定した場合、アセンブリのAuthenticode 署名の検証がスキップされます。

    1. 以下のような <generatePublisherEvidence> 要素を含むアプリケーション構成ファイル (***.exe.config) を作成します。

    既に利用されているアプリケーション構成ファイルが存在する場合は、<configuration> 要素内の <runtime> 要素へ <generatePublisherEvidence> 要素を追加します。

    アプリケーション構成ファイル設定例

    WindowsApplicationTest.exe の場合は、構成ファイルのファイル名は WindowsApplicationTest.exe.config になります。

    ==============

    <?xml version="1.0" encoding="utf-8"?>

    <configuration>

            <runtime>

                    <generatePublisherEvidence enabled="false"/>

            </runtime>

    </configuration>

    ==============

     2. 上記で作成したファイルをアプリケーションの実行ファイル (.exe) と同じフォルダーに配置します。

    参考情報

    <generatePublisherEvidence > 要素

    https://docs.microsoft.com/ja-jp/dotnet/framework/configure-apps/file-schema/runtime/generatepublisherevidence-element



    terça-feira, 25 de junho de 2019 06:55
    Proprietário