_MethodInfo.Invoke Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Poskytuje objekty COM s přístupem nezávislým na Invoke verzi k metodě.
Přetížení
Invoke(Object, Object[]) |
Poskytuje objekty COM s přístupem nezávislým na Invoke(Object, Object[]) verzi k metodě. |
Invoke(Object, BindingFlags, Binder, Object[], CultureInfo) |
Poskytuje objekty COM s přístupem nezávislým na Invoke(Object, BindingFlags, Binder, Object[], CultureInfo) verzi k metodě. |
Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Poskytuje přístup k vlastnostem a metodám vystaveným objektem. |
Poznámky
Tato metoda je určena pro přístup ke spravovaným třídám z nespravovaného kódu a neměla by se volat ze spravovaného kódu.
Metody Invoke vyvolají konstruktor, který odráží instanci, která má zadané parametry.
Invoke(Object, Object[])
Poskytuje objekty COM s přístupem nezávislým na Invoke(Object, Object[]) verzi k metodě.
public:
System::Object ^ Invoke(System::Object ^ obj, cli::array <System::Object ^> ^ parameters);
public object Invoke (object obj, object[] parameters);
abstract member Invoke : obj * obj[] -> obj
Public Function Invoke (obj As Object, parameters As Object()) As Object
Parametry
- obj
- Object
Instance, která vytvořila tuto metodu.
- parameters
- Object[]
Seznam argumentů pro vyvolanou metodu nebo konstruktor. Toto je pole objektů se stejným číslem, pořadím a typem jako parametry metody nebo konstruktoru, které mají být vyvolány. Pokud neexistují žádné parametry, parameters
měl by být null
.
Pokud metoda nebo konstruktor reprezentovaný touto instancí přijímá ref
parametr (ByRef
v jazyce Visual Basic), není vyžadován žádný speciální atribut pro tento parametr k vyvolání metody nebo konstruktoru pomocí této funkce. Každý objekt v tomto poli, který není explicitně inicializován hodnotou, bude obsahovat výchozí hodnotu pro tento typ objektu. Pro elementy typu odkazu je null
tato hodnota . Pro prvky typu hodnoty je tato hodnota 0, 0,0 nebo false
, v závislosti na konkrétním typu prvku.
Návraty
Instance třídy přidružené k konstruktoru.
Poznámky
Metoda Invoke vyvolá metodu nebo konstruktor reprezentovaný tímto objektem pomocí zadaných parametrů.
Platí pro
Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
Poskytuje objekty COM s přístupem nezávislým na Invoke(Object, BindingFlags, Binder, Object[], CultureInfo) verzi k metodě.
public:
System::Object ^ Invoke(System::Object ^ obj, System::Reflection::BindingFlags invokeAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ parameters, System::Globalization::CultureInfo ^ culture);
public object Invoke (object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, object[] parameters, System.Globalization.CultureInfo culture);
abstract member Invoke : obj * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo -> obj
Public Function Invoke (obj As Object, invokeAttr As BindingFlags, binder As Binder, parameters As Object(), culture As CultureInfo) As Object
Parametry
- obj
- Object
Instance, která vytvořila tuto metodu.
- invokeAttr
- BindingFlags
Jedna z BindingFlags
hodnot, která určuje typ vazby.
- binder
- Binder
A Binder
, který definuje sadu vlastností a umožňuje vazbu, převod typů argumentů a vyvolání členů pomocí reflexe. Pokud binder
je null
, použije se Binder.DefaultBinding
.
- parameters
- Object[]
Pole typu Object
, které se používá ke shodě s číslem, pořadím a typem parametrů pro tento konstruktor v rámci omezení binder
. Pokud tento konstruktor nevyžaduje parametry, předejte pole s nulovými prvky, jako v Object[] parameters = new Object[0]
. Každý objekt v tomto poli, který není explicitně inicializován hodnotou, bude obsahovat výchozí hodnotu pro tento typ objektu. Pro elementy typu odkazu je null
tato hodnota . Pro prvky typu hodnoty je tato hodnota 0, 0,0 nebo false
, v závislosti na konkrétním typu prvku.
- culture
- CultureInfo
Objekt CultureInfo sloužící k řízení převodu typů. Pokud je null
to , použije se CultureInfo pro aktuální vlákno .
Návraty
Instance třídy přidružené k konstruktoru.
Poznámky
Tato metoda je určena pro přístup ke spravovaným třídám z nespravovaného kódu a neměla by se volat ze spravovaného kódu.
Metoda Invoke vyvolá konstruktor reflektovaný tímto ConstructorInfo objektem se zadanými argumenty v rámci omezení zadaného Binder objektu.
Platí pro
Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)
Poskytuje přístup k vlastnostem a metodám vystaveným objektem.
public:
void Invoke(System::UInt32 dispIdMember, Guid % riid, System::UInt32 lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr);
public void Invoke (uint dispIdMember, ref Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr);
abstract member Invoke : uint32 * Guid * uint32 * int16 * nativeint * nativeint * nativeint * nativeint -> unit
Public Sub Invoke (dispIdMember As UInteger, ByRef riid As Guid, lcid As UInteger, wFlags As Short, pDispParams As IntPtr, pVarResult As IntPtr, pExcepInfo As IntPtr, puArgErr As IntPtr)
Parametry
- dispIdMember
- UInt32
Identifikátor člena.
- riid
- Guid
Vyhrazeno pro budoucí použití. Musí mít hodnotu IID_NULL.
- lcid
- UInt32
Kontext národního prostředí pro interpretaci argumentů.
- wFlags
- Int16
Příznaky popisující kontext volání.
- pDispParams
-
IntPtr
nativeint
Ukazatel na strukturu obsahující pole argumentů, pole dispidů pro pojmenované argumenty a počty pro počet prvků v polích.
- pVarResult
-
IntPtr
nativeint
Ukazatel na umístění, kam bude výsledek uložen.
- pExcepInfo
-
IntPtr
nativeint
Ukazatel na strukturu, která obsahuje informace o výjimce.
- puArgErr
-
IntPtr
nativeint
Index prvního argumentu, který obsahuje chybu.
Poznámky
Tato metoda je určena pro přístup ke spravovaným třídám z nespravovaného kódu a neměla by se volat ze spravovaného kódu. Další informace najdete v tématu IDispatch::Invoke.