Assembly.Load Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Memuat rakitan.
Overload
| Nama | Deskripsi |
|---|---|
| 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 rakitan. |
| Load(String, Evidence) |
Kedaluwarsa.
Memuat rakitan yang diberikan nama tampilannya dan menggunakan bukti yang disediakan. |
| Load(AssemblyName, Evidence) |
Kedaluwarsa.
Memuat assembly yang diberikan AssemblyName. Rakitan 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 rakitan. |
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 rakitan yang dipancarkan.
- rawSymbolStore
- Byte[]
Array byte yang berisi byte mentah yang mewakili simbol untuk rakitan.
- securityContextSource
- SecurityContextSource
Sumber konteks keamanan.
Mengembalikan
Rakitan yang dimuat.
Pengecualian
rawAssembly adalah 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 rakitan 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 rakitan.
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 rakitan yang dipancarkan.
- rawSymbolStore
- Byte[]
Array byte yang berisi byte mentah yang mewakili simbol untuk rakitan.
- securityEvidence
- Evidence
Bukti untuk memuat rakitan.
Mengembalikan
Rakitan yang dimuat.
- Atribut
Pengecualian
rawAssembly adalah null.
rawAssembly bukan rakitan yang valid untuk runtime yang saat ini dimuat.
Rakitan 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
Kelebihan metode ini selalu membuat objek baru Assembly dalam konteks beban terisolasinya sendiri.
Rakitan 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 Load metode kelebihan beban dengan
Byte[]parameter untuk memuat gambar 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 perakitan panggilan dan bukti gambar COFF diabaikan.
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.
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 rakitan 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 rakitan.
Mengembalikan
Rakitan yang dimuat.
- Atribut
Pengecualian
assemblyString adalah null.
assemblyString tidak ditemukan.
assemblyString bukan rakitan yang valid untuk runtime yang saat ini dimuat.
File yang ditemukan tidak dapat dimuat.
-atau-
Rakitan 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 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 perakitan panggilan dan bukti gambar COFF diabaikan.
Jika Anda memanggil metode ini 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.
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 AssemblyName membuat objek dan meneruskannya ke kelebihan muatan 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 rakitan yang akan dimuat.
- assemblySecurity
- Evidence
Bukti untuk memuat rakitan.
Mengembalikan
Rakitan yang dimuat.
- Atribut
Pengecualian
assemblyRef adalah null.
assemblyRef tidak ditemukan.
assemblyRef bukan rakitan yang valid untuk runtime yang saat ini dimuat.
Rakitan atau modul dimuat dua kali dengan dua bukti yang berbeda.
-atau-
assemblyRef menentukan lokasi yang dinonaktifkan berdasarkan <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.
Lihat <loadFromRemoteSources> untuk memuat rakitan dari lokasi jarak jauh.
Nota
Jangan gunakan dengan AssemblyName set properti saja CodeBase . Properti CodeBase tidak menyediakan elemen identitas assembly (seperti nama atau versi), sehingga pemuatan tidak terjadi sesuai dengan aturan load-by-identity, seperti yang Anda harapkan dari Load metode . Sebagai gantinya, 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, 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 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 perakitan panggilan dan bukti gambar COFF diabaikan.
Nota
AssemblyName.Name Jika properti dan AssemblyName.CodeBase properti diatur, upaya pertama untuk memuat rakitan 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 rakitan. 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
- 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);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Types and members the loaded assembly depends on might be removed")]
public static System.Reflection.Assembly Load(byte[] rawAssembly);
public static System.Reflection.Assembly Load(byte[] rawAssembly);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Types and members the loaded assembly depends on might be removed")>]
static member Load : byte[] -> System.Reflection.Assembly
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.
- Atribut
Pengecualian
rawAssembly adalah null.
rawAssembly bukan rakitan yang valid untuk runtime yang saat ini dimuat.
Keterangan
Kelebihan metode 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 rakitan 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
- 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
assemblyString adalah 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 yang diberi 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 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
Di .NET Core/.NET 5+, rakitan target akan dimuat ke dalam saat ini AssemblyLoadContext atau ke dalam AssemblyLoadContext.CurrentContextualReflectionContext konteks jika diatur. Untuk informasi selengkapnya tentang pemuatan perakitan, lihat Algoritma pemuatan rakitan terkelola.
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 perakitan 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 AssemblyName membuat objek dan meneruskannya ke kelebihan muatan 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
- 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 rakitan yang akan dimuat.
Mengembalikan
Rakitan yang dimuat.
Pengecualian
assemblyRef adalah null.
assemblyRef tidak ditemukan.
File yang ditemukan tidak dapat dimuat.
-atau-
.NET Framework saja: assemblyRef menentukan lokasi yang dinonaktifkan berdasarkan <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 sysglobal.dll rakitan. 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
Di .NET Core/.NET 5+, rakitan target akan dimuat ke dalam saat ini AssemblyLoadContext atau ke dalam AssemblyLoadContext.CurrentContextualReflectionContext konteks jika diatur. Untuk informasi selengkapnya tentang pemuatan perakitan, lihat Algoritma pemuatan rakitan terkelola.
Nota
.NET Framework saja: Untuk informasi tentang memuat rakitan dari lokasi jarak jauh, lihat <loadFromRemoteSources>.
Nota
.NET Framework saja: Jangan gunakan dengan AssemblyName set properti saja CodeBase . Properti CodeBase tidak menyediakan elemen identitas assembly (seperti nama atau versi), sehingga pemuatan tidak terjadi sesuai dengan aturan load-by-identity, seperti yang Anda harapkan dari Load metode . Sebagai gantinya, 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.
Nota
.NET Framework saja:AssemblyName.Name Jika properti dan AssemblyName.CodeBase properti diatur, upaya pertama untuk memuat rakitan 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 rakitan. Jika pertandingan gagal, akan FileLoadException dilemparkan.
Lihat juga
Berlaku untuk
Load(Byte[], Byte[])
- Sumber:
- Assembly.cs
- Sumber:
- Assembly.cs
- 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 rakitan.
public:
static System::Reflection::Assembly ^ Load(cli::array <System::Byte> ^ rawAssembly, cli::array <System::Byte> ^ rawSymbolStore);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Types and members the loaded assembly depends on might be removed")]
public static System.Reflection.Assembly Load(byte[] rawAssembly, byte[]? rawSymbolStore);
public static System.Reflection.Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore);
public static System.Reflection.Assembly Load(byte[] rawAssembly, byte[]? rawSymbolStore);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Types and members the loaded assembly depends on might be removed")>]
static member Load : byte[] * byte[] -> System.Reflection.Assembly
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 rakitan.
Mengembalikan
Rakitan yang dimuat.
- Atribut
Pengecualian
rawAssembly adalah null.
rawAssembly bukan rakitan yang valid untuk runtime yang saat ini dimuat.
Keterangan
Di .NET Core/5+, rakitan target dimuat ke dalam .AssemblyLoadContext Untuk informasi selengkapnya tentang pemuatan perakitan, lihat Algoritma pemuatan rakitan terkelola.
Kelebihan metode 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 rakitan 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.