Freigeben über


Marshal.GetObjectsForNativeVariants-Methode: (IntPtr, Int32)

 

Veröffentlicht: Oktober 2016

Konvertiert ein Array mit COM VARIANTs in ein Array von Objekten.

Namespace:   System.Runtime.InteropServices
Assembly:  mscorlib (in mscorlib.dll)

Syntax

[SecurityCriticalAttribute]
public static object[] GetObjectsForNativeVariants(
    IntPtr aSrcNativeVariant,
    int cVars
)
public:
[SecurityCriticalAttribute]
static array<Object^>^ GetObjectsForNativeVariants(
    IntPtr aSrcNativeVariant,
    int cVars
)
[<SecurityCriticalAttribute>]
static member GetObjectsForNativeVariants : 
        aSrcNativeVariant:nativeint *
        cVars:int -> Object[]
<SecurityCriticalAttribute>
Public Shared Function GetObjectsForNativeVariants (
    aSrcNativeVariant As IntPtr,
    cVars As Integer
) As Object()

Parameter

  • aSrcNativeVariant
    Type: System.IntPtr

    Ein Zeiger auf das erste Element eines Arrays von COM-VARIANTs.

  • cVars
    Type: System.Int32

    Die Zählung der COM-VARIANT in aSrcNativeVariant.

Rückgabewert

Type: System.Object[]

Ein Objektarray, das diesem aSrcNativeVariant entspricht.

Ausnahmen

Exception Condition
ArgumentOutOfRangeException

cVars ist eine negative Zahl.

Hinweise

GetObjectsForNativeVariants Gibt ein Array von verwalteten Objekten, die entspricht, einen unformatierten Zeiger auf ein Array im C-Format von nicht verwalteten VARIANT-Typen zurück. Die Interopmarshaler führt eine identische Transformation, einen VARIANT-Typ für verwalteten Code verfügbar zu machen. Die Methode gibt ein leeres array, wenn die cVars Parameter 0 ist.

Das Objektarray (der Rückgabewert) Ruft die Garbage collection wie gewohnt. Die nicht verwaltete Eingabearray oder einzelne VARIANTs im Eingabearray werden nicht freigegeben. Daher ist es Ihre Aufgabe, die sie nach Bedarf freizugeben.

Sicherheit

SecurityCriticalAttribute

requires full trust for the immediate caller. This member cannot be used by partially trusted or transparent code.

Versionsinformationen

Universelle Windows-Plattform
Verfügbar seit 8
.NET Framework
Verfügbar seit 1.1
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Windows Phone
Verfügbar seit 8.1

Siehe auch

GetObjectsForNativeVariants Überladen
Marshal-Klasse
System.Runtime.InteropServices-Namespace

Zurück zum Anfang