Marshal.ReAllocHGlobal(IntPtr, IntPtr) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Změní velikost bloku paměti, který byl dříve přidělen pomocí 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
Ukazatel na paměť přidělenou pomocí AllocHGlobal(IntPtr).
- cb
-
IntPtr
nativeint
Nová velikost přiděleného bloku. Toto není ukazatel; jedná se o počet bajtů, který požadujete, přetypujte na typ IntPtr. Pokud předáte ukazatel, považuje se za velikost.
Návraty
nativeint
Ukazatel na znovu přidělenou paměť. Tato paměť musí být uvolněna pomocí .FreeHGlobal(IntPtr)
- Atributy
Výjimky
Pro splnění požadavku není dostatek paměti.
Poznámky
ReAllocHGlobal je jednou ze dvou metod rozhraní API pro relokaci paměti ve Marshal třídě. (Marshal.ReAllocCoTaskMem je druhý.)
Tato metoda zveřejňuje funkci Win32 GlobalReAlloc z Kernel32.dll. Vrácený ukazatel se může lišit od původního ukazatele. Pokud se liší, obsah původního bloku paměti byl zkopírován do nového bloku a původní blok paměti byl uvolněn.