問題タブ [ngen]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
972 参照

entity-framework - 「ngen install EntityFramework.dll」を実行すると、エラー 0x800706BE および 0x80131F06 で失敗する

Entity Framework チームのアドバイスに従って、次のEntityFramework.dllコマンドでネイティブ イメージを作成しようとしました。

これにより、エラーが発生します0x80131F06(mscorlib.dll のネイティブ イメージがありません)。実行しようとするngen install mscorlib.dllと、エラーが発生します0x800706BE(RPC_S_CALL_FAILED - リモート プロシージャ コールが失敗しました)。

私はすでに使用sfc /scannowしており、破損したファイルは報告されていません。

ここで何が間違っているのでしょうか?

0 投票する
1 に答える
299 参照

c# - 現在のディレクトリが実行時に変更されると、Ngen ネイティブ イメージが読み込まれない

だから私は1つのアセンブリをNGENしましたが、実行時に現在のアプリケーションディレクトリが変更されているため、実行時に Directory.SetCurrentDirectory(requiredDirectory)Ngenアセンブリが使用されていないため、実行時に使用されていません。
アセンブリのロード方法:

WPF PRISM IModuleManager を使用して、ラム時にアセンブリをロードしています。ただし、その前に、上記のように現在のアプリケーション ディレクトリを変更する必要があります。したがって、上記のすべてのことを行うと、Ngen アセンブリは使用されません。どうすればそれができるのでしょうか?

0 投票する
0 に答える
620 参照

.net - Ngen エラー - GAC 依存関係が見つかりません

NGen を使用して、.Net アプリの起動/応答時間を短縮しようとしています。アプリケーションは (Visual Studio で) コンパイルされ、IDE の内外で正常に実行されますが、メイン エントリ アセンブリを「ngen」すると、次のようになります。

次のエラーのため、アセンブリ CrystalDecisions.Enterprise.Framework、バージョン = 12.0.1100.0、カルチャ = ニュートラル、PublicKeyToken = 692fbea5521e1304 の依存関係 BusinessObjects.Enterprise.Sdk を読み込めませんでした: 指定されたファイルが見つかりません。(HRESULT からの例外: 0x80070002)

参照されている Crystal ライブラリは GAC のものです。ngen コマンドラインは次のとおりです。

ngen インストール "\my_entry_assembly.exe"

Ngen は、ほとんどの依存関係を見つけて対処しますが、上記のものではなく、GAC にある唯一のものです。

説明は何ですか?GACへの明示的なパスによってアセンブリを個別にngenningする以外に、これについて何ができますか?

0 投票する
2 に答える
6579 参照

c# - .NET ネイティブと Ngen.exe の違いは何ですか?

タイトルがすべてを物語っています。Ngen.exe では実現できなかった .NET Native の機能について誰かが説明してくれることを期待していました。

0 投票する
1 に答える
2749 参照

asp.net-mvc - Pre-jit コンパイル MVC Web アプリケーション

更新後に MVC Web アプリケーションを使用する場合、最初のホームページの読み込みに数分かかります。最初のロードの後、かなり高速にロードされます。おそらく、MSIL コードはネイティブ マシン コードにコンパイルされ、キャッシュされます。(私が間違っている場合は修正してください)。これはすべてのページで発生します。

新しいバージョンがサーバーにコピーされるたびに、非常に遅くなります。この問題を解決するために、ユーザーの時間を大幅に節約できるように、ngen で事前に jit コンパイルしようとしました。ただし、プロジェクトの bin フォルダー内のすべての dll に対して「ngen install mydll.dll」を実行すると、いくつかのエラーが発生します。これがコマンドです

最初のエラーは次のとおりです。

プロジェクトは正常にデバッグおよびビルドされます。これを達成する正しい方法は何ですか?

0 投票する
0 に答える
419 参照

azure - Azure Web サイトで使用するために NGen dll を使用することは可能ですか?

現在、MVC3、.NET4.5、EF6.1、MSSQL2008(dev)、SQL Azure(Test and Live) を使用しています。私たちのアプリケーションは非常に複雑で、アプリケーション プールの更新後、約 30 秒の大幅なウォームアップ ラグが発生しています。私たちは外部の自動化サービスを使用してサイトを暖かく保ちますが、これは問題ありません....ただし、ネイティブ イメージを展開するだけの方がはるかに優れたソリューションであり、何らかの理由でアプリ プールが更新されるたびに、アプリケーションが次のように読み込まれることがわかっています。できるだけ早く。

したがって、NGEN を調査する理由です。

ただし、これが Azure Web サイトで可能かどうかはわかりません。私が持っているいくつかの質問:

1) NGen には管理者権限が必要です。私が理解しているように、ネイティブ イメージを Azure Web サイトにインストールするには管理者権限が必要ですか、それともローカルの "同じ CPU" マシンでそれらを生成してコピーできますか?

2) 今すぐ完全な信頼を要求します。これは WAWS では問題ないと思います。

3) NGen はキャッシュにのみインストールされ、別の場所にコピーするための何らかのファイルは生成されませんか?

前もって感謝します。

0 投票する
2 に答える
3821 参照

c# - mscorlib.ni.lib の PDB ファイルを取得する方法 (.Net Framework 3.5)

多くの検索を行った後、私はまだ質問の解決策を得ることができませんでした.

mdmp ファイルがあります。コール スタックは、mscorlib.ni.dll を使用していることを示しています。関数情報を取得するには、その pdb ファイルを取得する必要があります。

mscorlib.ni.dll のバージョンは 2.0.50727.3655 です。.Net Framework 3.5 に由来すると思います。

mscorlib.ni.dll は ngen.exe によって生成されるネイティブに最適化された dll であるため、ngen.exe createpdb を使用してこの dll の pdf を生成する必要があります。

結果は次のとおりです。

  1. 「C:\Windows\Microsoft.NET\Framework64\v3.5」フォルダーに ngen.exe が見つかりません
  2. 「C:\Windows\Microsoft.NET\Framework64\v2」フォルダーに ngen.exe が見つかりましたが、createpdb オプションがありません。
  3. 「C:\Windows\Microsoft.NET\Framework64\v4.0.30319」フォルダーに ngen.exe があり、createpdb オプションをサポートしていますが、エラーが報告されます。

Microsoft (R) CLR Native Image Generator - バージョン 4.0.30319.18408 Copyright (c) Microsoft Corporation. 全著作権所有。ネイティブ イメージ 'C:\Windows\assembly\NativeImages_v2.0.507 7_64\mscorlib\5cd1c2848ff40eb0a8c149706ee394fa\mscorlib.ni.dll' に無効なヘッダーが見つかりました。不明なエラー (HRESULT からの例外: 0x80004005 (E_FAIL))

したがって、この Net Framework 3.5 の mscorlib.ni.dll の pdb を取得する方法がわかりません。

何か案が?