Assembly.Load Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Bir bütünleştirilmiş kodu yükler.
Aşırı Yüklemeler
Load(Byte[], Byte[], SecurityContextSource) |
Derlemeyi, isteğe bağlı olarak simgeler de dahil olmak üzere ve güvenlik bağlamı için kaynağı belirterek, yayılan bir derleme içeren ortak nesne dosyası biçimi (COFF) tabanlı bir görüntüyle yükler. |
Load(Byte[], Byte[], Evidence) |
Geçersiz.
Derlemeyi, isteğe bağlı olarak derleme için simgeler ve kanıtlar da dahil olmak üzere, yayılan bir derlemeyi içeren ortak nesne dosya biçimi (COFF) tabanlı bir görüntüyle yükler. |
Load(String, Evidence) |
Geçersiz.
Görünen adı verilen ve sağlanan kanıtı kullanan bir derlemeyi yükler. |
Load(AssemblyName, Evidence) |
Geçersiz.
verilen bir derlemeyi AssemblyNameyükler. Derleme, sağlanan kanıt kullanılarak yüklenir. |
Load(Byte[]) |
Derlemeyi, yayılan bir derleme içeren ortak nesne dosyası biçimi (COFF) tabanlı bir görüntüyle yükler. |
Load(String) |
Belirtilen ada sahip bir derleme yükler. |
Load(AssemblyName) |
verilen bir derlemeyi AssemblyNameyükler. |
Load(Byte[], Byte[]) |
Derlemeyi, isteğe bağlı olarak derleme için simgeler de dahil olmak üzere, yayılan bir derlemeyi içeren ortak nesne dosyası biçimi (COFF) tabanlı bir görüntüyle yükler. |
Load(Byte[], Byte[], SecurityContextSource)
Derlemeyi, isteğe bağlı olarak simgeler de dahil olmak üzere ve güvenlik bağlamı için kaynağı belirterek, yayılan bir derleme içeren ortak nesne dosyası biçimi (COFF) tabanlı bir görüntüyle yükler.
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
Parametreler
- rawAssembly
- Byte[]
Yayılan derlemeyi içeren COFF tabanlı bir görüntü olan bayt dizisi.
- rawSymbolStore
- Byte[]
Derlemenin simgelerini temsil eden ham baytları içeren bir bayt dizisi.
- securityContextSource
- SecurityContextSource
Güvenlik bağlamının kaynağı.
Döndürülenler
Yüklenen derleme.
Özel durumlar
rawAssembly
, null
değeridir.
rawAssembly
şu anda yüklü olan çalışma zamanı için geçerli bir derleme değil.
değeri securityContextSource
numaralandırma değerlerinden biri değildir.
Açıklamalar
Derleme, güvenlik bağlamı için belirtilen kaynak kullanılarak çağıranın uygulama etki alanına yüklenir. Belirtildiyse rawSymbolStore
, derlemenin simgelerini temsil eden ham baytlar da yüklenir.
Şunlara uygulanır
Load(Byte[], Byte[], Evidence)
Dikkat
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.
Derlemeyi, isteğe bağlı olarak derleme için simgeler ve kanıtlar da dahil olmak üzere, yayılan bir derlemeyi içeren ortak nesne dosya biçimi (COFF) tabanlı bir görüntüyle yükler.
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
Parametreler
- rawAssembly
- Byte[]
Yayılan derlemeyi içeren COFF tabanlı bir görüntü olan bayt dizisi.
- rawSymbolStore
- Byte[]
Derlemenin simgelerini temsil eden ham baytları içeren bir bayt dizisi.
- securityEvidence
- Evidence
Derleme yüklemesi için kanıt.
Döndürülenler
Yüklenen derleme.
- Öznitelikler
Özel durumlar
rawAssembly
, null
değeridir.
rawAssembly
şu anda yüklü olan çalışma zamanı için geçerli bir derleme değil.
Bir derleme veya modül iki farklı kanıtla iki kez yüklendi.
securityEvidence
değildir null
. Varsayılan olarak, eski CAS ilkesi .NET Framework 4'te etkinleştirilmez; etkin olmadığında olmalıdır securityEvidence
null
.
Açıklamalar
Bu yöntem aşırı yüklemesi her zaman kendi yalıtılmış yük bağlamında yeni Assembly bir nesne oluşturur.
Derleme, sağlanan kanıt kullanılarak yüklenir. Derleme simgelerini temsil eden ham baytlar da yüklenir.
Bir derlemeye belirli izinlerin verilip verilmediği kanıta göre belirlenir. Derleme ve güvenlik kanıtı birleştirme kuralları aşağıdaki gibidir:
Parametre içermeyen Evidence bir Load yöntem kullandığınızda, derleme yükleyicinin sağladığı kanıt ile yüklenir.
Bir parametre ile Evidence bir Load yöntem kullandığınızda, kanıt parçaları birleştirilir. Yöntemine bağımsız değişken Load olarak sağlanan kanıt parçaları, yükleyici tarafından sağlanan kanıt parçalarının yerini alır.
COFF görüntüsünü yüklemek için bir
Byte[]
parametre ile yöntem aşırı yüklemesi kullandığınızdaLoad, kanıt çağıran derlemeden devralınır.Bir parametre ile bir Load
Byte[]
yöntem kullandığınızda ve Evidence bir COFF görüntüsünü yüklemek için yalnızca sağlanan kanıt kullanılır. Çağırma derlemesinin kanıtı ve COFF görüntüsünün kanıtı yoksayılır.
Yöntemini aynı derlemede birden çok kez çağırırsanız Load ancak farklı bir kanıt belirtilirse, farklı kanıt belirtimlerinin eşitliği ve bütünlüğü belirlenemediğinden ortak dil çalışma zamanı bir FileLoadException oluşturmaz. İlk başarılı olan kanıt, kullanılan kanıttır.
Şunlara uygulanır
Load(String, Evidence)
Dikkat
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.
Görünen adı verilen ve sağlanan kanıtı kullanan bir derlemeyi yükler.
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
Parametreler
- assemblyString
- String
Derlemenin görünen adı.
- assemblySecurity
- Evidence
Derleme yüklemesi için kanıt.
Döndürülenler
Yüklenen derleme.
- Öznitelikler
Özel durumlar
assemblyString
, null
değeridir.
assemblyString
bulunamadı.
assemblyString
şu anda yüklü olan çalışma zamanı için geçerli bir derleme değil.
Bulunan bir dosya yüklenemedi.
-veya-
Bir derleme veya modül iki farklı kanıtla iki kez yüklendi.
Açıklamalar
FileLoadException tam derleme adını belirtirse ve basit adla eşleşen ilk derleme farklı bir sürüme, kültüre veya ortak anahtar belirtecine sahipse assemblyString
oluşturulur. Yükleyici, basit adla eşleşen diğer derlemeleri yoklama işlemine devam etmez.
Bir derlemeye belirli izinlerin verilip verilmediği kanıta göre belirlenir. Derleme ve güvenlik kanıtı birleştirme kuralları aşağıdaki gibidir:
Parametre içermeyen Evidence bir Load yöntem kullandığınızda, derleme yükleyicinin sağladığı kanıt ile yüklenir.
Bir parametre ile Evidence bir Load yöntem kullandığınızda, kanıt parçaları birleştirilir. Yöntemine bağımsız değişken Load olarak sağlanan kanıt parçaları, yükleyici tarafından sağlanan kanıt parçalarının yerini alır.
Ortak nesne Load dosyası biçimi (COFF) görüntüsünü yüklemek için bir
Byte[]
parametre ile yöntem aşırı yüklemesi kullandığınızda, kanıt çağıran derlemeden devralınır.Bir parametre ile bir Load
Byte[]
yöntem kullandığınızda ve Evidence bir COFF görüntüsünü yüklemek için yalnızca sağlanan kanıt kullanılır. Çağırma derlemesinin kanıtı ve COFF görüntüsünün kanıtı yoksayılır.
Bu yöntemi aynı derlemede birden çok kez çağırırsanız ancak farklı bir kanıt belirtilirse, farklı kanıt belirtimlerinin eşitliği ve bütünlüğü belirlenemediğinden ortak dil çalışma zamanı bir FileLoadException oluşturmaz. İlk başarılı olan kanıt, kullanılan kanıttır.
.NET Framework 2.0 sürümünde işlemci mimarisi derleme kimliğini eklenmiştir ve derleme adı dizelerinin bir parçası olarak nitelendirilebilir. Örneğin, "ProcessorArchitecture=msil". Ancak, derleme adını belirtmenin önerilen yolu bir AssemblyName nesne oluşturmak ve bunu yöntemin uygun bir aşırı yüklemesine Load geçirmektir. Bkz. AssemblyName.ProcessorArchitecture.
Ayrıca bkz.
Şunlara uygulanır
Load(AssemblyName, Evidence)
Dikkat
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.
verilen bir derlemeyi AssemblyNameyükler. Derleme, sağlanan kanıt kullanılarak yüklenir.
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
Parametreler
- assemblyRef
- AssemblyName
Yüklenecek derlemeyi açıklayan nesne.
- assemblySecurity
- Evidence
Derleme yüklemesi için kanıt.
Döndürülenler
Yüklenen derleme.
- Öznitelikler
Özel durumlar
assemblyRef
, null
değeridir.
assemblyRef
bulunamadı.
assemblyRef
şu anda yüklü olan çalışma zamanı için geçerli bir derleme değil.
Bir derleme veya modül iki farklı kanıtla iki kez yüklendi.
-veya-
assemblyRef
loadFromRemoteSources> temelinde< devre dışı bırakılmış bir konumu belirtir.
Açıklamalar
FileLoadException tam derleme adını belirtirse ve basit adla eşleşen ilk derleme farklı bir sürüme, kültüre veya ortak anahtar belirtecine sahipse assemblyRef
oluşturulur. Yükleyici, basit adla eşleşen diğer derlemeleri yoklama işlemine devam etmez.
Uzak konumlardan derlemeleri yükleme bölümüne bakın <loadFromRemoteSources>
.
Not
Yalnızca CodeBase özellik kümesiyle bir AssemblyName kullanmayın. CodeBase özelliği, derleme kimliğinin herhangi bir öğesini (ad veya sürüm gibi) sağlamaz, bu nedenle yükleme yönteminden Load bekleyebileceğiniz gibi, kimlik tarafından yükleme kurallarına göre gerçekleşmez. Bunun yerine derleme, yükleme gelen kuralları kullanılarak yüklenir. Yükten yükleme bağlamını kullanmanın dezavantajları hakkında bilgi için bkz Assembly.LoadFrom . Yöntem aşırı yüklemesi veya Derleme Yükleme için En İyi Yöntemler.
Bir derlemeye belirli izinlerin verilip verilmediği kanıta göre belirlenir. Derleme ve güvenlik kanıtı birleştirme kuralları aşağıdaki gibidir:
Parametre içermeyen Evidence bir Load yöntem kullandığınızda, derleme yükleyicinin sağladığı kanıt ile yüklenir.
Bir parametre ile Evidence bir Load yöntem kullandığınızda, kanıt parçaları birleştirilir. Yöntemine bağımsız değişken Load olarak sağlanan kanıt parçaları, yükleyici tarafından sağlanan kanıt parçalarının yerini alır.
Ortak nesne Load dosyası biçimi (COFF) görüntüsünü yüklemek için bir
Byte[]
parametre ile yöntem aşırı yüklemesi kullandığınızda, kanıt çağıran derlemeden devralınır.Bir parametre ile bir Load
Byte[]
yöntem kullandığınızda ve Evidence bir COFF görüntüsünü yüklemek için yalnızca sağlanan kanıt kullanılır. Çağırma derlemesinin kanıtı ve COFF görüntüsünün kanıtı yoksayılır.
Not
Hem özellik hem AssemblyName.CodeBase de AssemblyName.Name özellik ayarlanırsa, derlemeyi yüklemeye yönelik ilk girişimde görünen ad kullanılır (sürüm, kültür vb., özellik tarafından Assembly.FullName döndürülen gibi). Dosya bulunamazsa, CodeBase derlemeyi aramak için kullanılır. Derleme kullanılarak CodeBasebulunursa, görünen ad derlemeyle eşleştirilir. Eşleşme başarısız olursa, bir FileLoadException oluşturulur.
Yöntemini aynı derlemede birden çok kez çağırırsanız Load ancak farklı bir kanıt belirtilirse, farklı kanıt belirtimlerinin eşitliği ve bütünlüğü belirlenemediğinden ortak dil çalışma zamanı bir FileLoadException oluşturmaz. İlk başarılı olan kanıt, kullanılan kanıttır.
Ayrıca bkz.
Şunlara uygulanır
Load(Byte[])
- Kaynak:
- Assembly.cs
- Kaynak:
- Assembly.cs
- Kaynak:
- Assembly.cs
Derlemeyi, yayılan bir derleme içeren ortak nesne dosyası biçimi (COFF) tabanlı bir görüntüyle yükler.
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
Parametreler
- rawAssembly
- Byte[]
Yayılan derlemeyi içeren COFF tabanlı bir görüntü olan bayt dizisi.
Döndürülenler
Yüklenen derleme.
Özel durumlar
rawAssembly
, null
değeridir.
rawAssembly
şu anda yüklü olan çalışma zamanı için geçerli bir derleme değil.
Açıklamalar
Bu yöntem aşırı yüklemesi her zaman kendi yalıtılmış yük bağlamında yeni Assembly bir nesne oluşturur.
Yalnızca .NET Framework: Bu yöntem kullanılarak yüklenen bir derlemenin güven düzeyi, çağıran derlemenin güven düzeyiyle aynıdır. Uygulama etki alanının güven düzeyine sahip bir bayt dizisinden derleme yüklemek için yöntem aşırı yüklemesini Load(Byte[], Byte[], SecurityContextSource) kullanın. Bayt dizileri alan yöntemin aşırı yüklemeleriyle Load kanıt kullanımı hakkında daha fazla bilgi için bkz Load(Byte[], Byte[], Evidence) . yöntem aşırı yüklemesi.
Şunlara uygulanır
Load(String)
- Kaynak:
- Assembly.CoreCLR.cs
- Kaynak:
- Assembly.CoreCLR.cs
- Kaynak:
- Assembly.CoreCLR.cs
Belirtilen ada sahip bir derleme yükler.
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
Parametreler
- assemblyString
- String
Derleme adının uzun veya kısa biçimi.
Döndürülenler
Yüklenen derleme.
Özel durumlar
assemblyString
, null
değeridir.
assemblyString
sıfır uzunlukta bir dizedir.
assemblyString
bulunamadı.
Bulunan bir dosya yüklenemedi.
assemblyString
şu anda yüklü olan çalışma zamanı için geçerli bir derleme değil.
Örnekler
Aşağıdaki örnek, tam adı verilen bir derlemeyi yükler ve belirtilen derlemede bulunan tüm türleri listeler. Tam derleme adını alma hakkında bilgi için bkz. Derleme Adları.
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
Açıklamalar
Doğru derlemeyi yüklemek için, derleme adının uzun biçimini geçirerek yöntemini çağırmak Load
önerilir. Derleme adının uzun biçimi, sürümü, kültürü, ortak anahtar belirteci ve isteğe bağlı olarak işlemci mimarisiyle birlikte basit adından (System.dll derleme için "Sistem" gibi) oluşur. Derlemenin FullName özelliğine karşılık gelir. Aşağıdaki örnek, .NET Framework 4 için System.dll derlemesini yüklemek için uzun bir ad kullanımını göstermektedir:
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 tam derleme adını belirtirse ve basit adla eşleşen ilk derleme farklı bir sürüme, kültüre veya ortak anahtar belirtecine sahipse assemblyString
oluşturulur. Yükleyici, basit adla eşleşen diğer derlemeleri yoklama işlemine devam etmez.
.NET Framework 2.0 sürümünde işlemci mimarisi derleme kimliğini eklenmiştir ve derleme adı dizelerinin bir parçası olarak nitelendirilebilir. Örneğin, "ProcessorArchitecture=msil". Ancak, derleme adını belirtmenin önerilen yolu bir AssemblyName nesne oluşturmak ve bunu yöntemin uygun bir aşırı yüklemesine Load geçirmektir. Bkz. AssemblyName.ProcessorArchitecture.
Ayrıca bkz.
Şunlara uygulanır
Load(AssemblyName)
- Kaynak:
- Assembly.CoreCLR.cs
- Kaynak:
- Assembly.CoreCLR.cs
- Kaynak:
- Assembly.CoreCLR.cs
verilen bir derlemeyi AssemblyNameyükler.
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
Parametreler
- assemblyRef
- AssemblyName
Yüklenecek derlemeyi açıklayan nesne.
Döndürülenler
Yüklenen derleme.
Özel durumlar
assemblyRef
, null
değeridir.
assemblyRef
bulunamadı.
Bulunan bir dosya yüklenemedi.
-veya-
Yalnızca .NET Framework: assemblyRef
loadFromRemoteSources> temelinde< devre dışı bırakılmış bir konumu belirtir.
Not: Windows Mağazası uygulamaları için .NET'te veya Taşınabilir Sınıf Kitaplığı'nda bunun yerine temel sınıf özel durumunu IOExceptionyakalayın.
assemblyRef
şu anda yüklü olan çalışma zamanı için geçerli bir derleme değil.
Örnekler
Aşağıdaki örnekte bir AssemblyName nesne örneği oluşturulur ve derlemeyi sysglobal.dll
yüklemek için kullanılır. Örnek daha sonra derlemenin genel türlerinin tam adını görüntüler.
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
Açıklamalar
FileLoadException tam derleme adını belirtirse ve basit adla eşleşen ilk derleme farklı bir sürüme, kültüre veya ortak anahtar belirtecine sahipse assemblyRef
oluşturulur. Yükleyici, basit adla eşleşen diğer derlemeleri yoklama işlemine devam etmez.
Yalnızca .NET Framework: Uzak konumlardan derlemeleri yükleme bölümüne bakın <loadFromRemoteSources>
.
Not
Yalnızca .NET Framework: Yalnızca CodeBase özellik kümesiyle bir AssemblyName kullanmayın. CodeBase özelliği, derleme kimliğinin herhangi bir öğesini (ad veya sürüm gibi) sağlamaz, bu nedenle yükleme yönteminden Load bekleyebileceğiniz gibi, kimlik tarafından yükleme kurallarına göre gerçekleşmez. Bunun yerine derleme, yükleme gelen kuralları kullanılarak yüklenir. Yükten yükleme bağlamını kullanmanın dezavantajları hakkında bilgi için bkz Assembly.LoadFrom . Yöntem aşırı yüklemesi veya Derleme Yükleme için En İyi Yöntemler.
Not
Yalnızca .NET Framework: Hem özellik hem AssemblyName.CodeBase de AssemblyName.Name özellik ayarlanırsa, derlemeyi yüklemeye yönelik ilk girişimde görünen ad kullanılır (sürüm, kültür vb., özellik tarafından Assembly.FullName döndürülen gibi). Dosya bulunamazsa, CodeBase derlemeyi aramak için kullanılır. Derleme kullanılarak CodeBasebulunursa, görünen ad derlemeyle eşleştirilir. Eşleşme başarısız olursa, bir FileLoadException oluşturulur.
Ayrıca bkz.
Şunlara uygulanır
Load(Byte[], Byte[])
- Kaynak:
- Assembly.cs
- Kaynak:
- Assembly.cs
- Kaynak:
- Assembly.cs
Derlemeyi, isteğe bağlı olarak derleme için simgeler de dahil olmak üzere, yayılan bir derlemeyi içeren ortak nesne dosyası biçimi (COFF) tabanlı bir görüntüyle yükler.
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
Parametreler
- rawAssembly
- Byte[]
Yayılan derlemeyi içeren COFF tabanlı bir görüntü olan bayt dizisi.
- rawSymbolStore
- Byte[]
Derlemenin simgelerini temsil eden ham baytları içeren bir bayt dizisi.
Döndürülenler
Yüklenen derleme.
Özel durumlar
rawAssembly
, null
değeridir.
rawAssembly
şu anda yüklü olan çalışma zamanı için geçerli bir derleme değil.
Açıklamalar
Bu yöntem aşırı yüklemesi her zaman kendi yalıtılmış yük bağlamında yeni Assembly bir nesne oluşturur.
Yalnızca .NET Framework: Bu yöntem kullanılarak yüklenen bir derlemenin güven düzeyi, çağıran derlemenin güven düzeyiyle aynıdır. Uygulama etki alanının güven düzeyine sahip bir bayt dizisinden derleme yüklemek için yöntem aşırı yüklemesini Load(Byte[], Byte[], SecurityContextSource) kullanın. Bayt dizileri alan yöntemin aşırı yüklemeleriyle Load kanıt kullanımı hakkında daha fazla bilgi için bkz Load(Byte[], Byte[], Evidence) . yöntem aşırı yüklemesi.