Freigeben über


Marshal.ReAllocCoTaskMem-Methode

Ändert die Größe eines bereits mit AllocCoTaskMem reservierten Speicherblocks.

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

Syntax

'Declaration
Public Shared Function ReAllocCoTaskMem ( _
    pv As IntPtr, _
    cb As Integer _
) As IntPtr
'Usage
Dim pv As IntPtr
Dim cb As Integer
Dim returnValue As IntPtr

returnValue = Marshal.ReAllocCoTaskMem(pv, cb)
public static IntPtr ReAllocCoTaskMem (
    IntPtr pv,
    int cb
)
public:
static IntPtr ReAllocCoTaskMem (
    IntPtr pv, 
    int cb
)
public static IntPtr ReAllocCoTaskMem (
    IntPtr pv, 
    int cb
)
public static function ReAllocCoTaskMem (
    pv : IntPtr, 
    cb : int
) : IntPtr

Parameter

  • cb
    Die neue Größe des reservierten Blocks.

Rückgabewert

Eine ganze Zahl, die die Adresse des neu reservierten Speicherblocks darstellt. Dieser Speicher muss mit FreeCoTaskMem freigegeben werden.

Ausnahmen

Ausnahmetyp Bedingung

OutOfMemoryException

Es ist nicht genügend Speicherplatz vorhanden, um die Anforderung zu erfüllen.

Hinweise

ReAllocCoTaskMem ist eine der beiden API-Methoden zum erneuten Reservieren von Speicher in der Marshal-Klasse. (Die andere ist ReAllocHGlobal.) Der Anfang des erneut reservierten Speicherinhalts ist identisch mit dem des ursprünglichen Inhalts, der gesamte Speicherblock kann sich jedoch an einer anderen Position befinden. Diese Methode macht die CoTaskMemRealloc-COM-API-Methode verfügbar, die als Speicherreservierungsfunktion für COM-Aufgaben bezeichnet wird. Weitere Informationen zu CoTaskMemRealloc finden Sie in der MSDN Library.

Hinweis

Diese Methode verwendet SecurityAction.LinkDemand, um einen Aufruf aus nicht vertrauenswürdigem Code zu verhindern. Nur der direkte Aufrufer muss über die SecurityPermissionAttribute.UnmanagedCode-Berechtigung verfügen. Wenn der Code aus teilweise vertrauenswürdigem Code aufgerufen werden kann, dürfen Benutzereingaben nicht ohne Validierung an Methoden der Marshal-Klasse übergeben werden. Wichtige Einschränkungen bei der Verwendung des LinkDemand-Members finden Sie unter "Demand" und "LinkDemand".

.NET Framework-Sicherheit

Plattformen

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

.NET Compact Framework

Unterstützt in: 2.0

Siehe auch

Referenz

Marshal-Klasse
Marshal-Member
System.Runtime.InteropServices-Namespace
ReAllocHGlobal
FreeCoTaskMem