Marshal.ReAllocHGlobal(IntPtr, IntPtr) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Redimensionne un bloc de mémoire précédemment alloué avec 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
Paramètres
- pv
-
IntPtr
nativeint
Pointeur vers la mémoire allouée avec AllocHGlobal(IntPtr).
- cb
-
IntPtr
nativeint
Nouvelle taille du bloc alloué. Ce n’est pas un pointeur ; c’est le nombre d’octets que vous demandez, cast vers type IntPtr. Si vous passez un pointeur, il est traité comme une taille.
Retours
nativeint
Pointeur vers la mémoire réallouée. Cette mémoire doit être libérée avec FreeHGlobal(IntPtr).
- Attributs
Exceptions
La mémoire est insuffisante pour répondre à la demande.
Remarques
ReAllocHGlobal est l’une des deux méthodes d’API de réaffectation de la mémoire dans la Marshal classe . (Marshal.ReAllocCoTaskMem est l’autre.)
Cette méthode expose la fonction Win32 GlobalReAlloc à partir de Kernel32.dll. Le pointeur retourné peut différer du pointeur d’origine. S’il est différent, le contenu du bloc de mémoire d’origine a été copié dans le nouveau bloc et le bloc de mémoire d’origine a été libéré.