ParameterModifier Struktur
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Fügt einen Parametermodifizierer an, sodass die Bindung mit Parametersignaturen durchgeführt werden kann, in denen die Typen geändert wurden.
public value class ParameterModifier
public readonly struct ParameterModifier
public struct ParameterModifier
[System.Serializable]
public struct ParameterModifier
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public struct ParameterModifier
type ParameterModifier = struct
[<System.Serializable>]
type ParameterModifier = struct
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type ParameterModifier = struct
Public Structure ParameterModifier
- Vererbung
- Attribute
Beispiele
Das folgende Codebeispiel zeigt dies für einen Member mit drei Zeichenfolgenargumenten, von denen das erste und das dritte als Verweis übergeben werden. Angenommen, eine Variable mit dem Namen obj
enthält einen Verweis auf das COM-Objekt.
// Create an array containing the arguments.
array<Object^>^ args = {"Argument 1", "Argument 2", "Argument 3" };
// Initialize a ParameterModifier with the number of parameters.
ParameterModifier p = ParameterModifier(3);
// Pass the first and third parameters by reference.
p[0] = true;
p[2] = true;
// The ParameterModifier must be passed as the single element
// of an array.
array<ParameterModifier>^ mods = { p };
// Invoke the method late bound.
obj->GetType()->InvokeMember("MethodName", BindingFlags::InvokeMethod,
nullptr, obj, args, mods, nullptr, nullptr);
// Create an array containing the arguments.
object[] args = {"Argument 1", "Argument 2", "Argument 3" };
// Initialize a ParameterModifier with the number of parameters.
ParameterModifier p = new ParameterModifier(3);
// Pass the first and third parameters by reference.
p[0] = true;
p[2] = true;
// The ParameterModifier must be passed as the single element
// of an array.
ParameterModifier[] mods = { p };
// Invoke the method late bound.
obj.GetType().InvokeMember("MethodName", BindingFlags.InvokeMethod,
null, obj, args, mods, null, null);
' Create an array containing the arguments.
Dim args As Object = {"Argument 1", "Argument 2", "Argument 3" }
' Initialize a ParameterModifier with the number of parameters.
Dim p As New ParameterModifier(3)
' Pass the first and third parameters by reference.
p(0) = True
p(2) = True
' The ParameterModifier must be passed as the single element
' of an array.
Dim mods() As ParameterModifier = { p }
' Invoke the method late bound.
obj.GetType().InvokeMember("MethodName", BindingFlags.InvokeMethod, _
Nothing, obj, args, mods, Nothing, Nothing)
Hinweise
Die ParameterModifier -Struktur wird mit der Type.InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]) Methodenüberladung verwendet, wenn Parameter durch Verweis auf eine COM-Komponente übergeben werden, auf die spät gebunden zugegriffen wird. Die Parameter, die als Verweis übergeben werden sollen, werden von einer einzelnen ParameterModifier Struktur angegeben, die in einem Array übergeben werden muss, das ein einzelnes Element enthält. Die einzelne ParameterModifier Struktur in diesem Array muss mit der Anzahl von Parametern im member initialisiert werden, der aufgerufen werden soll. Um anzugeben, welche dieser Parameter als Verweis übergeben werden, legen Sie den Wert der Item[] Eigenschaft (der Indexer in C#) true
für die Indexnummer fest, die der nullbasierten Position des Parameters entspricht.
Konstruktoren
ParameterModifier(Int32) |
Initialisiert eine neue Instanz der ParameterModifier-Struktur, die die angegebene Anzahl von Parametern darstellt. |
Eigenschaften
Item[Int32] |
Ruft einen Wert ab, der angibt, ob der Parameter an der angegebenen Indexposition durch den aktuellen ParameterModifier geändert werden soll, oder legt diesen Wert fest. |