Marshal.ReAllocHGlobal(IntPtr, IntPtr) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
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
매개 변수
- pv
-
IntPtr
nativeint
AllocHGlobal(IntPtr)을 사용하여 할당된 메모리에 대한 포인터입니다.
- cb
-
IntPtr
nativeint
할당된 블록의 새 크기입니다. 이것은 포인터가 아니라 요청하는 바이트 수로, 형식 IntPtr로 캐스팅합니다. 포인터를 전달하면 크기로 처리됩니다.
반환
nativeint
다시 할당된 메모리에 대한 포인터입니다. 이 메모리는 FreeHGlobal(IntPtr)을 사용하여 해제되어야 합니다.
- 특성
예외
메모리가 부족하여 요청을 만족시킬 수 없습니다.
설명
ReAllocHGlobal 는 클래스의 두 메모리 재할당 API 메서드 Marshal 중 하나입니다. (Marshal.ReAllocCoTaskMem 는 다른 입니다.)
이 메서드는 Kernel32.dll Win32 GlobalReAlloc 함수를 노출합니다. 반환된 포인터는 원래 포인터와 다를 수 있습니다. 다른 경우 원래 메모리 블록의 내용이 새 블록에 복사되고 원래 메모리 블록이 해제되었습니다.
적용 대상
추가 정보
.NET