問題タブ [appdomainsetup]
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.
c# - なぜ AppDomainSetup.ShadowCopyFiles は文字列なのですか?
ドキュメントから:
シャドウ コピーがオンになっていることを示す文字列値「true」を含む文字列。または、シャドウ コピーがオフになっていることを示す "false"。
そして、1.1からこのようになっています。誰でも光を当てることができますか?
適切な測定のためにゲッターとセッターをリフレクターしました:
それで、Value
配列はより簡単なコピーコンストラクタか何かを生み出すのでしょうか?
c# - アンマネージコードを含むrawアセンブリを動的にロードするにはどうすればよいですか?(「検証不可能なコードがポリシーチェックに失敗しました」例外をバイパスします)
アンマネージコードとの混合アセンブリであるSystem.Data.SQLite.DLLの使用例を示し ます。これを実行すると:
例外はスローされませんが、これを行うと:
CLRは、「検証不可能なコードがポリシーチェックに失敗しました。(HRESULTからの例外:0x80131402)」というFileLoadExceptionをスローします。このアセンブリを子AppDomainにロードしようとしているとしましょう。ポリシーチェックに合格できるように、AppDomainのセキュリティをカスタマイズするにはどうすればよいですか。
c# - AppDomain シャドウ コピー - 動的にロードされた Dll のロード/アンロード
dll を動的にロードしようとしている以下のコードが機能していません。
これは私が WCF サービス内で使用しているコードですが、それでも機能しません。
AppDomain で「シャドウ コピー」を使用して実現できると聞きました。しかし、「シャドウコピー」と上記のコードで同じものを実装する方法については何も知りません。
「シャドウ コピー」の例として動作するコードを提供してください。
-BS
c# - LoaderOptimizationAttribute の効果
アセンブリの動的読み込みと、それらのアセンブリからのクラス インスタンスの作成に関する小さなコードを作成しました。これには、実行可能ファイル、動的に読み込まれるテスト ライブラリ、および動的アセンブリを新しい .xml ファイルに読み込むローダー ライブラリが含まれますAppdomain
。ローダー ライブラリは、実行可能ライブラリと動的ライブラリの両方から参照されます。
ここで私は方法を設定
LoaderOptimizationAttribute
しましたが、それはなぜですか?main()
AppDomain.CurrentDomain.SetupInformation.LoaderOptimization.ToString();
NotSpecified
との違いは
MultiDomain
、MultiDomainHost
私にはあまり明確ではありません。MultiDomainHost
GACアセンブリのみですか?私の状況では、どちらがより適していますか?これによると
JIT コンパイルされたコードは、Assembly クラスの LoadFrom メソッドを使用してロード元コンテキストに読み込まれたアセンブリ、またはバイト配列を指定する Load メソッドのオーバーロードを使用してイメージから読み込まれたアセンブリに対して共有することはできません。
では、アセンブリがドメイン中立にロードされているかどうかをどのように検出できますか? ドメインニュートラルにロードされていることをどのように保証できますか?
c# - カスタム AppDomain と PrivateBinPath
テストのためだけに c# 4.0 とコンソール アプリケーションを使用していますが、次のコードでは例外が発生します。
作成した AppDomain でLoadを使用すると、File not found 例外が発生し続けます。
ありがとう。
c# - CreateInstanceFromAndUnwrap が Web コンテナーで機能しないのはなぜですか?
こんにちは、次のようなコードがあります。
私のテスト コード (つまり、Web コンテナー内ではない) では、魅力的に動作し、まったく文句を言わずにアセンブリをロードします。しかし、それを自分のアプリケーション (Web コンテナー、II7/ または VS2010 dev コンテナー) で実行すると、突然、次のように不平を言い始めます。
「メンバーの型が解決されていません '... , ... , Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'."}"
アプリケーション呼び出しとまったく同じパラメーターを使用して Load() メソッドを呼び出すようにテスト ケースを変更したところ、テスト コード (Web コンテナーの外部) は正常に動作し、アプリケーション コードは上記のエラーをスローします。
c# - SandboxAppDomainでアセンブリをロードするための最小限の権限を探しています。なぜこれらの権限が必要なのですか?
アセンブリをロードするために、サンドボックスAppDomainの最小権限を設定しようとしています。appBaseに対するPathDiscovery権限と、ロードされたアセンブリに対する読み取り権限が必須のようですが、依存するアセンブリには権限は必要ありません。私の質問は次のとおりです。なぜPathDiscoveryが必要なのですか?必要なアセンブリごとに読み取りアクセスが十分ではありませんか?ロードされたアセンブリのみが読み取り権限を必要とし、依存するアセンブリは必要ないのはなぜですか?
ここに、コンテキストを与えるためのコードスニペットがあります。
c# - app.configを使用してシャドウコピーを構成する
最初にシナリオを説明しましょう。
単一のインストールベースからサービスの複数のコピー(Say 10)をインストールしました。ここで、dllの1つを更新したいと思います。すべてのサービスを停止し、dllを更新して、サービスを再起動する必要があります。
この状況を回避するために、コードでShadowCopyingを使用しました。すべてのサービスを停止せずにdllを更新できるようにします。以下のとおりです。
今、私はAsp.Netから次のようにapp.configファイルを介して同じことを達成しようとしています
助言がありますか?
.net - プラグインAppDomainsの回避策
独自のサブディレクトリでプラグインアセンブリを処理する場合、サブディレクトリからそれぞれの依存関係を読み込もうとすると、これらのアセンブリを読み込めないというよく知られた問題があります。解決策は、初期化時にオブジェクトにPrivateBinPath
設定されたプラグインをAppDomainsにロードすることです。AppDomainSetup
ただし、これにより、特にプラグインがGUIを提供することになっている場合は、マーシャリング/AppDomain間の通信に関して他の問題が発生します。
セキュリティの側面の優先度が低い場合(重要ではないユーティリティアプリケーション、プラグインの障害によるクラッシュ時に深刻な問題は発生しない)、次のような考えがあります。アプリケーションの起動時に、すべてのプラグインディレクトリを検索し、新しいbinパスにこれらのディレクトリを持つAppDomainを作成する必要があります。次に、アプリケーション全体とそのGUIが、すべてのプラグインとともにその新しいAppDomainで実行されます。
与えられた状況下で、その解決策を避ける理由はありますか?それとも、その解決策が実行可能でさえない理由は何かありますか?