Activator.CreateComInstanceFrom 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.
Membuat instans objek COM yang namanya ditentukan.
Overload
CreateComInstanceFrom(String, String) |
Membuat instans objek COM yang namanya ditentukan, menggunakan file rakitan bernama dan konstruktor tanpa parameter. |
CreateComInstanceFrom(String, String, Byte[], AssemblyHashAlgorithm) |
Membuat instans objek COM yang namanya ditentukan, menggunakan file rakitan bernama dan konstruktor tanpa parameter. |
CreateComInstanceFrom(String, String)
Membuat instans objek COM yang namanya ditentukan, menggunakan file rakitan bernama dan konstruktor tanpa parameter.
public:
static System::Runtime::Remoting::ObjectHandle ^ CreateComInstanceFrom(System::String ^ assemblyName, System::String ^ typeName);
public static System.Runtime.Remoting.ObjectHandle CreateComInstanceFrom (string assemblyName, string typeName);
static member CreateComInstanceFrom : string * string -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateComInstanceFrom (assemblyName As String, typeName As String) As ObjectHandle
Parameter
- assemblyName
- String
Nama file yang berisi rakitan tempat jenis bernama typeName
dicari.
- typeName
- String
Nama jenis untuk membuat instans.
Mengembalikan
Handel yang harus dibongkar untuk mengakses objek yang baru dibuat, atau null
misalnya Nullable<T> .
Pengecualian
typeName
atau assemblyName
adalah null
.
Instans tidak dapat dibuat melalui COM.
-atau-
typename
tidak ditemukan di assemblyName
.
Tidak ditemukan konstruktor yang cocok.
assemblyName
tidak ditemukan, atau modul yang Anda coba muat tidak menentukan ekstensi nama file.
Tidak dapat membuat instans kelas abstrak.
-atau-
Anggota ini dipanggil dengan mekanisme pengikatan terlambat.
Pemanggil tidak dapat menyediakan atribut aktivasi untuk objek yang tidak mewarisi dari MarshalByRefObject.
assemblyName
adalah string kosong ("").
Keterangan
ObjectHandle.Unwrap Gunakan metode untuk membuka bungkus nilai yang dikembalikan.
Atribut System.Runtime.InteropServices.ComVisibleAttribute dengan nilai true
harus diterapkan baik secara eksplisit atau secara default ke jenis COM sehingga metode dapat membuat instans jenis tersebut CreateComInstanceFrom ; jika tidak, TypeLoadException dilemparkan.
Untuk informasi tentang pengecualian lain yang dapat dilemparkan dengan metode yang dipanggil, lihat bagian Pengecualian dari Assembly.LoadFrom metode dan CreateInstance .
Catatan
Dimulai dengan .NET Framework 2.0, metode ini dapat digunakan untuk membuat jenis nonpublik jika pemanggil telah diberikan ReflectionPermission dengan ReflectionPermissionFlag.RestrictedMemberAccess bendera dan jika sekumpulan perakitan yang memberikan yang berisi jenis nonpublik dibatasi untuk set pemberian penelepon atau ke subsetnya. (Lihat Pertimbangan Keamanan untuk Refleksi.) Untuk menggunakan fungsionalitas ini, aplikasi Anda harus menargetkan .NET Framework 3.5 atau yang lebih baru.
Berlaku untuk
CreateComInstanceFrom(String, String, Byte[], AssemblyHashAlgorithm)
Membuat instans objek COM yang namanya ditentukan, menggunakan file rakitan bernama dan konstruktor tanpa parameter.
public:
static System::Runtime::Remoting::ObjectHandle ^ CreateComInstanceFrom(System::String ^ assemblyName, System::String ^ typeName, cli::array <System::Byte> ^ hashValue, System::Configuration::Assemblies::AssemblyHashAlgorithm hashAlgorithm);
public static System.Runtime.Remoting.ObjectHandle CreateComInstanceFrom (string assemblyName, string typeName, byte[] hashValue, System.Configuration.Assemblies.AssemblyHashAlgorithm hashAlgorithm);
static member CreateComInstanceFrom : string * string * byte[] * System.Configuration.Assemblies.AssemblyHashAlgorithm -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateComInstanceFrom (assemblyName As String, typeName As String, hashValue As Byte(), hashAlgorithm As AssemblyHashAlgorithm) As ObjectHandle
Parameter
- assemblyName
- String
Nama file yang berisi rakitan tempat jenis bernama typeName
dicari.
- typeName
- String
Nama jenis untuk membuat instans.
- hashValue
- Byte[]
Nilai kode hash yang dihitung.
- hashAlgorithm
- AssemblyHashAlgorithm
Algoritma hash yang digunakan untuk hashing file dan menghasilkan nama yang kuat.
Mengembalikan
Handel yang harus dibongkar untuk mengakses objek yang baru dibuat, atau null
misalnya Nullable<T> .
Pengecualian
typeName
atau assemblyName
adalah null
.
assemblyName
adalah string kosong ("").
Perakitan atau modul dimuat dua kali dengan dua bukti yang berbeda.
-atau-
assemblyName
lebih panjang dari panjang maksimum yang ditentukan sistem.
assemblyName
tidak ditemukan, atau modul yang Anda coba muat tidak menentukan ekstensi nama file.
assemblyName
ditemukan tetapi tidak dapat dimuat.
assemblyName
bukan rakitan yang valid.
Basis kode yang tidak dimulai dengan "file://" ditentukan tanpa diperlukan WebPermission
.
Instans tidak dapat dibuat melalui COM.
-atau-
typename
tidak ditemukan di assemblyName
.
Tidak ditemukan konstruktor yang cocok.
Instans kelas abstrak tidak dapat dibuat.
-atau-
Anggota ini dipanggil dengan mekanisme pengikatan terlambat.
Pemanggil tidak dapat menyediakan atribut aktivasi untuk objek yang tidak mewarisi dari MarshalByRefObject.
Keterangan
ObjectHandle.Unwrap Gunakan metode untuk membuka bungkus nilai yang dikembalikan.
Atribut System.Runtime.InteropServices.ComVisibleAttribute dengan nilai true
harus diterapkan baik secara eksplisit atau secara default ke jenis COM sehingga metode dapat membuat instans jenis tersebut CreateComInstanceFrom ; jika tidak, TypeLoadException dilemparkan.
Untuk informasi tentang pengecualian lain yang dapat dilemparkan dengan metode yang dipanggil, lihat bagian Pengecualian dari Assembly.LoadFrom metode dan CreateInstance .
Catatan
Dimulai dengan .NET Framework 2.0, metode ini dapat digunakan untuk membuat jenis nonpublik jika pemanggil telah diberikan ReflectionPermission dengan ReflectionPermissionFlag.RestrictedMemberAccess bendera dan jika sekumpulan perakitan yang memberikan yang berisi jenis nonpublik dibatasi untuk set pemberian penelepon atau ke subsetnya. (Lihat Pertimbangan Keamanan untuk Refleksi.) Untuk menggunakan fungsionalitas ini, aplikasi Anda harus menargetkan .NET Framework 3.5 atau yang lebih baru.
Berlaku untuk
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk