Marshal.ReAllocHGlobal(IntPtr, IntPtr) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Zmienia rozmiar bloku pamięci przydzielonej wcześniej za pomocą polecenia AllocHGlobal(IntPtr).
public:
static IntPtr ReAllocHGlobal(IntPtr pv, IntPtr cb);
[System.Security.SecurityCritical]
public static IntPtr ReAllocHGlobal (IntPtr pv, IntPtr cb);
public static IntPtr ReAllocHGlobal (IntPtr pv, IntPtr cb);
[<System.Security.SecurityCritical>]
static member ReAllocHGlobal : nativeint * nativeint -> nativeint
static member ReAllocHGlobal : nativeint * nativeint -> nativeint
Public Shared Function ReAllocHGlobal (pv As IntPtr, cb As IntPtr) As IntPtr
Parametry
- pv
-
IntPtr
nativeint
Wskaźnik do pamięci przydzielonej za pomocą AllocHGlobal(IntPtr)polecenia .
- cb
-
IntPtr
nativeint
Nowy rozmiar przydzielonego bloku. To nie jest wskaźnik; jest to liczba bajtów, które żądasz, rzutowanie do typu IntPtr. Jeśli przekazujesz wskaźnik, jest on traktowany jako rozmiar.
Zwraca
-
IntPtr
nativeint
Wskaźnik do przydzielonej pamięci. Ta pamięć musi zostać zwolniona przy użyciu polecenia FreeHGlobal(IntPtr).
- Atrybuty
Wyjątki
Za mało pamięci do spełnienia żądania.
Uwagi
ReAllocHGlobal jest jedną z dwóch metod interfejsu Marshal API alokacji pamięci w klasie . (Marshal.ReAllocCoTaskMem to druga).
Ta metoda uwidacznia funkcję Win32 GlobalReAlloc z Kernel32.dll. Zwrócony wskaźnik może różnić się od oryginalnego. Jeśli jest inny, zawartość oryginalnego bloku pamięci została skopiowana do nowego bloku, a oryginalny blok pamięci został zwolniony.