Assembly.Load Metode

Definisi

Memuat rakitan.

Overload

Load(Byte[], Byte[], SecurityContextSource)

Memuat rakitan dengan gambar berbasis format file objek umum (COFF) yang berisi rakitan yang dipancarkan, secara opsional termasuk simbol dan menentukan sumber untuk konteks keamanan.

Load(Byte[], Byte[], Evidence)
Kedaluwarsa.

Memuat rakitan dengan gambar berbasis format file objek umum (COFF) yang berisi rakitan yang dipancarkan, secara opsional termasuk simbol dan bukti untuk perakitan.

Load(String, Evidence)
Kedaluwarsa.

Memuat perakitan yang diberikan nama tampilannya dan menggunakan bukti yang disediakan.

Load(AssemblyName, Evidence)
Kedaluwarsa.

Memuat assembly yang diberikan AssemblyName. Perakitan dimuat menggunakan bukti yang disediakan.

Load(Byte[])

Memuat rakitan dengan gambar berbasis format file objek umum (COFF) yang berisi rakitan yang dipancarkan.

Load(String)

Memuat rakitan dengan nama yang ditentukan.

Load(AssemblyName)

Memuat assembly yang diberikan AssemblyName.

Load(Byte[], Byte[])

Memuat rakitan dengan gambar berbasis format file objek umum (COFF) yang berisi rakitan yang dipancarkan, secara opsional termasuk simbol untuk perakitan.

Load(Byte[], Byte[], SecurityContextSource)

Memuat rakitan dengan gambar berbasis format file objek umum (COFF) yang berisi rakitan yang dipancarkan, secara opsional termasuk simbol dan menentukan sumber untuk konteks keamanan.

public:
 static System::Reflection::Assembly ^ Load(cli::array <System::Byte> ^ rawAssembly, cli::array <System::Byte> ^ rawSymbolStore, System::Security::SecurityContextSource securityContextSource);
public static System.Reflection.Assembly Load (byte[] rawAssembly, byte[] rawSymbolStore, System.Security.SecurityContextSource securityContextSource);
static member Load : byte[] * byte[] * System.Security.SecurityContextSource -> System.Reflection.Assembly
Public Shared Function Load (rawAssembly As Byte(), rawSymbolStore As Byte(), securityContextSource As SecurityContextSource) As Assembly

Parameter

rawAssembly
Byte[]

Array byte yang merupakan gambar berbasis COFF yang berisi assembly yang dipancarkan.

rawSymbolStore
Byte[]

Array byte yang berisi byte mentah yang mewakili simbol untuk perakitan.

securityContextSource
SecurityContextSource

Sumber konteks keamanan.

Mengembalikan

Rakitan yang dimuat.

Pengecualian

rawAssemblyadalah null.

rawAssembly bukan rakitan yang valid untuk runtime yang saat ini dimuat.

Nilai securityContextSource bukan salah satu nilai enumerasi.

Keterangan

Rakitan dimuat ke dalam domain aplikasi pemanggil menggunakan sumber yang ditentukan untuk konteks keamanan. Jika rawSymbolStore ditentukan, byte mentah yang mewakili simbol untuk perakitan juga dimuat.

Berlaku untuk

Load(Byte[], Byte[], Evidence)

Perhatian

This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.

Memuat rakitan dengan gambar berbasis format file objek umum (COFF) yang berisi rakitan yang dipancarkan, secara opsional termasuk simbol dan bukti untuk perakitan.

public:
 static System::Reflection::Assembly ^ Load(cli::array <System::Byte> ^ rawAssembly, cli::array <System::Byte> ^ rawSymbolStore, System::Security::Policy::Evidence ^ securityEvidence);
public static System.Reflection.Assembly Load (byte[] rawAssembly, byte[] rawSymbolStore, System.Security.Policy.Evidence securityEvidence);
[System.Obsolete("This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")]
public static System.Reflection.Assembly Load (byte[] rawAssembly, byte[] rawSymbolStore, System.Security.Policy.Evidence securityEvidence);
static member Load : byte[] * byte[] * System.Security.Policy.Evidence -> System.Reflection.Assembly
[<System.Obsolete("This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")>]
static member Load : byte[] * byte[] * System.Security.Policy.Evidence -> System.Reflection.Assembly
Public Shared Function Load (rawAssembly As Byte(), rawSymbolStore As Byte(), securityEvidence As Evidence) As Assembly

Parameter

rawAssembly
Byte[]

Array byte yang merupakan gambar berbasis COFF yang berisi assembly yang dipancarkan.

rawSymbolStore
Byte[]

Array byte yang berisi byte mentah yang mewakili simbol untuk perakitan.

securityEvidence
Evidence

Bukti untuk memuat assembly.

Mengembalikan

Rakitan yang dimuat.

Atribut

Pengecualian

rawAssemblyadalah null.

rawAssembly bukan rakitan yang valid untuk runtime yang saat ini dimuat.

Perakitan atau modul dimuat dua kali dengan dua bukti yang berbeda.

securityEvidence bukan null. Secara default, kebijakan CAS warisan tidak diaktifkan di .NET Framework 4; ketika tidak diaktifkan, securityEvidence harus null.

Keterangan

Metode ini kelebihan beban selalu membuat objek baru Assembly dalam konteks beban terisolasinya sendiri.

Perakitan dimuat menggunakan bukti yang disediakan. Byte mentah yang mewakili simbol untuk perakitan juga dimuat.

Apakah izin tertentu diberikan atau tidak diberikan kepada rakitan didasarkan pada bukti. Aturan untuk perakitan dan penggabungan bukti keamanan adalah sebagai berikut:

  • Ketika Anda menggunakan Load metode tanpa Evidence parameter, assembly dimuat dengan bukti yang disediakan loader.

  • Saat Anda menggunakan Load metode dengan Evidence parameter, potongan bukti digabungkan. Potongan bukti yang disediakan sebagai argumen untuk Load metode menggantikan potongan bukti yang disediakan oleh loader.

  • Saat Anda menggunakan metode kelebihan Load beban dengan Byte[] parameter untuk memuat gambar COFF, bukti diwarisi dari perakitan panggilan.

  • Saat Anda menggunakan Load metode dengan Byte[] parameter dan Evidence untuk memuat gambar COFF, hanya bukti yang disediakan yang digunakan. Bukti perakitan panggilan dan bukti gambar COFF diabaikan.

Jika Anda memanggil Load metode lebih dari sekali pada perakitan yang sama tetapi dengan bukti yang berbeda yang ditentukan, runtime bahasa umum tidak melempar FileLoadException karena kesetaraan dan integritas spesifikasi bukti yang berbeda tidak dapat ditentukan. Bukti yang pertama berhasil adalah bukti yang digunakan.

Berlaku untuk

Load(String, Evidence)

Perhatian

This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.

Memuat perakitan yang diberikan nama tampilannya dan menggunakan bukti yang disediakan.

public:
 static System::Reflection::Assembly ^ Load(System::String ^ assemblyString, System::Security::Policy::Evidence ^ assemblySecurity);
public static System.Reflection.Assembly Load (string assemblyString, System.Security.Policy.Evidence assemblySecurity);
[System.Obsolete("This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")]
public static System.Reflection.Assembly Load (string assemblyString, System.Security.Policy.Evidence assemblySecurity);
static member Load : string * System.Security.Policy.Evidence -> System.Reflection.Assembly
[<System.Obsolete("This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")>]
static member Load : string * System.Security.Policy.Evidence -> System.Reflection.Assembly
Public Shared Function Load (assemblyString As String, assemblySecurity As Evidence) As Assembly

Parameter

assemblyString
String

Nama tampilan rakitan.

assemblySecurity
Evidence

Bukti untuk memuat assembly.

Mengembalikan

Rakitan yang dimuat.

Atribut

Pengecualian

assemblyStringadalah null.

assemblyString tidak ditemukan.

assemblyString bukan rakitan yang valid untuk runtime yang saat ini dimuat.

File yang ditemukan tidak dapat dimuat.

-atau-

Perakitan atau modul dimuat dua kali dengan dua bukti yang berbeda.

Keterangan

FileLoadException dilemparkan jika assemblyString menentukan nama rakitan lengkap, dan rakitan pertama yang cocok dengan nama sederhana memiliki versi, budaya, atau token kunci publik yang berbeda. Loader tidak melanjutkan pemeriksaan untuk rakitan lain yang cocok dengan nama sederhana.

Apakah izin tertentu diberikan atau tidak diberikan kepada rakitan didasarkan pada bukti. Aturan untuk perakitan dan penggabungan bukti keamanan adalah sebagai berikut:

  • Ketika Anda menggunakan Load metode tanpa Evidence parameter, assembly dimuat dengan bukti yang disediakan loader.

  • Saat Anda menggunakan Load metode dengan Evidence parameter, potongan bukti digabungkan. Potongan bukti yang disediakan sebagai argumen untuk Load metode menggantikan potongan bukti yang disediakan oleh loader.

  • Saat Anda menggunakan Load metode kelebihan beban dengan Byte[] parameter untuk memuat gambar format file objek umum (COFF), bukti diwarisi dari perakitan panggilan.

  • Saat Anda menggunakan Load metode dengan Byte[] parameter dan Evidence untuk memuat gambar COFF, hanya bukti yang disediakan yang digunakan. Bukti perakitan panggilan dan bukti gambar COFF diabaikan.

Jika Anda memanggil metode ini lebih dari sekali pada perakitan yang sama tetapi dengan bukti yang berbeda yang ditentukan, runtime bahasa umum tidak melempar FileLoadException karena kesetaraan dan integritas spesifikasi bukti yang berbeda tidak dapat ditentukan. Bukti yang pertama berhasil adalah bukti yang digunakan.

Dalam .NET Framework versi 2.0, arsitektur prosesor ditambahkan ke identitas perakitan, dan dapat ditentukan sebagai bagian dari string nama perakitan. Misalnya, "ProcessorArchitecture=msil". Namun, cara yang disarankan untuk menentukan nama rakitan adalah dengan membuat AssemblyName objek dan meneruskannya ke kelebihan beban Load metode yang sesuai. Lihat AssemblyName.ProcessorArchitecture.

Lihat juga

Berlaku untuk

Load(AssemblyName, Evidence)

Perhatian

This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.

Memuat assembly yang diberikan AssemblyName. Rakitan dimuat menggunakan bukti yang disediakan.

public:
 static System::Reflection::Assembly ^ Load(System::Reflection::AssemblyName ^ assemblyRef, System::Security::Policy::Evidence ^ assemblySecurity);
public static System.Reflection.Assembly Load (System.Reflection.AssemblyName assemblyRef, System.Security.Policy.Evidence assemblySecurity);
[System.Obsolete("This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")]
public static System.Reflection.Assembly Load (System.Reflection.AssemblyName assemblyRef, System.Security.Policy.Evidence assemblySecurity);
static member Load : System.Reflection.AssemblyName * System.Security.Policy.Evidence -> System.Reflection.Assembly
[<System.Obsolete("This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")>]
static member Load : System.Reflection.AssemblyName * System.Security.Policy.Evidence -> System.Reflection.Assembly
Public Shared Function Load (assemblyRef As AssemblyName, assemblySecurity As Evidence) As Assembly

Parameter

assemblyRef
AssemblyName

Objek yang menjelaskan perakitan yang akan dimuat.

assemblySecurity
Evidence

Bukti untuk memuat assembly.

Mengembalikan

Rakitan yang dimuat.

Atribut

Pengecualian

assemblyRefadalah null.

assemblyRef tidak ditemukan.

assemblyRef bukan rakitan yang valid untuk runtime yang saat ini dimuat.

Perakitan atau modul dimuat dua kali dengan dua bukti yang berbeda.

-atau-

assemblyRef menentukan rakitan jarak jauh, tetapi kemampuan untuk menjalankan kode dalam rakitan jarak jauh dinonaktifkan. Lihat <loadFromRemoteSources>.

Keterangan

FileLoadException dilemparkan jika assemblyRef menentukan nama rakitan lengkap, dan rakitan pertama yang cocok dengan nama sederhana memiliki versi, budaya, atau token kunci publik yang berbeda. Loader tidak melanjutkan pemeriksaan untuk rakitan lain yang cocok dengan nama sederhana. Dimulai dengan .NET Framework 4, karena eksekusi kode dalam rakitan jarak jauh dinonaktifkan secara default, FileLoadException juga dilemparkan jika assemblyRef menentukan rakitan jarak jauh. Untuk mengaktifkan eksekusi kode yang dimuat dari lokasi jarak jauh, Anda dapat menggunakan <loadFromRemoteSources> elemen konfigurasi.

Catatan

Jangan gunakan dengan AssemblyName set properti saja CodeBase . Properti CodeBase tidak menyediakan elemen identitas assembly apa pun (seperti nama atau versi), sehingga pemuatan tidak terjadi sesuai dengan aturan load-by-identity, seperti yang Anda harapkan dari Load metode . Sebaliknya, rakitan dimuat menggunakan aturan load-from. Untuk informasi tentang kerugian penggunaan konteks load-from, lihat Assembly.LoadFrom metode kelebihan beban atau Praktik Terbaik untuk Pemuatan Rakitan.

Apakah izin tertentu diberikan atau tidak diberikan kepada rakitan didasarkan pada bukti. Aturan untuk perakitan dan penggabungan bukti keamanan adalah sebagai berikut:

  • Ketika Anda menggunakan Load metode tanpa Evidence parameter, perakitan dimuat dengan bukti bahwa loader memasok.

  • Saat Anda menggunakan Load metode dengan Evidence parameter , potongan bukti digabungkan. Potongan bukti yang disediakan sebagai argumen untuk Load metode menggantikan potongan bukti yang disediakan oleh loader.

  • Saat Anda menggunakan metode kelebihan Load beban dengan Byte[] parameter untuk memuat gambar format file objek umum (COFF), bukti diwariskan dari rakitan panggilan.

  • Saat Anda menggunakan Load metode dengan Byte[] parameter dan Evidence untuk memuat gambar COFF, hanya bukti yang disediakan yang digunakan. Bukti rakitan pemanggilan dan bukti gambar COFF diabaikan.

Catatan

AssemblyName.Name Jika properti dan AssemblyName.CodeBase properti diatur, upaya pertama untuk memuat assembly menggunakan nama tampilan (termasuk versi, budaya, dan sebagainya, seperti yang dikembalikan oleh Assembly.FullName properti ). Jika file tidak ditemukan, CodeBase digunakan untuk mencari assembly. Jika rakitan ditemukan menggunakan CodeBase, nama tampilan dicocokkan dengan assembly. Jika pertandingan gagal, akan FileLoadException dilemparkan.

Jika Anda memanggil Load metode lebih dari sekali pada rakitan yang sama tetapi dengan bukti yang berbeda yang ditentukan, runtime bahasa umum tidak melempar FileLoadException karena kesetaraan dan integritas spesifikasi bukti yang berbeda tidak dapat ditentukan. Bukti yang pertama berhasil adalah bukti yang digunakan.

Lihat juga

Berlaku untuk

Load(Byte[])

Sumber:
Assembly.cs
Sumber:
Assembly.cs
Sumber:
Assembly.cs

Memuat rakitan dengan gambar berbasis format file objek umum (COFF) yang berisi rakitan yang dipancarkan.

public:
 static System::Reflection::Assembly ^ Load(cli::array <System::Byte> ^ rawAssembly);
public static System.Reflection.Assembly Load (byte[] rawAssembly);
static member Load : byte[] -> System.Reflection.Assembly
Public Shared Function Load (rawAssembly As Byte()) As Assembly

Parameter

rawAssembly
Byte[]

Array byte yang merupakan gambar berbasis COFF yang berisi rakitan yang dipancarkan.

Mengembalikan

Rakitan yang dimuat.

Pengecualian

rawAssemblyadalah null.

rawAssembly bukan rakitan yang valid untuk runtime yang saat ini dimuat.

Keterangan

Metode kelebihan beban ini selalu membuat objek baru Assembly dalam konteks beban terisolasinya sendiri.

.NET Framework saja: Tingkat kepercayaan rakitan yang dimuat dengan menggunakan metode ini sama dengan tingkat kepercayaan assembly panggilan. Untuk memuat rakitan dari array byte dengan tingkat kepercayaan domain aplikasi, gunakan Load(Byte[], Byte[], SecurityContextSource) metode kelebihan beban. Untuk informasi selengkapnya tentang penggunaan bukti dengan kelebihan beban Load metode yang mengambil array byte, lihat Load(Byte[], Byte[], Evidence) metode kelebihan beban.

Berlaku untuk

Load(String)

Sumber:
Assembly.CoreCLR.cs
Sumber:
Assembly.CoreCLR.cs
Sumber:
Assembly.CoreCLR.cs

Memuat rakitan dengan nama yang ditentukan.

public:
 static System::Reflection::Assembly ^ Load(System::String ^ assemblyString);
public static System.Reflection.Assembly Load (string assemblyString);
static member Load : string -> System.Reflection.Assembly
Public Shared Function Load (assemblyString As String) As Assembly

Parameter

assemblyString
String

Bentuk panjang atau pendek dari nama rakitan.

Mengembalikan

Rakitan yang dimuat.

Pengecualian

assemblyStringadalah null.

assemblyString adalah string panjang nol.

assemblyString tidak ditemukan.

File yang ditemukan tidak dapat dimuat.

assemblyString bukan rakitan yang valid untuk runtime yang saat ini dimuat.

Contoh

Contoh berikut memuat rakitan dengan nama yang sepenuhnya memenuhi syarat, dan mencantumkan semua jenis yang terkandung dalam rakitan yang ditentukan. Untuk informasi tentang cara mendapatkan nama rakitan yang sepenuhnya memenuhi syarat, lihat Nama Rakitan.

using namespace System;
using namespace System::Collections;
using namespace System::Reflection;
int main()
{
    // You must supply a valid fully qualified assembly name.            
    Assembly^ SampleAssembly = Assembly::Load
        ( "SampleAssembly, Version=1.0.2004.0, Culture=neutral, PublicKeyToken=8744b20f8da049e3" );
    array<Type^>^ Types = SampleAssembly->GetTypes();
    
    // Display all the types contained in the specified assembly.
    IEnumerator^ myEnum = Types->GetEnumerator();
    Type^ oType;
    while ( myEnum->MoveNext() )
    {
        oType = safe_cast<Type^>(myEnum->Current);
        Console::WriteLine( oType->Name );
    }
}
using System;
using System.Reflection;

class Class1
{
    public static void Main()
    {
        // You must supply a valid fully qualified assembly name.
        Assembly SampleAssembly = Assembly.Load
            ("SampleAssembly, Version=1.0.2004.0, Culture=neutral, PublicKeyToken=8744b20f8da049e3");
        // Display all the types contained in the specified assembly.
        foreach (Type oType in SampleAssembly.GetTypes()) {
            Console.WriteLine(oType.Name);
        }
    }
}
Imports System.Reflection

Class Class1
    Public Shared Sub Main()
        ' You must supply a valid fully qualified assembly name.            
        Dim SampleAssembly As [Assembly] = _
            [Assembly].Load("SampleAssembly, Version=1.0.2004.0, Culture=neutral, PublicKeyToken=8744b20f8da049e3")
        Dim oType As Type
        ' Display all the types contained in the specified assembly.
        For Each oType In SampleAssembly.GetTypes()
            Console.WriteLine(oType.Name)
        Next oType
    End Sub	'LoadSample
End Class

Keterangan

Untuk memuat assembly yang benar, disarankan untuk memanggil Load metode dengan meneruskan bentuk panjang nama assembly. Bentuk panjang nama rakitan terdiri dari nama sederhananya (seperti "Sistem" untuk assembly System.dll) bersama dengan versi, budaya, token kunci publik, dan arsitektur prosesornya secara opsional. Ini sesuai dengan properti assembly FullName . Contoh berikut mengilustrasikan penggunaan nama panjang untuk memuat rakitan System.dll untuk .NET Framework 4:

using System;
using System.Reflection;

public class Example
{
   public static void Main()
   {
      string longName = "system, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089";
      Assembly assem = Assembly.Load(longName);
      if (assem == null)
         Console.WriteLine("Unable to load assembly...");
      else
         Console.WriteLine(assem.FullName);
   }
}
// The example displays the following output:
//        system, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
Imports System.Reflection

Module Example
   Public Sub Main()
      Dim longName As String = "system, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
      Dim assem As Assembly = Assembly.Load(longName)
      If assem Is Nothing Then
         Console.WriteLine("Unable to load assembly...")
      Else
         Console.WriteLine(assem.FullName)
      End If
   End Sub
End Module
' The example displays the following output:
'       system, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089

FileLoadException dilemparkan jika assemblyString menentukan nama rakitan lengkap, dan rakitan pertama yang cocok dengan nama sederhana memiliki versi, budaya, atau token kunci publik yang berbeda. Loader tidak melanjutkan pemeriksaan untuk rakitan lain yang cocok dengan nama sederhana.

Dalam .NET Framework versi 2.0, arsitektur prosesor ditambahkan ke identitas perakitan, dan dapat ditentukan sebagai bagian dari string nama rakitan. Misalnya, "ProcessorArchitecture=msil". Namun, cara yang disarankan untuk menentukan nama rakitan adalah dengan membuat AssemblyName objek dan meneruskannya ke kelebihan beban Load metode yang sesuai. Lihat AssemblyName.ProcessorArchitecture.

Lihat juga

Berlaku untuk

Load(AssemblyName)

Sumber:
Assembly.CoreCLR.cs
Sumber:
Assembly.CoreCLR.cs
Sumber:
Assembly.CoreCLR.cs

Memuat assembly yang diberikan AssemblyName.

public:
 static System::Reflection::Assembly ^ Load(System::Reflection::AssemblyName ^ assemblyRef);
public static System.Reflection.Assembly Load (System.Reflection.AssemblyName assemblyRef);
static member Load : System.Reflection.AssemblyName -> System.Reflection.Assembly
Public Shared Function Load (assemblyRef As AssemblyName) As Assembly

Parameter

assemblyRef
AssemblyName

Objek yang menjelaskan perakitan yang akan dimuat.

Mengembalikan

Rakitan yang dimuat.

Pengecualian

assemblyRefadalah null.

assemblyRef tidak ditemukan.

File yang ditemukan tidak dapat dimuat.

-atau-

assemblyRef menentukan rakitan jarak jauh, tetapi kemampuan untuk menjalankan kode dalam rakitan jarak jauh dinonaktifkan. Lihat <loadFromRemoteSources>.

Catatan: Di .NET untuk aplikasi Bursa Windows atau Pustaka Kelas Portabel, tangkap pengecualian kelas dasar, IOException, sebagai gantinya.

assemblyRef bukan rakitan yang valid untuk runtime yang saat ini dimuat.

Contoh

Contoh berikut membuat instans AssemblyName objek dan menggunakannya untuk memuat assembly sysglobal.dll . Contoh kemudian menampilkan nama lengkap jenis publik assembly.

using System;
using System.Reflection;

public class Example
{
   public static void Main()
   {
      String fullName = "sysglobl, Version=4.0.0.0, Culture=neutral, " +
                        "PublicKeyToken=b03f5f7f11d50a3a, processor architecture=MSIL";
      var an = new AssemblyName(fullName);
      var assem = Assembly.Load(an);
      Console.WriteLine("Public types in assembly {0}:", assem.FullName);
      foreach (var t in assem.GetTypes())
         if (t.IsPublic)
            Console.WriteLine("   {0}", t.FullName);
   }
}
// The example displays the following output:
//   Public types in assembly sysglobl, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a:
//      System.Globalization.CultureAndRegionInfoBuilder
//      System.Globalization.CultureAndRegionModifiers
Imports System.Reflection

Module Example
   Public Sub Main()
      Dim fullName As String = "sysglobl, Version=4.0.0.0, Culture=neutral, " +
                               "PublicKeyToken=b03f5f7f11d50a3a, processor architecture=MSIL"
      Dim an As New AssemblyName(fullName)
      Dim assem As Assembly = Assembly.Load(an)
      Console.WriteLine("Public types in assembly {0}:", assem.FullName)
      For Each t As Type in assem.GetTypes()
         If t.IsPublic Then Console.WriteLine("   {0}", t.FullName)
      Next
   End Sub
End Module
' The example displays the following output:
'   Public types in assembly sysglobl, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a:
'      System.Globalization.CultureAndRegionInfoBuilder
'      System.Globalization.CultureAndRegionModifiers

Keterangan

FileLoadException dilemparkan jika assemblyRef menentukan nama rakitan lengkap dan rakitan pertama yang cocok dengan nama sederhana memiliki versi, budaya, atau token kunci publik yang berbeda. Loader tidak melanjutkan pemeriksaan untuk rakitan lain yang cocok dengan nama sederhana. Dimulai dengan .NET Framework 4, karena eksekusi kode dalam rakitan jarak jauh dinonaktifkan secara default, FileLoadException juga dilemparkan jika assemblyRef menentukan rakitan jarak jauh. Untuk mengaktifkan eksekusi kode yang dimuat dari lokasi jarak jauh, Anda dapat menggunakan <loadFromRemoteSources> elemen konfigurasi.

Catatan

Jangan gunakan dengan AssemblyName set properti saja CodeBase . Properti CodeBase tidak menyediakan elemen identitas assembly apa pun (seperti nama atau versi), sehingga pemuatan tidak terjadi sesuai dengan aturan load-by-identity, seperti yang Anda harapkan dari Load metode . Sebaliknya, rakitan dimuat menggunakan aturan load-from. Untuk informasi tentang kerugian penggunaan konteks load-from, lihat Assembly.LoadFrom metode kelebihan beban atau Praktik Terbaik untuk Pemuatan Rakitan.

Catatan

AssemblyName.Name Jika properti dan AssemblyName.CodeBase properti diatur, upaya pertama untuk memuat assembly menggunakan nama tampilan (termasuk versi, budaya, dan sebagainya, seperti yang dikembalikan oleh Assembly.FullName properti ). Jika file tidak ditemukan, CodeBase digunakan untuk mencari assembly. Jika rakitan ditemukan menggunakan CodeBase, nama tampilan dicocokkan dengan assembly. Jika pertandingan gagal, akan FileLoadException dilemparkan.

Lihat juga

Berlaku untuk

Load(Byte[], Byte[])

Sumber:
Assembly.cs
Sumber:
Assembly.cs
Sumber:
Assembly.cs

Memuat rakitan dengan gambar berbasis format file objek umum (COFF) yang berisi rakitan yang dipancarkan, secara opsional termasuk simbol untuk perakitan.

public:
 static System::Reflection::Assembly ^ Load(cli::array <System::Byte> ^ rawAssembly, cli::array <System::Byte> ^ rawSymbolStore);
public static System.Reflection.Assembly Load (byte[] rawAssembly, byte[]? rawSymbolStore);
public static System.Reflection.Assembly Load (byte[] rawAssembly, byte[] rawSymbolStore);
static member Load : byte[] * byte[] -> System.Reflection.Assembly
Public Shared Function Load (rawAssembly As Byte(), rawSymbolStore As Byte()) As Assembly

Parameter

rawAssembly
Byte[]

Array byte yang merupakan gambar berbasis COFF yang berisi rakitan yang dipancarkan.

rawSymbolStore
Byte[]

Array byte yang berisi byte mentah yang mewakili simbol untuk assembly.

Mengembalikan

Rakitan yang dimuat.

Pengecualian

rawAssemblyadalah null.

rawAssembly bukan rakitan yang valid untuk runtime yang saat ini dimuat.

Keterangan

Metode kelebihan beban ini selalu membuat objek baru Assembly dalam konteks beban terisolasinya sendiri.

.NET Framework saja: Tingkat kepercayaan rakitan yang dimuat dengan menggunakan metode ini sama dengan tingkat kepercayaan assembly panggilan. Untuk memuat rakitan dari array byte dengan tingkat kepercayaan domain aplikasi, gunakan Load(Byte[], Byte[], SecurityContextSource) metode kelebihan beban. Untuk informasi selengkapnya tentang penggunaan bukti dengan kelebihan beban Load metode yang mengambil array byte, lihat Load(Byte[], Byte[], Evidence) metode kelebihan beban.

Berlaku untuk