Marshal.AllocHGlobal Marshal.AllocHGlobal Marshal.AllocHGlobal Marshal.AllocHGlobal Method

定義

プロセスのアンマネージ メモリからメモリを割り当てます。Allocates memory from the unmanaged memory of the process.

オーバーロード

AllocHGlobal(Int32) AllocHGlobal(Int32) AllocHGlobal(Int32) AllocHGlobal(Int32)

指定したバイト数を使用して、プロセスのアンマネージ メモリからメモリを割り当てます。Allocates memory from the unmanaged memory of the process by using the specified number of bytes.

AllocHGlobal(IntPtr) AllocHGlobal(IntPtr) AllocHGlobal(IntPtr) AllocHGlobal(IntPtr)

指定したバイト数へのポインターを使用して、プロセスのアンマネージ メモリからメモリを割り当てます。Allocates memory from the unmanaged memory of the process by using the pointer to the specified number of bytes.

AllocHGlobal(Int32) AllocHGlobal(Int32) AllocHGlobal(Int32) AllocHGlobal(Int32)

指定したバイト数を使用して、プロセスのアンマネージ メモリからメモリを割り当てます。Allocates memory from the unmanaged memory of the process by using the specified number of bytes.

public:
 static IntPtr AllocHGlobal(int cb);
[System.Security.SecurityCritical]
public static IntPtr AllocHGlobal (int cb);
static member AllocHGlobal : int -> nativeint
Public Shared Function AllocHGlobal (cb As Integer) As IntPtr

パラメーター

cb
Int32 Int32 Int32 Int32

メモリ内で必要なバイト数。The required number of bytes in memory.

戻り値

新しく割り当てられたメモリへのポインター。A pointer to the newly allocated memory. このメモリは、FreeHGlobal(IntPtr) メソッドを使用して解放する必要があります。This memory must be released using the FreeHGlobal(IntPtr) method.

例外

メモリが不足しているため要求を満たせません。There is insufficient memory to satisfy the request.

次の例では、AllocHGlobal メソッドを呼び出す方法を示しています。The following example demonstrates calling the AllocHGlobal method. このコード例が示されている例の一部、Marshalクラス。This code example is part of a larger example provided for the Marshal class.

// Demonstrate how to call GlobalAlloc and 
// GlobalFree using the Marshal class.
IntPtr hglobal = Marshal::AllocHGlobal(100);
Marshal::FreeHGlobal(hglobal);
// Demonstrate how to call GlobalAlloc and 
// GlobalFree using the Marshal class.
IntPtr hglobal = Marshal.AllocHGlobal(100);
Marshal.FreeHGlobal(hglobal);
' Demonstrate how to call GlobalAlloc and 
' GlobalFree using the Marshal class.
Dim hglobal As IntPtr = Marshal.AllocHGlobal(100)
Marshal.FreeHGlobal(hglobal)

注釈

AllocHGlobal 2 つのメモリ割り当て方法の 1 つ、Marshalクラス。AllocHGlobal is one of two memory allocation methods in the Marshal class. (Marshal.AllocCoTaskMemは、その他)。このメソッドは公開 Win32 LocalAlloc関数を Kernel32.dll から。(Marshal.AllocCoTaskMem is the other.) This method exposes the Win32 LocalAlloc function from Kernel32.dll.

ときにAllocHGlobal呼び出しLocalAlloc、渡します、LMEM_FIXEDフラグは、場所にロックするメモリを割り当てられています。When AllocHGlobal calls LocalAlloc, it passes a LMEM_FIXED flag, which causes the allocated memory to be locked in place. また、割り当てられたメモリがないゼロで埋められます。Also, the allocated memory is not zero-filled.

セキュリティ

SecurityCriticalAttribute
直前の呼び出し元に対する完全な信頼が必要です。requires full trust for the immediate caller. このメンバーは、部分的に信頼されたまたは透過的なコードで使用することはできません。This member cannot be used by partially trusted or transparent code.

こちらもご覧ください

AllocHGlobal(IntPtr) AllocHGlobal(IntPtr) AllocHGlobal(IntPtr) AllocHGlobal(IntPtr)

指定したバイト数へのポインターを使用して、プロセスのアンマネージ メモリからメモリを割り当てます。Allocates memory from the unmanaged memory of the process by using the pointer to the specified number of bytes.

public:
 static IntPtr AllocHGlobal(IntPtr cb);
[System.Security.SecurityCritical]
public static IntPtr AllocHGlobal (IntPtr cb);
static member AllocHGlobal : nativeint -> nativeint
Public Shared Function AllocHGlobal (cb As IntPtr) As IntPtr

パラメーター

cb
IntPtr IntPtr IntPtr IntPtr

メモリ内で必要なバイト数。The required number of bytes in memory.

戻り値

新しく割り当てられたメモリへのポインター。A pointer to the newly allocated memory. このメモリは、FreeHGlobal(IntPtr) メソッドを使用して解放する必要があります。This memory must be released using the FreeHGlobal(IntPtr) method.

例外

メモリが不足しているため要求を満たせません。There is insufficient memory to satisfy the request.

注釈

AllocHGlobal 2 つのメモリ割り当て方法の 1 つ、Marshalクラス。AllocHGlobal is one of two memory allocation methods in the Marshal class. (Marshal.AllocCoTaskMemは、その他)。このメソッドは公開 Win32 LocalAlloc関数を Kernel32.dll から。(Marshal.AllocCoTaskMem is the other.) This method exposes the Win32 LocalAlloc function from Kernel32.dll.

ときにAllocHGlobal呼び出しLocalAlloc、渡します、LMEM_FIXEDフラグは、場所にロックするメモリを割り当てられています。When AllocHGlobal calls LocalAlloc, it passes a LMEM_FIXED flag, which causes the allocated memory to be locked in place. また、割り当てられたメモリがないゼロで埋められます。Also, the allocated memory is not zero-filled.

コード例は、「MarshalAllocHGlobalします。For example code, see Marshal and AllocHGlobal.

セキュリティ

SecurityCriticalAttribute
直前の呼び出し元に対する完全な信頼が必要です。requires full trust for the immediate caller. このメンバーは、部分的に信頼されたまたは透過的なコードで使用することはできません。This member cannot be used by partially trusted or transparent code.

こちらもご覧ください

適用対象