ParameterModifier 구조체

정의

바인딩이 형식이 수정된 매개 변수 서명에서 작동되도록 매개 변수에 한정자를 연결합니다.Attaches a modifier to parameters so that binding can work with parameter signatures in which the types have been modified.

public value class 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
상속
ParameterModifier
특성

예제

다음 코드 예제에서는 세 개의 문자열 인수를 포함 하는 멤버에 대해이를 보여 줍니다. 그 중 첫 번째와 세 번째는 참조로 전달 됩니다.The following code example shows this for a member that has three string arguments, the first and third of which are passed by reference. 이라는 변수에 obj COM 개체에 대 한 참조가 포함 되어 있다고 가정 합니다.Assume that a variable named obj contains a reference to the COM object.

// 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)

설명

ParameterModifier구조체는 런타임에 바인딩된 것으로 Type.InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]) 액세스 되는 COM 구성 요소에 대 한 참조로 매개 변수를 전달할 때 메서드 오버 로드와 함께 사용 됩니다.The ParameterModifier structure is used with the Type.InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]) method overload when passing parameters by reference to a COM component that is accessed late bound. 참조로 전달 되는 매개 변수는 단일 구조체로 지정 됩니다. 단일 ParameterModifier 구조는 단일 요소를 포함 하는 배열에 전달 되어야 합니다.The parameters that are to be passed by reference are specified by a single ParameterModifier structure, which must be passed in an array containing a single element. ParameterModifier이 배열의 단일 구조는 호출할 멤버의 매개 변수 수를 사용 하 여 초기화 해야 합니다.The single ParameterModifier structure in this array must be initialized with the number of parameters in the member that is to be invoked. 이러한 매개 변수를 참조로 전달 하는 것을 나타내려면 Item[] true 매개 변수의 0부터 시작 하는 위치에 해당 하는 인덱스 번호에 대 한 속성 값 (c #의 인덱서)을로 설정 합니다.To indicate which of these parameters are passed by reference, set the value of the Item[] property (the indexer in C#) to true for the index number corresponding to the zero-based position of the parameter.

생성자

ParameterModifier(Int32)

지정된 수의 매개 변수를 나타내는 ParameterModifier 구조체의 새 인스턴스를 초기화합니다.Initializes a new instance of the ParameterModifier structure representing the specified number of parameters.

속성

Item[Int32]

지정된 인덱스 위치에 있는 매개 변수가 현재 ParameterModifier에 의해 수정될 수 있는지 여부를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value that specifies whether the parameter at the specified index position is to be modified by the current ParameterModifier.

적용 대상