Assembly.LoadFrom メソッド (String, Evidence, Byte , AssemblyHashAlgorithm)
メモ : この名前空間、クラス、およびメンバは、.NET Framework Version 1.1 だけでサポートされています。
ファイル名またはパス、セキュリティ証拠のハッシュ値、ハッシュ アルゴリズムを指定してアセンブリを読み込みます。
Overloads Public Shared Function LoadFrom( _
ByVal assemblyFile As String, _ ByVal securityEvidence As Evidence, _ ByVal hashValue() As Byte, _ ByVal hashAlgorithm As AssemblyHashAlgorithm _) As Assembly
[C#]
public static Assembly LoadFrom(stringassemblyFile,EvidencesecurityEvidence,byte[] hashValue,AssemblyHashAlgorithmhashAlgorithm);
[C++]
public: static Assembly* LoadFrom(String* assemblyFile,Evidence* securityEvidence,unsigned charhashValue __gc[],AssemblyHashAlgorithmhashAlgorithm);
[JScript]
public static function LoadFrom(
assemblyFile : String,securityEvidence : Evidence,hashValue : Byte[],hashAlgorithm : AssemblyHashAlgorithm) : Assembly;
パラメータ
- assemblyFile
アセンブリのマニフェストを格納しているファイルの名前またはパス。 - securityEvidence
アセンブリを読み込むために必要な証拠。 - hashValue
計算されたハッシュ コードの値。 - hashAlgorithm
ファイルのハッシュ処理および厳密な名前の生成に使用されるハッシュ アルゴリズム。
戻り値
読み込み済みのアセンブリ。
例外
例外の種類 | 条件 |
---|---|
ArgumentNullException | assemblyFile が null 参照 (Visual Basic では Nothing) です。 |
FileNotFoundException | assemblyFile が見つかりません。または、読み込もうとしているモジュールのファイル名拡張子が指定されていません。 |
BadImageFormatException | assemblyFile が有効なアセンブリではありません。 |
SecurityException | "file://" 以外で始まるコードベースが指定されましたが、必要な WebPermission がありません。 |
PathTooLongException | 1 つのアセンブリまたはモジュールが、2 つの異なる証拠で 2 回読み込まれました。または、アセンブリ名が MAX_PATH 文字数よりも長くなっています。 |
ArgumentException | assemblyFile パラメータが空の文字列 ("") です。 |
解説
assemblyFile パラメータは、エスケープ文字なしの URI を参照する必要があります。このメソッドでは、URI 内のすべての無効な文字に対してエスケープ文字が与えられます。
assemblyFile は、現在のディレクトリからの相対パスです。アセンブリは、呼び出し元のドメインに読み込まれます。
LoadFrom メソッドは読み込みコンテキストを使用し、 LoadFrom を使用してアプリケーションによって読み込まれるアセンブリの推移的閉包である一連のアセンブリについて、アセンブリ名とアセンブリ インスタンス情報を記録します。 LoadFrom 読み込みコンテキストは、位置を使用して読み込まれるアセンブリに対して適用されます。
特定のアクセス許可がアセンブリに与えられるかどうかは、証拠を基に判断されます。アセンブリおよびセキュリティの証拠のマージの規則は次のとおりです。
- Evidence パラメータなしで LoadFrom メソッドを使用した場合は、ローダーが提供した証拠でアセンブリが読み込まれます。
- Evidence パラメータ付きで LoadFrom メソッドを使用した場合は、証拠がマージされます。 LoadFrom メソッドの引数として提供された証拠は、ローダーによって提供された証拠の代わりとして使用されます。
- Byte[] パラメータ付きで LoadFrom メソッドを使用して COFF (Common Object File Format) イメージを読み込んだ場合、証拠は結合されます。 Zone 、 Url および Site は呼び出し元のアセンブリから継承され、 Hash および StrongName は COFF アセンブリから取得されます。
- Byte[] パラメータおよび Evidence 付きで LoadFrom メソッドを使用して COFF (Common Object File Format) イメージを読み込んだ場合、指定された証拠だけが使用されます。呼び出し元のアセンブリの証拠および COFF イメージの証拠は無視されます。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ
.NET Framework セキュリティ:
- SecurityPermission (証拠が指定されたアセンブリを読み込むために必要なアクセス許可) SecurityPermissionFlag.ControlEvidence (関連する列挙体)
- ReflectionPermission (Type.InvokeMember などの機構を通じて遅延バインディングが呼び出されるときに必要なアクセス許可) ReflectionPermissionFlag.MemberAccess (関連する列挙体)
- FileIOPermission ("file://" で始まる URI を読み取るために必要なアクセス許可) FileIOPermissionAccess.Read (関連する列挙体)
- WebPermission ("file://" 以外で始まる URI を読み取るために必要なアクセス許可)
参照
Assembly クラス | Assembly メンバ | System.Reflection 名前空間 | Assembly.LoadFrom オーバーロードの一覧