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 tipe bernama typeName
dicari.
- typeName
- String
Nama jenis untuk membuat instans.
Mengembalikan
Handel yang harus dibongkar untuk mengakses objek yang baru dibuat, atau null
untuk instans Nullable<T>.
Pengecualian
typeName
atau assemblyName
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
Gunakan metode ObjectHandle.Unwrap untuk membuka bungkus nilai yang dikembalikan.
Atribut System.Runtime.InteropServices.ComVisibleAttribute dengan nilai true
harus diterapkan secara eksplisit atau secara default ke jenis COM sehingga metode CreateComInstanceFrom dapat membuat instans jenis tersebut; jika tidak, TypeLoadException dilemparkan.
Untuk informasi tentang pengecualian lain yang dapat dilemparkan dengan metode yang dipanggil, lihat bagian Pengecualian dari metode Assembly.LoadFrom dan CreateInstance.
Nota
Dimulai dengan .NET Framework 2.0, metode ini dapat digunakan untuk membuat jenis nonpublik jika pemanggil telah diberikan ReflectionPermission dengan bendera ReflectionPermissionFlag.RestrictedMemberAccess dan jika set pemberian rakitan yang berisi jenis nonpublik dibatasi untuk set pemberian penelepon atau ke subsetnya. (Lihat Pertimbangan Keamanan untukRefleksi .) 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 tipe 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
untuk instans Nullable<T>.
Pengecualian
typeName
atau assemblyName
null
.
assemblyName
adalah string kosong ("").
Rakitan 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 WebPermission
yang diperlukan .
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
Gunakan metode ObjectHandle.Unwrap untuk membuka bungkus nilai yang dikembalikan.
Atribut System.Runtime.InteropServices.ComVisibleAttribute dengan nilai true
harus diterapkan secara eksplisit atau secara default ke jenis COM sehingga metode CreateComInstanceFrom dapat membuat instans jenis tersebut; jika tidak, TypeLoadException dilemparkan.
Untuk informasi tentang pengecualian lain yang dapat dilemparkan dengan metode yang dipanggil, lihat bagian Pengecualian dari metode Assembly.LoadFrom dan CreateInstance.
Nota
Dimulai dengan .NET Framework 2.0, metode ini dapat digunakan untuk membuat jenis nonpublik jika pemanggil telah diberikan ReflectionPermission dengan bendera ReflectionPermissionFlag.RestrictedMemberAccess dan jika set pemberian rakitan yang berisi jenis nonpublik dibatasi untuk set pemberian penelepon atau ke subsetnya. (Lihat Pertimbangan Keamanan untukRefleksi .) Untuk menggunakan fungsionalitas ini, aplikasi Anda harus menargetkan .NET Framework 3.5 atau yang lebih baru.