Marshal Marshal Marshal Marshal Class

定義

アンマネージド コードを扱うときに使用できるさまざまなメソッドを提供します。これらのメソッドを使用すると、アンマネージド メモリの割り当て、アンマネージド メモリ ブロックのコピー、マネージド型からアンマネージド型への変換などができます。Provides a collection of methods for allocating unmanaged memory, copying unmanaged memory blocks, and converting managed to unmanaged types, as well as other miscellaneous methods used when interacting with unmanaged code.

public ref class Marshal abstract sealed
public static class Marshal
type Marshal = class
Public Class Marshal
継承
MarshalMarshalMarshalMarshal

Marshalクラスで定義されているさまざまなメソッドの使用方法を次の例に示します。The following example shows how to use various methods defined by the Marshal class.

using namespace System;
using namespace System::Runtime::InteropServices;

public value struct Point
{
public:
    property int X;
    property int Y;
};
extern bool CloseHandle(IntPtr h);

int main()
{
    // Demonstrate the use of public static fields of the Marshal
    // class.
    Console::WriteLine(
        "SystemDefaultCharSize={0},SystemMaxDBCSCharSize={1}",
        Marshal::SystemDefaultCharSize,
        Marshal::SystemMaxDBCSCharSize);

    // Demonstrate the use of the SizeOf method of the Marshal
    // class.
    Console::WriteLine("Number of bytes needed by a Point object: {0}",
        Marshal::SizeOf(Point::typeid));
    Point point;
    Console::WriteLine("Number of bytes needed by a Point object: {0}",
        Marshal::SizeOf(point));

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

    // Demonstrate how to use the Marshal class to get the Win32
    // error code when a Win32 method fails.
    bool isCloseHandleSuccess = CloseHandle(IntPtr(-1));
    if (!isCloseHandleSuccess)
    {
        Console::WriteLine(
            "CloseHandle call failed with an error code of: {0}",
            Marshal::GetLastWin32Error());
    }
};

// This is a platform invoke prototype. SetLastError is true,
// which allows the GetLastWin32Error method of the Marshal class
// to work correctly.    
[DllImport("Kernel32", ExactSpelling = true, SetLastError = true)]
extern bool CloseHandle(IntPtr h);

// This code produces the following output.
// 
// SystemDefaultCharSize=2, SystemMaxDBCSCharSize=1
// Number of bytes needed by a Point object: 8
// Number of bytes needed by a Point object: 8
// CloseHandle call failed with an error code of: 6
using System;
using System.Text;
using System.Runtime.InteropServices;

public struct Point
{
    public Int32 x, y;
}


public sealed class App
{
    static void Main()
    {
        // Demonstrate the use of public static fields of the Marshal class.
        Console.WriteLine("SystemDefaultCharSize={0}, SystemMaxDBCSCharSize={1}",
            Marshal.SystemDefaultCharSize, Marshal.SystemMaxDBCSCharSize);

        // Demonstrate the use of the SizeOf method of the Marshal class.
        Console.WriteLine("Number of bytes needed by a Point object: {0}", 
            Marshal.SizeOf(typeof(Point)));
        Point p = new Point();
        Console.WriteLine("Number of bytes needed by a Point object: {0}",
            Marshal.SizeOf(p));
        
        // Demonstrate how to call GlobalAlloc and 
        // GlobalFree using the Marshal class.
        IntPtr hglobal = Marshal.AllocHGlobal(100);
        Marshal.FreeHGlobal(hglobal);

        // Demonstrate how to use the Marshal class to get the Win32 error 
        // code when a Win32 method fails.
        Boolean f = CloseHandle(new IntPtr(-1));
        if (!f)
        {
            Console.WriteLine("CloseHandle call failed with an error code of: {0}", 
                Marshal.GetLastWin32Error());
        }  
    }

    // This is a platform invoke prototype. SetLastError is true, which allows 
    // the GetLastWin32Error method of the Marshal class to work correctly.    
    [DllImport("Kernel32", ExactSpelling = true, SetLastError = true)]
    static extern Boolean CloseHandle(IntPtr h);
    
}

// This code produces the following output.
// 
// SystemDefaultCharSize=2, SystemMaxDBCSCharSize=1
// Number of bytes needed by a Point object: 8
// Number of bytes needed by a Point object: 8
// CloseHandle call failed with an error code of: 6
Imports System.Text
Imports System.Runtime.InteropServices
Imports System.Security.Permissions



Public Structure Point
    Public x, y As Int32
End Structure



Public NotInheritable Class App

    <SecurityPermission(SecurityAction.LinkDemand, Unrestricted:=True)> _
    Shared Sub Main()
        ' Demonstrate the use of public static fields of the Marshal class.
        Console.WriteLine("SystemDefaultCharSize={0}, SystemMaxDBCSCharSize={1}", Marshal.SystemDefaultCharSize, Marshal.SystemMaxDBCSCharSize)
        ' Demonstrate the use of the SizeOf method of the Marshal class.
        Console.WriteLine("Number of bytes needed by a Point object: {0}", Marshal.SizeOf(GetType(Point)))
        Dim p As New Point()
        Console.WriteLine("Number of bytes needed by a Point object: {0}", Marshal.SizeOf(p))
        ' Demonstrate how to call GlobalAlloc and 
        ' GlobalFree using the Marshal class.
        Dim hglobal As IntPtr = Marshal.AllocHGlobal(100)
        Marshal.FreeHGlobal(hglobal)
        ' Demonstrate how to use the Marshal class to get the Win32 error 
        ' code when a Win32 method fails.
        Dim f As [Boolean] = CloseHandle(New IntPtr(-1))
        If Not f Then
            Console.WriteLine("CloseHandle call failed with an error code of: {0}", Marshal.GetLastWin32Error())
        End If

    End Sub


    ' This is a platform invoke prototype. SetLastError is true, which allows 
    ' the GetLastWin32Error method of the Marshal class to work correctly.    
    <DllImport("Kernel32", ExactSpelling:=True, SetLastError:=True)> _
    Shared Function CloseHandle(ByVal h As IntPtr) As [Boolean]

    End Function
End Class


' This code produces the following output.
' 
' SystemDefaultCharSize=2, SystemMaxDBCSCharSize=1
' Number of bytes needed by a Point object: 8
' Number of bytes needed by a Point object: 8
' CloseHandle call failed with an error code of: 6

注釈

クラスで定義されたメソッドは、 staticアンマネージコードを操作するために不可欠です。 MarshalThe static methods defined on the Marshal class are essential to working with unmanaged code. このクラスで定義されているほとんどのメソッドは、通常、マネージプログラミングモデルとアンマネージプログラミングモデルの間にブリッジを提供する開発者によって使用されます。Most methods defined in this class are typically used by developers who want to provide a bridge between the managed and unmanaged programming models. たとえば、メソッドはStringToHGlobalAnsi 、指定された文字列 (マネージヒープ内) からアンマネージヒープ内のバッファーに ANSI 文字をコピーします。For example, the StringToHGlobalAnsi method copies ANSI characters from a specified string (in the managed heap) to a buffer in the unmanaged heap. また、適切なサイズのターゲットヒープも割り当てます。It also allocates the target heap of the right size.

共通言語ランタイムは、特定のマーシャリング機能を提供します。The common language runtime provides specific marshaling capabilities. マーシャリング動作の詳細については、「相互運用マーシャリング」を参照してください。For details on marshaling behavior, see Interop Marshaling.

クラスのWriteメソッドとメソッドは、アラインReadされたアクセスと整列されていないアクセスの両方をサポートします。 MarshalThe Read and Write methods in the Marshal class support both aligned and unaligned access.

フィールド

SystemDefaultCharSize SystemDefaultCharSize SystemDefaultCharSize SystemDefaultCharSize

システムの既定の文字サイズを表します。Unicode システムの既定の文字サイズは 2 で、ANSI システムの場合は 1 です。Represents the default character size on the system; the default is 2 for Unicode systems and 1 for ANSI systems. このフィールドは読み取り専用です。This field is read-only.

SystemMaxDBCSCharSize SystemMaxDBCSCharSize SystemMaxDBCSCharSize SystemMaxDBCSCharSize

現在のオペレーティング システムでの 2 バイト文字セット (DBCS) サイズの上限をバイト単位で表します。Represents the maximum size of a double byte character set (DBCS) size, in bytes, for the current operating system. このフィールドは読み取り専用です。This field is read-only.

メソッド

AddRef(IntPtr) AddRef(IntPtr) AddRef(IntPtr) AddRef(IntPtr)

指定したインターフェイスの参照カウントをインクリメントします。Increments the reference count on the specified interface.

AllocCoTaskMem(Int32) AllocCoTaskMem(Int32) AllocCoTaskMem(Int32) AllocCoTaskMem(Int32)

COM タスク メモリ アロケーターから、指定したサイズのメモリ ブロックを割り当てます。Allocates a block of memory of specified size from the COM task memory allocator.

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.

AreComObjectsAvailableForCleanup() AreComObjectsAvailableForCleanup() AreComObjectsAvailableForCleanup() AreComObjectsAvailableForCleanup()

任意のコンテキストからのランタイム呼び出し可能ラッパー (RCW: Runtime Callable Wrapper) をクリーンアップに使用できるかどうかを示します。Indicates whether runtime callable wrappers (RCWs) from any context are available for cleanup.

BindToMoniker(String) BindToMoniker(String) BindToMoniker(String) BindToMoniker(String)

指定したモニカーによって識別されるインターフェイス ポインターを取得します。Gets an interface pointer identified by the specified moniker.

BufferToBSTR(Array, Int32) BufferToBSTR(Array, Int32) BufferToBSTR(Array, Int32) BufferToBSTR(Array, Int32)
ChangeWrapperHandleStrength(Object, Boolean) ChangeWrapperHandleStrength(Object, Boolean) ChangeWrapperHandleStrength(Object, Boolean) ChangeWrapperHandleStrength(Object, Boolean)

オブジェクトの COM 呼び出し可能ラッパー (CCW) ハンドルの強度を変更します。Changes the strength of an object's COM Callable Wrapper (CCW) handle.

CleanupUnusedObjectsInCurrentContext() CleanupUnusedObjectsInCurrentContext() CleanupUnusedObjectsInCurrentContext() CleanupUnusedObjectsInCurrentContext()

現在のコンテキストで割り当てられたすべての ランタイム呼び出し可能ラッパー (RCW: Runtime Callable Wrapper) をクリーンアップすることをランタイムに通知します。Notifies the runtime to clean up all Runtime Callable Wrappers (RCWs) allocated in the current context.

Copy(Single[], Int32, IntPtr, Int32) Copy(Single[], Int32, IntPtr, Int32) Copy(Single[], Int32, IntPtr, Int32) Copy(Single[], Int32, IntPtr, Int32)

1 次元の単精度浮動小数点数のマネージド配列のデータをアンマネージド メモリ ポインターにコピーします。Copies data from a one-dimensional, managed single-precision floating-point number array to an unmanaged memory pointer.

Copy(IntPtr[], Int32, IntPtr, Int32) Copy(IntPtr[], Int32, IntPtr, Int32) Copy(IntPtr[], Int32, IntPtr, Int32) Copy(IntPtr[], Int32, IntPtr, Int32)

1 次元の IntPtr マネージド配列のデータをアンマネージド メモリ ポインターにコピーします。Copies data from a one-dimensional, managed IntPtr array to an unmanaged memory pointer.

Copy(IntPtr, Single[], Int32, Int32) Copy(IntPtr, Single[], Int32, Int32) Copy(IntPtr, Single[], Int32, Int32) Copy(IntPtr, Single[], Int32, Int32)

アンマネージド メモリ ポインターのデータを単精度浮動小数点数のマネージド配列にコピーします。Copies data from an unmanaged memory pointer to a managed single-precision floating-point number array.

Copy(IntPtr, Int64[], Int32, Int32) Copy(IntPtr, Int64[], Int32, Int32) Copy(IntPtr, Int64[], Int32, Int32) Copy(IntPtr, Int64[], Int32, Int32)

アンマネージド メモリ ポインターのデータを 64 ビット符号付き整数のマネージド配列にコピーします。Copies data from an unmanaged memory pointer to a managed 64-bit signed integer array.

Copy(IntPtr, Int32[], Int32, Int32) Copy(IntPtr, Int32[], Int32, Int32) Copy(IntPtr, Int32[], Int32, Int32) Copy(IntPtr, Int32[], Int32, Int32)

アンマネージド メモリ ポインターのデータを 32 ビット符号付き整数のマネージド配列にコピーします。Copies data from an unmanaged memory pointer to a managed 32-bit signed integer array.

Copy(IntPtr, Int16[], Int32, Int32) Copy(IntPtr, Int16[], Int32, Int32) Copy(IntPtr, Int16[], Int32, Int32) Copy(IntPtr, Int16[], Int32, Int32)

アンマネージド メモリ ポインターのデータを 16 ビット符号付き整数のマネージド配列にコピーします。Copies data from an unmanaged memory pointer to a managed 16-bit signed integer array.

Copy(IntPtr, Double[], Int32, Int32) Copy(IntPtr, Double[], Int32, Int32) Copy(IntPtr, Double[], Int32, Int32) Copy(IntPtr, Double[], Int32, Int32)

アンマネージド メモリ ポインターのデータを倍精度浮動小数点数のマネージド配列にコピーします。Copies data from an unmanaged memory pointer to a managed double-precision floating-point number array.

Copy(IntPtr, IntPtr[], Int32, Int32) Copy(IntPtr, IntPtr[], Int32, Int32) Copy(IntPtr, IntPtr[], Int32, Int32) Copy(IntPtr, IntPtr[], Int32, Int32)

アンマネージド メモリ ポインターのデータをマネージド IntPtr 配列にコピーします。Copies data from an unmanaged memory pointer to a managed IntPtr array.

Copy(IntPtr, Byte[], Int32, Int32) Copy(IntPtr, Byte[], Int32, Int32) Copy(IntPtr, Byte[], Int32, Int32) Copy(IntPtr, Byte[], Int32, Int32)

アンマネージド メモリ ポインターのデータを 8 ビット符号なし整数のマネージド配列にコピーします。Copies data from an unmanaged memory pointer to a managed 8-bit unsigned integer array.

Copy(Int64[], Int32, IntPtr, Int32) Copy(Int64[], Int32, IntPtr, Int32) Copy(Int64[], Int32, IntPtr, Int32) Copy(Int64[], Int32, IntPtr, Int32)

1 次元の 64 ビット符号付き整数のマネージド配列のデータをアンマネージド メモリ ポインターにコピーします。Copies data from a one-dimensional, managed 64-bit signed integer array to an unmanaged memory pointer.

Copy(Int32[], Int32, IntPtr, Int32) Copy(Int32[], Int32, IntPtr, Int32) Copy(Int32[], Int32, IntPtr, Int32) Copy(Int32[], Int32, IntPtr, Int32)

1 次元の 32 ビット符号付き整数のマネージド配列のデータをアンマネージド メモリ ポインターにコピーします。Copies data from a one-dimensional, managed 32-bit signed integer array to an unmanaged memory pointer.

Copy(Int16[], Int32, IntPtr, Int32) Copy(Int16[], Int32, IntPtr, Int32) Copy(Int16[], Int32, IntPtr, Int32) Copy(Int16[], Int32, IntPtr, Int32)

1 次元の 16 ビット符号付き整数のマネージド配列のデータをアンマネージド メモリ ポインターにコピーします。Copies data from a one-dimensional, managed 16-bit signed integer array to an unmanaged memory pointer.

Copy(IntPtr, Char[], Int32, Int32) Copy(IntPtr, Char[], Int32, Int32) Copy(IntPtr, Char[], Int32, Int32) Copy(IntPtr, Char[], Int32, Int32)

アンマネージド メモリ ポインターのデータを文字列のマネージド配列にコピーします。Copies data from an unmanaged memory pointer to a managed character array.

Copy(Double[], Int32, IntPtr, Int32) Copy(Double[], Int32, IntPtr, Int32) Copy(Double[], Int32, IntPtr, Int32) Copy(Double[], Int32, IntPtr, Int32)

1 次元の倍精度浮動小数点数のマネージド配列のデータをアンマネージド メモリ ポインターにコピーします。Copies data from a one-dimensional, managed double-precision floating-point number array to an unmanaged memory pointer.

Copy(Char[], Int32, IntPtr, Int32) Copy(Char[], Int32, IntPtr, Int32) Copy(Char[], Int32, IntPtr, Int32) Copy(Char[], Int32, IntPtr, Int32)

1 次元の文字列のマネージド配列のデータをアンマネージド メモリ ポインターにコピーします。Copies data from a one-dimensional, managed character array to an unmanaged memory pointer.

Copy(Byte[], Int32, IntPtr, Int32) Copy(Byte[], Int32, IntPtr, Int32) Copy(Byte[], Int32, IntPtr, Int32) Copy(Byte[], Int32, IntPtr, Int32)

1 次元の 8 ビット符号なし整数のマネージド配列のデータをアンマネージド メモリ ポインターにコピーします。Copies data from a one-dimensional, managed 8-bit unsigned integer array to an unmanaged memory pointer.

CreateAggregatedObject(IntPtr, Object) CreateAggregatedObject(IntPtr, Object) CreateAggregatedObject(IntPtr, Object) CreateAggregatedObject(IntPtr, Object)

指定した COM オブジェクトを使用してマネージド オブジェクトを集約します。Aggregates a managed object with the specified COM object.

CreateAggregatedObject<T>(IntPtr, T) CreateAggregatedObject<T>(IntPtr, T) CreateAggregatedObject<T>(IntPtr, T) CreateAggregatedObject<T>(IntPtr, T)

[.NET Framework 4.5.1 以降のバージョンでサポート][Supported in the .NET Framework 4.5.1 and later versions]

指定した COM オブジェクトを使用して、指定した型のマネージド オブジェクトを集約します。Aggregates a managed object of the specified type with the specified COM object.

CreateWrapperOfType(Object, Type) CreateWrapperOfType(Object, Type) CreateWrapperOfType(Object, Type) CreateWrapperOfType(Object, Type)

指定した型のオブジェクト内の、指定した COM オブジェクトをラップします。Wraps the specified COM object in an object of the specified type.

CreateWrapperOfType<T,TWrapper>(T) CreateWrapperOfType<T,TWrapper>(T) CreateWrapperOfType<T,TWrapper>(T) CreateWrapperOfType<T,TWrapper>(T)

[.NET Framework 4.5.1 以降のバージョンでサポート][Supported in the .NET Framework 4.5.1 and later versions]

指定した型のオブジェクト内の、指定した COM オブジェクトをラップします。Wraps the specified COM object in an object of the specified type.

DestroyStructure(IntPtr, Type) DestroyStructure(IntPtr, Type) DestroyStructure(IntPtr, Type) DestroyStructure(IntPtr, Type)

指定したアンマネージ メモリ ブロックが指す、すべてのサブ構造体を解放します。Frees all substructures that the specified unmanaged memory block points to.

DestroyStructure<T>(IntPtr) DestroyStructure<T>(IntPtr) DestroyStructure<T>(IntPtr) DestroyStructure<T>(IntPtr)

[.NET Framework 4.5.1 以降のバージョンでサポート][Supported in the .NET Framework 4.5.1 and later versions]

指定したアンマネージ メモリ ブロックが指す、指定した型のすべてのサブ構造体を解放します。Frees all substructures of a specified type that the specified unmanaged memory block points to.

FinalReleaseComObject(Object) FinalReleaseComObject(Object) FinalReleaseComObject(Object) FinalReleaseComObject(Object)

ランタイム呼び出し可能ラッパー (RCW: Runtime Callable Wrapper) の参照カウントを 0 に設定することによって、RCW へのすべての参照を解放します。Releases all references to a Runtime Callable Wrapper (RCW) by setting its reference count to 0.

FreeBSTR(IntPtr) FreeBSTR(IntPtr) FreeBSTR(IntPtr) FreeBSTR(IntPtr)

COM SysFreeString 関数を使用して、BSTR を解放します。Frees a BSTR using the COM SysFreeString function.

FreeCoTaskMem(IntPtr) FreeCoTaskMem(IntPtr) FreeCoTaskMem(IntPtr) FreeCoTaskMem(IntPtr)

アンマネージ COM タスク メモリ アロケーターによって割り当てられたメモリ ブロックを解放します。Frees a block of memory allocated by the unmanaged COM task memory allocator.

FreeHGlobal(IntPtr) FreeHGlobal(IntPtr) FreeHGlobal(IntPtr) FreeHGlobal(IntPtr)

以前にプロセスのアンマネージ メモリから割り当てられたメモリを解放します。Frees memory previously allocated from the unmanaged memory of the process.

GenerateGuidForType(Type) GenerateGuidForType(Type) GenerateGuidForType(Type) GenerateGuidForType(Type)

指定した型のグローバル一意識別子 (GUID: Globally Unique Identifier) を返すか、タイプ ライブラリ エクスポーター (Tlbexp.exe) で使用されるアルゴリズムを使用して GUID を生成します。Returns the globally unique identifier (GUID) for the specified type, or generates a GUID using the algorithm used by the Type Library Exporter (Tlbexp.exe).

GenerateProgIdForType(Type) GenerateProgIdForType(Type) GenerateProgIdForType(Type) GenerateProgIdForType(Type)

指定した型のプログラム ID (ProgID) を返します。Returns a programmatic identifier (ProgID) for the specified type.

GetActiveObject(String) GetActiveObject(String) GetActiveObject(String) GetActiveObject(String)

ランニング オブジェクト テーブル (ROT: Running Object Table) から指定したオブジェクトの実行中のインスタンスを取得します。Obtains a running instance of the specified object from the running object table (ROT).

GetComInterfaceForObject(Object, Type) GetComInterfaceForObject(Object, Type) GetComInterfaceForObject(Object, Type) GetComInterfaceForObject(Object, Type)

指定したオブジェクトの指定したインターフェイスを表す IUnknown インターフェイスへのポインターを返します。Returns a pointer to an IUnknown interface that represents the specified interface on the specified object. カスタム クエリ インターフェイス アクセスは既定で有効になっています。Custom query interface access is enabled by default.

GetComInterfaceForObject(Object, Type, CustomQueryInterfaceMode) GetComInterfaceForObject(Object, Type, CustomQueryInterfaceMode) GetComInterfaceForObject(Object, Type, CustomQueryInterfaceMode) GetComInterfaceForObject(Object, Type, CustomQueryInterfaceMode)

指定したオブジェクトの指定したインターフェイスを表す IUnknown インターフェイスへのポインターを返します。Returns a pointer to an IUnknown interface that represents the specified interface on the specified object. カスタム クエリ インターフェイス アクセスは、指定したカスタマイズ モードで制御されます。Custom query interface access is controlled by the specified customization mode.

GetComInterfaceForObject<T,TInterface>(T) GetComInterfaceForObject<T,TInterface>(T) GetComInterfaceForObject<T,TInterface>(T) GetComInterfaceForObject<T,TInterface>(T)

[.NET Framework 4.5.1 以降のバージョンでサポート][Supported in the .NET Framework 4.5.1 and later versions] 指定した型のオブジェクトの指定したインターフェイスを表す IUnknown インターフェイスへのポインターを返します。Returns a pointer to an IUnknown interface that represents the specified interface on an object of the specified type. カスタム クエリ インターフェイス アクセスは既定で有効になっています。Custom query interface access is enabled by default.

GetComInterfaceForObjectInContext(Object, Type) GetComInterfaceForObjectInContext(Object, Type) GetComInterfaceForObjectInContext(Object, Type) GetComInterfaceForObjectInContext(Object, Type)

呼び出し元がオブジェクトと同じコンテキストに存在する場合に、そのオブジェクトの指定したインターフェイスを表すインターフェイス ポインターを返します。Returns an interface pointer that represents the specified interface for an object, if the caller is in the same context as that object.

GetComObjectData(Object, Object) GetComObjectData(Object, Object) GetComObjectData(Object, Object) GetComObjectData(Object, Object)

指定した COM オブジェクトから、指定したキーによって参照されているデータを取得します。Retrieves data that is referenced by the specified key from the specified COM object.

GetComSlotForMethodInfo(MemberInfo) GetComSlotForMethodInfo(MemberInfo) GetComSlotForMethodInfo(MemberInfo) GetComSlotForMethodInfo(MemberInfo)

指定した MemberInfo 型が COM に公開されたときの仮想関数テーブル (V テーブルまたは VTBL) のスロットを取得します。Retrieves the virtual function table (v-table or VTBL) slot for a specified MemberInfo type when that type is exposed to COM.

GetDelegateForFunctionPointer(IntPtr, Type) GetDelegateForFunctionPointer(IntPtr, Type) GetDelegateForFunctionPointer(IntPtr, Type) GetDelegateForFunctionPointer(IntPtr, Type)

アンマネージ関数ポインターをデリゲートに変換します。Converts an unmanaged function pointer to a delegate.

GetDelegateForFunctionPointer<TDelegate>(IntPtr) GetDelegateForFunctionPointer<TDelegate>(IntPtr) GetDelegateForFunctionPointer<TDelegate>(IntPtr) GetDelegateForFunctionPointer<TDelegate>(IntPtr)

[.NET Framework 4.5.1 以降のバージョンでサポート][Supported in the .NET Framework 4.5.1 and later versions]

アンマネージ関数ポインターを指定した型のデリゲートに変換します。Converts an unmanaged function pointer to a delegate of a specified type.

GetEndComSlot(Type) GetEndComSlot(Type) GetEndComSlot(Type) GetEndComSlot(Type)

型が COM に公開されたときの仮想テーブル (V テーブルまたは VTBL) の最後のスロットを取得します。Retrieves the last slot in the virtual function table (v-table or VTBL) of a type when exposed to COM.

GetExceptionCode() GetExceptionCode() GetExceptionCode() GetExceptionCode()

発生した例外の型を識別するコードを取得します。Retrieves a code that identifies the type of the exception that occurred.

GetExceptionForHR(Int32) GetExceptionForHR(Int32) GetExceptionForHR(Int32) GetExceptionForHR(Int32)

指定した HRESULT エラー コードを対応する Exception オブジェクトに変換します。Converts the specified HRESULT error code to a corresponding Exception object.

GetExceptionForHR(Int32, IntPtr) GetExceptionForHR(Int32, IntPtr) GetExceptionForHR(Int32, IntPtr) GetExceptionForHR(Int32, IntPtr)

例外オブジェクトの IErrorInfoインターフェイスに渡された追加エラー情報を使用して、指定した HRESULT エラー コードを対応する Exception オブジェクトに変換します。Converts the specified HRESULT error code to a corresponding Exception object, with additional error information passed in an IErrorInfo interface for the exception object.

GetExceptionPointers() GetExceptionPointers() GetExceptionPointers() GetExceptionPointers()

例外発生時に、コンピューターに依存しない例外の記述、およびスレッドに対して存在した状態に関する情報を取得します。Retrieves a computer-independent description of an exception, and information about the state that existed for the thread when the exception occurred.

GetFunctionPointerForDelegate(Delegate) GetFunctionPointerForDelegate(Delegate) GetFunctionPointerForDelegate(Delegate) GetFunctionPointerForDelegate(Delegate)

アンマネージ コードから呼び出すことができる関数ポインターにデリゲートを変換します。Converts a delegate into a function pointer that is callable from unmanaged code.

GetFunctionPointerForDelegate<TDelegate>(TDelegate) GetFunctionPointerForDelegate<TDelegate>(TDelegate) GetFunctionPointerForDelegate<TDelegate>(TDelegate) GetFunctionPointerForDelegate<TDelegate>(TDelegate)

[.NET Framework 4.5.1 以降のバージョンでサポート][Supported in the .NET Framework 4.5.1 and later versions]

指定した型のデリゲートをアンマネージ コードから呼び出すことができる関数ポインターに変換します。Converts a delegate of a specified type to a function pointer that is callable from unmanaged code.

GetHINSTANCE(Module) GetHINSTANCE(Module) GetHINSTANCE(Module) GetHINSTANCE(Module)

指定したモジュールのインスタンス ハンドル (HINSTANCE) を返します。Returns the instance handle (HINSTANCE) for the specified module.

GetHRForException(Exception) GetHRForException(Exception) GetHRForException(Exception) GetHRForException(Exception)

指定した例外を HRESULT に変換します。Converts the specified exception to an HRESULT.

GetHRForLastWin32Error() GetHRForLastWin32Error() GetHRForLastWin32Error() GetHRForLastWin32Error()

Marshal を使用して実行した Win32 コードが原因の最終エラーに対応する HRESULT を返します。Returns the HRESULT corresponding to the last error incurred by Win32 code executed using Marshal.

GetIDispatchForObject(Object) GetIDispatchForObject(Object) GetIDispatchForObject(Object) GetIDispatchForObject(Object)

マネージド オブジェクトから IDispatch インターフェイスを返します。Returns an IDispatch interface from a managed object.

GetIDispatchForObjectInContext(Object) GetIDispatchForObjectInContext(Object) GetIDispatchForObjectInContext(Object) GetIDispatchForObjectInContext(Object)

呼び出し元がマネージド オブジェクトと同じコンテキストに存在する場合に、そのマネージド オブジェクトから IDispatch インターフェイス ポインターを返します。Returns an IDispatch interface pointer from a managed object, if the caller is in the same context as that object.

GetITypeInfoForType(Type) GetITypeInfoForType(Type) GetITypeInfoForType(Type) GetITypeInfoForType(Type)

マネージド型から ITypeInfo インターフェイスを返します。Returns a ITypeInfo interface from a managed type.

GetIUnknownForObject(Object) GetIUnknownForObject(Object) GetIUnknownForObject(Object) GetIUnknownForObject(Object)

マネージド オブジェクトから IUnknown インターフェイスを返します。Returns an IUnknown interface from a managed object.

GetIUnknownForObjectInContext(Object) GetIUnknownForObjectInContext(Object) GetIUnknownForObjectInContext(Object) GetIUnknownForObjectInContext(Object)

呼び出し元がマネージド オブジェクトと同じコンテキストに存在する場合に、そのマネージド オブジェクトから IUnknown インターフェイスを返します。Returns an IUnknown interface from a managed object, if the caller is in the same context as that object.

GetLastWin32Error() GetLastWin32Error() GetLastWin32Error() GetLastWin32Error()

SetLastError フラグが設定され、プラットフォーム呼び出しを使用して呼び出された、最終アンマネージ関数によって返されるエラー コードを返します。Returns the error code returned by the last unmanaged function that was called using platform invoke that has the SetLastError flag set.

GetManagedThunkForUnmanagedMethodPtr(IntPtr, IntPtr, Int32) GetManagedThunkForUnmanagedMethodPtr(IntPtr, IntPtr, Int32) GetManagedThunkForUnmanagedMethodPtr(IntPtr, IntPtr, Int32) GetManagedThunkForUnmanagedMethodPtr(IntPtr, IntPtr, Int32)

マネージド コードからアンマネージド コードに呼び出しをマーシャリングする、ランタイムによって生成される関数へのポインターを取得します。Gets a pointer to a runtime-generated function that marshals a call from managed to unmanaged code.

GetMethodInfoForComSlot(Type, Int32, ComMemberType) GetMethodInfoForComSlot(Type, Int32, ComMemberType) GetMethodInfoForComSlot(Type, Int32, ComMemberType) GetMethodInfoForComSlot(Type, Int32, ComMemberType)

指定した仮想関数テーブル (V テーブルまたは VTBL) のスロットの MemberInfo オブジェクトを取得します。Retrieves a MemberInfo object for the specified virtual function table (v-table or VTBL) slot.

GetNativeVariantForObject(Object, IntPtr) GetNativeVariantForObject(Object, IntPtr) GetNativeVariantForObject(Object, IntPtr) GetNativeVariantForObject(Object, IntPtr)

オブジェクトを COM VARIANT に変換します。Converts an object to a COM VARIANT.

GetNativeVariantForObject<T>(T, IntPtr) GetNativeVariantForObject<T>(T, IntPtr) GetNativeVariantForObject<T>(T, IntPtr) GetNativeVariantForObject<T>(T, IntPtr)

[.NET Framework 4.5.1 以降のバージョンでサポート][Supported in the .NET Framework 4.5.1 and later versions]

指定した型のオブジェクトを COM VARIANT に変換します。Converts an object of a specified type to a COM VARIANT.

GetObjectForIUnknown(IntPtr) GetObjectForIUnknown(IntPtr) GetObjectForIUnknown(IntPtr) GetObjectForIUnknown(IntPtr)

COM オブジェクトを IUnknown インターフェイスへのポインターによって表す型のインスタンスを返します。Returns an instance of a type that represents a COM object by a pointer to its IUnknown interface.

GetObjectForNativeVariant(IntPtr) GetObjectForNativeVariant(IntPtr) GetObjectForNativeVariant(IntPtr) GetObjectForNativeVariant(IntPtr)

COM VARIANT をオブジェクトに変換します。Converts a COM VARIANT to an object.

GetObjectForNativeVariant<T>(IntPtr) GetObjectForNativeVariant<T>(IntPtr) GetObjectForNativeVariant<T>(IntPtr) GetObjectForNativeVariant<T>(IntPtr)

[.NET Framework 4.5.1 以降のバージョンでサポート][Supported in the .NET Framework 4.5.1 and later versions]

COM VARIANT を、指定した型のオブジェクトに変換します。Converts a COM VARIANT to an object of a specified type.

GetObjectsForNativeVariants(IntPtr, Int32) GetObjectsForNativeVariants(IntPtr, Int32) GetObjectsForNativeVariants(IntPtr, Int32) GetObjectsForNativeVariants(IntPtr, Int32)

COM VARIANTs の配列をオブジェクトの配列に変換します。Converts an array of COM VARIANTs to an array of objects.

GetObjectsForNativeVariants<T>(IntPtr, Int32) GetObjectsForNativeVariants<T>(IntPtr, Int32) GetObjectsForNativeVariants<T>(IntPtr, Int32) GetObjectsForNativeVariants<T>(IntPtr, Int32)

[.NET Framework 4.5.1 以降のバージョンでサポート][Supported in the .NET Framework 4.5.1 and later versions]

COM VARIANT の配列を指定した型の配列に変換します。Converts an array of COM VARIANTs to an array of a specified type.

GetStartComSlot(Type) GetStartComSlot(Type) GetStartComSlot(Type) GetStartComSlot(Type)

ユーザー定義のメソッドを格納している、仮想関数テーブル (V テーブルまたは VTBL) の最初のスロットを取得します。Gets the first slot in the virtual function table (v-table or VTBL) that contains user-defined methods.

GetThreadFromFiberCookie(Int32) GetThreadFromFiberCookie(Int32) GetThreadFromFiberCookie(Int32) GetThreadFromFiberCookie(Int32)

ファイバー cookie を対応する Thread インスタンスに変換します。Converts a fiber cookie into the corresponding Thread instance.

GetTypedObjectForIUnknown(IntPtr, Type) GetTypedObjectForIUnknown(IntPtr, Type) GetTypedObjectForIUnknown(IntPtr, Type) GetTypedObjectForIUnknown(IntPtr, Type)

COM オブジェクトを表す、指定した型のマネージド オブジェクトを返します。Returns a managed object of a specified type that represents a COM object.

GetTypeForITypeInfo(IntPtr) GetTypeForITypeInfo(IntPtr) GetTypeForITypeInfo(IntPtr) GetTypeForITypeInfo(IntPtr)

アンマネージド ITypeInfo オブジェクトをマネージド Type オブジェクトに変換します。Converts an unmanaged ITypeInfo object into a managed Type object.

GetTypeFromCLSID(Guid) GetTypeFromCLSID(Guid) GetTypeFromCLSID(Guid) GetTypeFromCLSID(Guid)

指定したクラス ID (CLSID) に関連付けられている型を返します。Returns the type associated with the specified class identifier (CLSID).

GetTypeInfoName(UCOMITypeInfo) GetTypeInfoName(UCOMITypeInfo) GetTypeInfoName(UCOMITypeInfo) GetTypeInfoName(UCOMITypeInfo)

ITypeInfo オブジェクトで表される型の名前を取得します。Retrieves the name of the type represented by an ITypeInfo object.

GetTypeInfoName(ITypeInfo) GetTypeInfoName(ITypeInfo) GetTypeInfoName(ITypeInfo) GetTypeInfoName(ITypeInfo)

ITypeInfo オブジェクトで表される型の名前を取得します。Retrieves the name of the type represented by an ITypeInfo object.

GetTypeLibGuid(ITypeLib) GetTypeLibGuid(ITypeLib) GetTypeLibGuid(ITypeLib) GetTypeLibGuid(ITypeLib)

タイプ ライブラリのライブラリ ID (LIBID) を取得します。Retrieves the library identifier (LIBID) of a type library.

GetTypeLibGuid(UCOMITypeLib) GetTypeLibGuid(UCOMITypeLib) GetTypeLibGuid(UCOMITypeLib) GetTypeLibGuid(UCOMITypeLib)

タイプ ライブラリのライブラリ ID (LIBID) を取得します。Retrieves the library identifier (LIBID) of a type library.

GetTypeLibGuidForAssembly(Assembly) GetTypeLibGuidForAssembly(Assembly) GetTypeLibGuidForAssembly(Assembly) GetTypeLibGuidForAssembly(Assembly)

指定したアセンブリからエクスポートされるときにタイプ ライブラリに割り当てられるライブラリ ID (LIBID) を取得します。Retrieves the library identifier (LIBID) that is assigned to a type library when it was exported from the specified assembly.

GetTypeLibLcid(ITypeLib) GetTypeLibLcid(ITypeLib) GetTypeLibLcid(ITypeLib) GetTypeLibLcid(ITypeLib)

タイプ ライブラリの LCID を取得します。Retrieves the LCID of a type library.

GetTypeLibLcid(UCOMITypeLib) GetTypeLibLcid(UCOMITypeLib) GetTypeLibLcid(UCOMITypeLib) GetTypeLibLcid(UCOMITypeLib)

タイプ ライブラリの LCID を取得します。Retrieves the LCID of a type library.

GetTypeLibName(ITypeLib) GetTypeLibName(ITypeLib) GetTypeLibName(ITypeLib) GetTypeLibName(ITypeLib)

タイプ ライブラリの名前を取得します。Retrieves the name of a type library.

GetTypeLibName(UCOMITypeLib) GetTypeLibName(UCOMITypeLib) GetTypeLibName(UCOMITypeLib) GetTypeLibName(UCOMITypeLib)

タイプ ライブラリの名前を取得します。Retrieves the name of a type library.

GetTypeLibVersionForAssembly(Assembly, Int32, Int32) GetTypeLibVersionForAssembly(Assembly, Int32, Int32) GetTypeLibVersionForAssembly(Assembly, Int32, Int32) GetTypeLibVersionForAssembly(Assembly, Int32, Int32)

指定したアセンブリからエクスポートされるタイプ ライブラリのバージョン番号を取得します。Retrieves the version number of a type library that will be exported from the specified assembly.

GetUniqueObjectForIUnknown(IntPtr) GetUniqueObjectForIUnknown(IntPtr) GetUniqueObjectForIUnknown(IntPtr) GetUniqueObjectForIUnknown(IntPtr)

指定された IUnknown インターフェイスの一意の ランタイム呼び出し可能ラッパー (RCW: Runtime Callable Wrapper) オブジェクトを作成します。Creates a unique Runtime Callable Wrapper (RCW) object for a given IUnknown interface.

GetUnmanagedThunkForManagedMethodPtr(IntPtr, IntPtr, Int32) GetUnmanagedThunkForManagedMethodPtr(IntPtr, IntPtr, Int32) GetUnmanagedThunkForManagedMethodPtr(IntPtr, IntPtr, Int32) GetUnmanagedThunkForManagedMethodPtr(IntPtr, IntPtr, Int32)

アンマネージド コードからマネージド コードに呼び出しをマーシャリングする、ランタイムによって生成される関数へのポインターを取得します。Gets a pointer to a runtime-generated function that marshals a call from unmanaged to managed code.

IsComObject(Object) IsComObject(Object) IsComObject(Object) IsComObject(Object)

指定したオブジェクトが COM オブジェクトを表すかどうかを示します。Indicates whether a specified object represents a COM object.

IsTypeVisibleFromCom(Type) IsTypeVisibleFromCom(Type) IsTypeVisibleFromCom(Type) IsTypeVisibleFromCom(Type)

型が COM クライアントに表示されるかどうかを示します。Indicates whether a type is visible to COM clients.

NumParamBytes(MethodInfo) NumParamBytes(MethodInfo) NumParamBytes(MethodInfo) NumParamBytes(MethodInfo)

指定したメソッドのパラメーターを保持するために必要なアンマネージ メモリ内のバイト数を計算します。Calculates the number of bytes in unmanaged memory that are required to hold the parameters for the specified method.

OffsetOf(Type, String) OffsetOf(Type, String) OffsetOf(Type, String) OffsetOf(Type, String)

マネージド クラスのアンマネージド フォームのフィールド オフセットを返します。Returns the field offset of the unmanaged form of the managed class.

OffsetOf<T>(String) OffsetOf<T>(String) OffsetOf<T>(String) OffsetOf<T>(String)

[.NET Framework 4.5.1 以降のバージョンでサポート][Supported in the .NET Framework 4.5.1 and later versions]

指定されたマネージド クラスのアンマネージド フォームのフィールド オフセットを返します。Returns the field offset of the unmanaged form of a specified managed class.

Prelink(MethodInfo) Prelink(MethodInfo) Prelink(MethodInfo) Prelink(MethodInfo)

メソッドを呼び出さずに、一度だけ実行されるメソッド セットアップ タスクを実行します。Executes one-time method setup tasks without calling the method.

PrelinkAll(Type) PrelinkAll(Type) PrelinkAll(Type) PrelinkAll(Type)

クラスのすべてのメソッドに対してリンク前の確認を実行します。Performs a pre-link check for all methods on a class.

PtrToStringAnsi(IntPtr) PtrToStringAnsi(IntPtr) PtrToStringAnsi(IntPtr) PtrToStringAnsi(IntPtr)

アンマネージド ANSI 文字列から最初の null 文字に遭遇するまでのすべての文字をマネージド String にコピーし、各 ANSI 文字を Unicode に拡張します。Copies all characters up to the first null character from an unmanaged ANSI string to a managed String, and widens each ANSI character to Unicode.

PtrToStringAnsi(IntPtr, Int32) PtrToStringAnsi(IntPtr, Int32) PtrToStringAnsi(IntPtr, Int32) PtrToStringAnsi(IntPtr, Int32)

マネージド String を割り当て、アンマネージド ANSI 文字列から指定された数の文字をコピーし、各 ANSI 文字を Unicode に変換します。Allocates a managed String, copies a specified number of characters from an unmanaged ANSI string into it, and widens each ANSI character to Unicode.

PtrToStringAuto(IntPtr) PtrToStringAuto(IntPtr) PtrToStringAuto(IntPtr) PtrToStringAuto(IntPtr)

マネージド String を割り当て、最初の null 文字に遭遇するまでの文字をアンマネージド メモリに格納されている文字列からすべてコピーします。Allocates a managed String and copies all characters up to the first null character from a string stored in unmanaged memory into it.

PtrToStringAuto(IntPtr, Int32) PtrToStringAuto(IntPtr, Int32) PtrToStringAuto(IntPtr, Int32) PtrToStringAuto(IntPtr, Int32)

マネージド String を割り当て、アンマネージド メモリに格納されている文字列から指定された数の文字をそれにコピーします。Allocates a managed String and copies the specified number of characters from a string stored in unmanaged memory into it.

PtrToStringBSTR(IntPtr) PtrToStringBSTR(IntPtr) PtrToStringBSTR(IntPtr) PtrToStringBSTR(IntPtr)

マネージド String を割り当て、アンマネージド メモリに格納されている バイナリ文字列 (BSTR) をコピーします。Allocates a managed String and copies a binary string (BSTR) stored in unmanaged memory into it.

PtrToStringUni(IntPtr) PtrToStringUni(IntPtr) PtrToStringUni(IntPtr) PtrToStringUni(IntPtr)

マネージド String を割り当て、アンマネージド Unicode 文字列から最初の null 文字に遭遇するまでの文字をすべてコピーします。Allocates a managed String and copies all characters up to the first null character from an unmanaged Unicode string into it.

PtrToStringUni(IntPtr, Int32) PtrToStringUni(IntPtr, Int32) PtrToStringUni(IntPtr, Int32) PtrToStringUni(IntPtr, Int32)

マネージド String を割り当て、アンマネージド Unicode 文字列から指定された数の文字をコピーします。Allocates a managed String and copies a specified number of characters from an unmanaged Unicode string into it.

PtrToStringUTF8(IntPtr) PtrToStringUTF8(IntPtr) PtrToStringUTF8(IntPtr) PtrToStringUTF8(IntPtr)
PtrToStringUTF8(IntPtr, Int32) PtrToStringUTF8(IntPtr, Int32) PtrToStringUTF8(IntPtr, Int32) PtrToStringUTF8(IntPtr, Int32)
PtrToStructure(IntPtr, Object) PtrToStructure(IntPtr, Object) PtrToStructure(IntPtr, Object) PtrToStructure(IntPtr, Object)

アンマネージド メモリ ブロックからマネージド オブジェクトにデータをマーシャリングします。Marshals data from an unmanaged block of memory to a managed object.

PtrToStructure(IntPtr, Type) PtrToStructure(IntPtr, Type) PtrToStructure(IntPtr, Type) PtrToStructure(IntPtr, Type)

アンマネージド メモリ ブロックから、指定した型の、新しく割り当てられたマネージド オブジェクトにデータをマーシャリングします。Marshals data from an unmanaged block of memory to a newly allocated managed object of the specified type.

PtrToStructure<T>(IntPtr) PtrToStructure<T>(IntPtr) PtrToStructure<T>(IntPtr) PtrToStructure<T>(IntPtr)

[.NET Framework 4.5.1 以降のバージョンでサポート][Supported in the .NET Framework 4.5.1 and later versions]

アンマネージド メモリ ブロックから、ジェネリック型パラメーターによって指定された型の、新しく割り当てられたマネージド オブジェクトにデータをマーシャリングします。Marshals data from an unmanaged block of memory to a newly allocated managed object of the type specified by a generic type parameter.

PtrToStructure<T>(IntPtr, T) PtrToStructure<T>(IntPtr, T) PtrToStructure<T>(IntPtr, T) PtrToStructure<T>(IntPtr, T)

[.NET Framework 4.5.1 以降のバージョンでサポート][Supported in the .NET Framework 4.5.1 and later versions]

アンマネージド メモリ ブロックから、指定した型のマネージド オブジェクトにデータをマーシャリングします。Marshals data from an unmanaged block of memory to a managed object of the specified type.

QueryInterface(IntPtr, Guid, IntPtr) QueryInterface(IntPtr, Guid, IntPtr) QueryInterface(IntPtr, Guid, IntPtr) QueryInterface(IntPtr, Guid, IntPtr)

COM オブジェクトから指定したインターフェイスへのポインターを要求します。Requests a pointer to a specified interface from a COM object.

ReadByte(IntPtr, Int32) ReadByte(IntPtr, Int32) ReadByte(IntPtr, Int32) ReadByte(IntPtr, Int32)

アンマネージ メモリから、指定したオフセット (またはインデックス) の 1 バイトを読み取ります。Reads a single byte at a given offset (or index) from unmanaged memory.

ReadByte(Object, Int32) ReadByte(Object, Int32) ReadByte(Object, Int32) ReadByte(Object, Int32)

アンマネージ メモリから、指定したオフセット (またはインデックス) の 1 バイトを読み取ります。Reads a single byte at a given offset (or index) from unmanaged memory.

ReadByte(IntPtr) ReadByte(IntPtr) ReadByte(IntPtr) ReadByte(IntPtr)

アンマネージ メモリから 1 バイトを読み取ります。Reads a single byte from unmanaged memory.

ReadInt16(IntPtr) ReadInt16(IntPtr) ReadInt16(IntPtr) ReadInt16(IntPtr)

アンマネージ メモリから 16 ビット符号付き整数を読み取ります。Reads a 16-bit signed integer from unmanaged memory.

ReadInt16(IntPtr, Int32) ReadInt16(IntPtr, Int32) ReadInt16(IntPtr, Int32) ReadInt16(IntPtr, Int32)

アンマネージ メモリの指定されたオフセットから 16 ビット符号付き整数を読み取ります。Reads a 16-bit signed integer at a given offset from unmanaged memory.

ReadInt16(Object, Int32) ReadInt16(Object, Int32) ReadInt16(Object, Int32) ReadInt16(Object, Int32)

アンマネージ メモリの指定されたオフセットから 16 ビット符号付き整数を読み取ります。Reads a 16-bit signed integer at a given offset from unmanaged memory.

ReadInt32(IntPtr) ReadInt32(IntPtr) ReadInt32(IntPtr) ReadInt32(IntPtr)

アンマネージ メモリから 32 ビット符号付き整数を読み取ります。Reads a 32-bit signed integer from unmanaged memory.

ReadInt32(IntPtr, Int32) ReadInt32(IntPtr, Int32) ReadInt32(IntPtr, Int32) ReadInt32(IntPtr, Int32)

アンマネージ メモリの指定されたオフセットから 32 ビット符号付き整数を読み取ります。Reads a 32-bit signed integer at a given offset from unmanaged memory.

ReadInt32(Object, Int32) ReadInt32(Object, Int32) ReadInt32(Object, Int32) ReadInt32(Object, Int32)

アンマネージ メモリの指定されたオフセットから 32 ビット符号付き整数を読み取ります。Reads a 32-bit signed integer at a given offset from unmanaged memory.

ReadInt64(IntPtr) ReadInt64(IntPtr) ReadInt64(IntPtr) ReadInt64(IntPtr)

アンマネージ メモリから 64 ビット符号付き整数を読み取ります。Reads a 64-bit signed integer from unmanaged memory.

ReadInt64(IntPtr, Int32) ReadInt64(IntPtr, Int32) ReadInt64(IntPtr, Int32) ReadInt64(IntPtr, Int32)

アンマネージ メモリの指定されたオフセットから 64 ビット符号付き整数を読み取ります。Reads a 64-bit signed integer at a given offset from unmanaged memory.

ReadInt64(Object, Int32) ReadInt64(Object, Int32) ReadInt64(Object, Int32) ReadInt64(Object, Int32)

アンマネージ メモリの指定されたオフセットから 64 ビット符号付き整数を読み取ります。Reads a 64-bit signed integer at a given offset from unmanaged memory.

ReadIntPtr(IntPtr, Int32) ReadIntPtr(IntPtr, Int32) ReadIntPtr(IntPtr, Int32) ReadIntPtr(IntPtr, Int32)

アンマネージ メモリの指定されたオフセットからプロセッサ ネイティブ サイズの整数を読み取ります。Reads a processor native sized integer at a given offset from unmanaged memory.

ReadIntPtr(Object, Int32) ReadIntPtr(Object, Int32) ReadIntPtr(Object, Int32) ReadIntPtr(Object, Int32)

アンマネージ メモリからプロセッサ ネイティブ サイズの整数を読み取ります。Reads a processor native sized integer from unmanaged memory.

ReadIntPtr(IntPtr) ReadIntPtr(IntPtr) ReadIntPtr(IntPtr) ReadIntPtr(IntPtr)

アンマネージ メモリからプロセッサ ネイティブ サイズの整数を読み取ります。Reads a processor native-sized integer from unmanaged memory.

ReAllocCoTaskMem(IntPtr, Int32) ReAllocCoTaskMem(IntPtr, Int32) ReAllocCoTaskMem(IntPtr, Int32) ReAllocCoTaskMem(IntPtr, Int32)

以前に AllocCoTaskMem(Int32) を使用して割り当てられたメモリ ブロックのサイズを変更します。Resizes a block of memory previously allocated with AllocCoTaskMem(Int32).

ReAllocHGlobal(IntPtr, IntPtr) ReAllocHGlobal(IntPtr, IntPtr) ReAllocHGlobal(IntPtr, IntPtr) ReAllocHGlobal(IntPtr, IntPtr)

以前に AllocHGlobal(IntPtr) を使用して割り当てられたメモリ ブロックのサイズを変更します。Resizes a block of memory previously allocated with AllocHGlobal(IntPtr).

Release(IntPtr) Release(IntPtr) Release(IntPtr) Release(IntPtr)

指定したインターフェイスの参照カウントをデクリメントします。Decrements the reference count on the specified interface.

ReleaseComObject(Object) ReleaseComObject(Object) ReleaseComObject(Object) ReleaseComObject(Object)

指定した COM オブジェクトに関連付けられている指定した ランタイム呼び出し可能ラッパー (RCW: Runtime Callable Wrapper) の参照カウントをデクリメントします。Decrements the reference count of the Runtime Callable Wrapper (RCW) associated with the specified COM object.

ReleaseThreadCache() ReleaseThreadCache() ReleaseThreadCache() ReleaseThreadCache()

スレッドのキャッシュを解放します。Releases the thread cache.

SecureStringToBSTR(SecureString) SecureStringToBSTR(SecureString) SecureStringToBSTR(SecureString) SecureStringToBSTR(SecureString)

アンマネージドの バイナリ文字列 (BSTR) を割り当て、それにマネージド SecureString オブジェクトの内容をコピーします。Allocates an unmanaged binary string (BSTR) and copies the contents of a managed SecureString object into it.

SecureStringToCoTaskMemAnsi(SecureString) SecureStringToCoTaskMemAnsi(SecureString) SecureStringToCoTaskMemAnsi(SecureString) SecureStringToCoTaskMemAnsi(SecureString)

アンマネージド COM タスク アロケーターから割り当てられたメモリ ブロックに、マネージド SecureString オブジェクトの内容をコピーします。Copies the contents of a managed SecureString object to a block of memory allocated from the unmanaged COM task allocator.

SecureStringToCoTaskMemUnicode(SecureString) SecureStringToCoTaskMemUnicode(SecureString) SecureStringToCoTaskMemUnicode(SecureString) SecureStringToCoTaskMemUnicode(SecureString)

アンマネージド COM タスク アロケーターから割り当てられたメモリ ブロックに、マネージド SecureString オブジェクトの内容をコピーします。Copies the contents of a managed SecureString object to a block of memory allocated from the unmanaged COM task allocator.

SecureStringToGlobalAllocAnsi(SecureString) SecureStringToGlobalAllocAnsi(SecureString) SecureStringToGlobalAllocAnsi(SecureString) SecureStringToGlobalAllocAnsi(SecureString)

マネージド SecureString の内容をアンマネージド メモリにコピーし、コピー時に ANSI 形式に変換します。Copies the contents of a managed SecureString into unmanaged memory, converting into ANSI format as it copies.

SecureStringToGlobalAllocUnicode(SecureString) SecureStringToGlobalAllocUnicode(SecureString) SecureStringToGlobalAllocUnicode(SecureString) SecureStringToGlobalAllocUnicode(SecureString)

マネージド SecureString オブジェクトの内容をアンマネージド メモリにコピーします。Copies the contents of a managed SecureString object into unmanaged memory.

SetComObjectData(Object, Object, Object) SetComObjectData(Object, Object, Object) SetComObjectData(Object, Object, Object) SetComObjectData(Object, Object, Object)

指定した COM オブジェクトに、指定したキーで参照するデータを設定します。Sets data referenced by the specified key in the specified COM object.

SizeOf(Object) SizeOf(Object) SizeOf(Object) SizeOf(Object)

オブジェクトのアンマネージ サイズをバイト単位で返します。Returns the unmanaged size of an object in bytes.

SizeOf(Type) SizeOf(Type) SizeOf(Type) SizeOf(Type)

アンマネージ型のサイズを返します (バイト単位)。Returns the size of an unmanaged type in bytes.

SizeOf<T>() SizeOf<T>() SizeOf<T>() SizeOf<T>()

[.NET Framework 4.5.1 以降のバージョンでサポート][Supported in the .NET Framework 4.5.1 and later versions]

アンマネージ型のサイズを返します (バイト単位)。Returns the size of an unmanaged type in bytes.

SizeOf<T>(T) SizeOf<T>(T) SizeOf<T>(T) SizeOf<T>(T)

[.NET Framework 4.5.1 以降のバージョンでサポート][Supported in the .NET Framework 4.5.1 and later versions]

指定された型のオブジェクトのアンマネージのサイズをバイト数で返します。Returns the unmanaged size of an object of a specified type in bytes.

StringToBSTR(String) StringToBSTR(String) StringToBSTR(String) StringToBSTR(String)

BSTR を割り当て、それにマネージド String の内容をコピーします。Allocates a BSTR and copies the contents of a managed String into it.

StringToCoTaskMemAnsi(String) StringToCoTaskMemAnsi(String) StringToCoTaskMemAnsi(String) StringToCoTaskMemAnsi(String)

アンマネージド COM タスク アロケーターから割り当てられたメモリ ブロックに、マネージド String の内容をコピーします。Copies the contents of a managed String to a block of memory allocated from the unmanaged COM task allocator.

StringToCoTaskMemAuto(String) StringToCoTaskMemAuto(String) StringToCoTaskMemAuto(String) StringToCoTaskMemAuto(String)

アンマネージド COM タスク アロケーターから割り当てられたメモリ ブロックに、マネージド String の内容をコピーします。Copies the contents of a managed String to a block of memory allocated from the unmanaged COM task allocator.

StringToCoTaskMemUni(String) StringToCoTaskMemUni(String) StringToCoTaskMemUni(String) StringToCoTaskMemUni(String)

アンマネージド COM タスク アロケーターから割り当てられたメモリ ブロックに、マネージド String の内容をコピーします。Copies the contents of a managed String to a block of memory allocated from the unmanaged COM task allocator.

StringToCoTaskMemUTF8(String) StringToCoTaskMemUTF8(String) StringToCoTaskMemUTF8(String) StringToCoTaskMemUTF8(String)
StringToHGlobalAnsi(String) StringToHGlobalAnsi(String) StringToHGlobalAnsi(String) StringToHGlobalAnsi(String)

マネージド String の内容をアンマネージド メモリにコピーし、コピー時に ANSI 形式に変換します。Copies the contents of a managed String into unmanaged memory, converting into ANSI format as it copies.

StringToHGlobalAuto(String) StringToHGlobalAuto(String) StringToHGlobalAuto(String) StringToHGlobalAuto(String)

マネージド String の内容をアンマネージド メモリにコピーし、必要に応じて ANSI 形式に変換します。Copies the contents of a managed String into unmanaged memory, converting into ANSI format if required.

StringToHGlobalUni(String) StringToHGlobalUni(String) StringToHGlobalUni(String) StringToHGlobalUni(String)

マネージド String の内容をアンマネージド メモリにコピーします。Copies the contents of a managed String into unmanaged memory.

StructureToPtr(Object, IntPtr, Boolean) StructureToPtr(Object, IntPtr, Boolean) StructureToPtr(Object, IntPtr, Boolean) StructureToPtr(Object, IntPtr, Boolean)

マネージド オブジェクトからアンマネージド メモリ ブロックにデータをマーシャリングします。Marshals data from a managed object to an unmanaged block of memory.

StructureToPtr<T>(T, IntPtr, Boolean) StructureToPtr<T>(T, IntPtr, Boolean) StructureToPtr<T>(T, IntPtr, Boolean) StructureToPtr<T>(T, IntPtr, Boolean)

[.NET Framework 4.5.1 以降のバージョンでサポート][Supported in the .NET Framework 4.5.1 and later versions]

指定した型のマネージド オブジェクトから、アンマネージド メモリ ブロックにデータをマーシャリングします。Marshals data from a managed object of a specified type to an unmanaged block of memory.

ThrowExceptionForHR(Int32) ThrowExceptionForHR(Int32) ThrowExceptionForHR(Int32) ThrowExceptionForHR(Int32)

特定の失敗 HRESULT 値を使用して例外をスローします。Throws an exception with a specific failure HRESULT value.

ThrowExceptionForHR(Int32, IntPtr) ThrowExceptionForHR(Int32, IntPtr) ThrowExceptionForHR(Int32, IntPtr) ThrowExceptionForHR(Int32, IntPtr)

指定した IErrorInfo.aspx) インターフェイスに基づいて、特定のエラー HRESULT を含む例外をスローします。Throws an exception with a specific failure HRESULT, based on the specified IErrorInfo.aspx) interface.

UnsafeAddrOfPinnedArrayElement(Array, Int32) UnsafeAddrOfPinnedArrayElement(Array, Int32) UnsafeAddrOfPinnedArrayElement(Array, Int32) UnsafeAddrOfPinnedArrayElement(Array, Int32)

指定した配列内の、指定したインデックス位置にある要素のアドレスを取得します。Gets the address of the element at the specified index inside the specified array.

UnsafeAddrOfPinnedArrayElement<T>(T[], Int32) UnsafeAddrOfPinnedArrayElement<T>(T[], Int32) UnsafeAddrOfPinnedArrayElement<T>(T[], Int32) UnsafeAddrOfPinnedArrayElement<T>(T[], Int32)

[.NET Framework 4.5.1 以降のバージョンでサポート][Supported in the .NET Framework 4.5.1 and later versions]

指定された型の配列内の、指定したインデックス位置にある要素のアドレスを取得します。Gets the address of the element at the specified index in an array of a specified type.

WriteByte(Object, Int32, Byte) WriteByte(Object, Int32, Byte) WriteByte(Object, Int32, Byte) WriteByte(Object, Int32, Byte)

1 バイトをアンマネージ メモリの指定されたオフセット位置に書き込みます。Writes a single byte value to unmanaged memory at a specified offset.

WriteByte(IntPtr, Int32, Byte) WriteByte(IntPtr, Int32, Byte) WriteByte(IntPtr, Int32, Byte) WriteByte(IntPtr, Int32, Byte)

1 バイトをアンマネージ メモリの指定されたオフセット位置に書き込みます。Writes a single byte value to unmanaged memory at a specified offset.

WriteByte(IntPtr, Byte) WriteByte(IntPtr, Byte) WriteByte(IntPtr, Byte) WriteByte(IntPtr, Byte)

1 バイト値をアンマネージ メモリに書き込みます。Writes a single byte value to unmanaged memory.

WriteInt16(IntPtr, Char) WriteInt16(IntPtr, Char) WriteInt16(IntPtr, Char) WriteInt16(IntPtr, Char)

文字を 16 ビット整数としてアンマネージ メモリに書き込みます。Writes a character as a 16-bit integer value to unmanaged memory.

WriteInt16(IntPtr, Int16) WriteInt16(IntPtr, Int16) WriteInt16(IntPtr, Int16) WriteInt16(IntPtr, Int16)

アンマネージ メモリに 16 ビット整数を書き込みます。Writes a 16-bit integer value to unmanaged memory.

WriteInt16(IntPtr, Int32, Char) WriteInt16(IntPtr, Int32, Char) WriteInt16(IntPtr, Int32, Char) WriteInt16(IntPtr, Int32, Char)

16 ビット符号付き整数値をアンマネージ メモリの指定されたオフセット位置に書き込みます。Writes a 16-bit signed integer value to unmanaged memory at a specified offset.

WriteInt16(IntPtr, Int32, Int16) WriteInt16(IntPtr, Int32, Int16) WriteInt16(IntPtr, Int32, Int16) WriteInt16(IntPtr, Int32, Int16)

16 ビット符号付き整数をアンマネージ メモリの指定されたオフセット位置に書き込みます。Writes a 16-bit signed integer value into unmanaged memory at a specified offset.

WriteInt16(Object, Int32, Char) WriteInt16(Object, Int32, Char) WriteInt16(Object, Int32, Char) WriteInt16(Object, Int32, Char)

16 ビット符号付き整数値をアンマネージ メモリの指定されたオフセット位置に書き込みます。Writes a 16-bit signed integer value to unmanaged memory at a specified offset.

WriteInt16(Object, Int32, Int16) WriteInt16(Object, Int32, Int16) WriteInt16(Object, Int32, Int16) WriteInt16(Object, Int32, Int16)

16 ビット符号付き整数値をアンマネージ メモリの指定されたオフセット位置に書き込みます。Writes a 16-bit signed integer value to unmanaged memory at a specified offset.

WriteInt32(IntPtr, Int32) WriteInt32(IntPtr, Int32) WriteInt32(IntPtr, Int32) WriteInt32(IntPtr, Int32)

アンマネージ メモリに 32 ビット符号付き整数を書き込みます。Writes a 32-bit signed integer value to unmanaged memory.

WriteInt32(IntPtr, Int32, Int32) WriteInt32(IntPtr, Int32, Int32) WriteInt32(IntPtr, Int32, Int32) WriteInt32(IntPtr, Int32, Int32)

32 ビット符号付き整数をアンマネージ メモリの指定されたオフセット位置に書き込みます。Writes a 32-bit signed integer value into unmanaged memory at a specified offset.

WriteInt32(Object, Int32, Int32) WriteInt32(Object, Int32, Int32) WriteInt32(Object, Int32, Int32) WriteInt32(Object, Int32, Int32)

32 ビット符号付き整数値をアンマネージ メモリの指定されたオフセット位置に書き込みます。Writes a 32-bit signed integer value to unmanaged memory at a specified offset.

WriteInt64(Object, Int32, Int64) WriteInt64(Object, Int32, Int64) WriteInt64(Object, Int32, Int64) WriteInt64(Object, Int32, Int64)

64 ビット符号付き整数値をアンマネージ メモリの指定されたオフセット位置に書き込みます。Writes a 64-bit signed integer value to unmanaged memory at a specified offset.

WriteInt64(IntPtr, Int64) WriteInt64(IntPtr, Int64) WriteInt64(IntPtr, Int64) WriteInt64(IntPtr, Int64)

アンマネージ メモリに 64 ビット符号付き整数を書き込みます。Writes a 64-bit signed integer value to unmanaged memory.

WriteInt64(IntPtr, Int32, Int64) WriteInt64(IntPtr, Int32, Int64) WriteInt64(IntPtr, Int32, Int64) WriteInt64(IntPtr, Int32, Int64)

64 ビット符号付き整数値をアンマネージ メモリの指定されたオフセット位置に書き込みます。Writes a 64-bit signed integer value to unmanaged memory at a specified offset.

WriteIntPtr(IntPtr, IntPtr) WriteIntPtr(IntPtr, IntPtr) WriteIntPtr(IntPtr, IntPtr) WriteIntPtr(IntPtr, IntPtr)

アンマネージ メモリにプロセッサ ネイティブ サイズの整数を書き込みます。Writes a processor native sized integer value into unmanaged memory.

WriteIntPtr(IntPtr, Int32, IntPtr) WriteIntPtr(IntPtr, Int32, IntPtr) WriteIntPtr(IntPtr, Int32, IntPtr) WriteIntPtr(IntPtr, Int32, IntPtr)

アンマネージ メモリの指定されたオフセット位置にプロセッサ ネイティブ サイズの整数値を書き込みます。Writes a processor native-sized integer value to unmanaged memory at a specified offset.

WriteIntPtr(Object, Int32, IntPtr) WriteIntPtr(Object, Int32, IntPtr) WriteIntPtr(Object, Int32, IntPtr) WriteIntPtr(Object, Int32, IntPtr)

アンマネージ メモリにプロセッサ ネイティブ サイズの整数を書き込みます。Writes a processor native sized integer value to unmanaged memory.

ZeroFreeBSTR(IntPtr) ZeroFreeBSTR(IntPtr) ZeroFreeBSTR(IntPtr) ZeroFreeBSTR(IntPtr)

SecureStringToBSTR(SecureString) メソッドを使用して割り当てられた BSTR ポインターを解放します。Frees a BSTR pointer that was allocated using the SecureStringToBSTR(SecureString) method.

ZeroFreeCoTaskMemAnsi(IntPtr) ZeroFreeCoTaskMemAnsi(IntPtr) ZeroFreeCoTaskMemAnsi(IntPtr) ZeroFreeCoTaskMemAnsi(IntPtr)

SecureStringToCoTaskMemAnsi(SecureString) メソッドを使用して割り当てられたアンマネージ文字列ポインターを解放します。Frees an unmanaged string pointer that was allocated using the SecureStringToCoTaskMemAnsi(SecureString) method.

ZeroFreeCoTaskMemUnicode(IntPtr) ZeroFreeCoTaskMemUnicode(IntPtr) ZeroFreeCoTaskMemUnicode(IntPtr) ZeroFreeCoTaskMemUnicode(IntPtr)

SecureStringToCoTaskMemUnicode(SecureString) メソッドを使用して割り当てられたアンマネージ文字列ポインターを解放します。Frees an unmanaged string pointer that was allocated using the SecureStringToCoTaskMemUnicode(SecureString) method.

ZeroFreeCoTaskMemUTF8(IntPtr) ZeroFreeCoTaskMemUTF8(IntPtr) ZeroFreeCoTaskMemUTF8(IntPtr) ZeroFreeCoTaskMemUTF8(IntPtr)
ZeroFreeGlobalAllocAnsi(IntPtr) ZeroFreeGlobalAllocAnsi(IntPtr) ZeroFreeGlobalAllocAnsi(IntPtr) ZeroFreeGlobalAllocAnsi(IntPtr)

SecureStringToGlobalAllocAnsi(SecureString) メソッドを使用して割り当てられたアンマネージ文字列ポインターを解放します。Frees an unmanaged string pointer that was allocated using the SecureStringToGlobalAllocAnsi(SecureString) method.

ZeroFreeGlobalAllocUnicode(IntPtr) ZeroFreeGlobalAllocUnicode(IntPtr) ZeroFreeGlobalAllocUnicode(IntPtr) ZeroFreeGlobalAllocUnicode(IntPtr)

SecureStringToGlobalAllocUnicode(SecureString) メソッドを使用して割り当てられたアンマネージ文字列ポインターを解放します。Frees an unmanaged string pointer that was allocated using the SecureStringToGlobalAllocUnicode(SecureString) method.

適用対象