Marshal Osztály

Definíció

Metódusok gyűjteménye a nem felügyelt memória kiosztásához, a nem felügyelt memóriablokkok másolásához és a felügyelt típusokká való konvertáláshoz, valamint a nem felügyelt kódokkal való interakcióhoz használt egyéb egyéb módszerekhez.

public ref class Marshal abstract sealed
public ref class Marshal sealed
public static class Marshal
public sealed class Marshal
type Marshal = class
Public Class Marshal
Public NotInheritable Class Marshal
Öröklődés
Marshal

Példák

Az alábbi példa bemutatja, hogyan használható az Marshal osztály által meghatározott különböző metódusok.

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 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
// 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 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
// 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 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
' CloseHandle call failed with an error code of: 6

Megjegyzések

Az static osztályban Marshal definiált metódusok elengedhetetlenek a nem felügyelt kódokkal való munkához. Az ebben az osztályban definiált legtöbb metódust általában olyan fejlesztők használják, akik hidat szeretnének biztosítani a felügyelt és a nem felügyelt programozási modellek között. A metódus például StringToHGlobalAnsi ANSI-karaktereket másol egy megadott sztringből (a felügyelt halomból) egy pufferbe a nem felügyelt halomba. Emellett a megfelelő méretű célapátot is lefoglalja.

A közös nyelvi futtatókörnyezet speciális felügyeleti képességeket biztosít. A marshaling viselkedésével kapcsolatos részletekért lásd: Interop Marshaling.

Az Read osztályban lévő metódusok és Write metódusok támogatják az Marshal igazított és a nem elalkosított hozzáférést is.

Mezők

Name Description
SystemDefaultCharSize

A rendszer alapértelmezett karakterméretét jelöli; Az alapértelmezett érték a Unicode rendszereknél 2, ANSI-rendszereknél pedig 1. Ez a mező csak olvasható.

SystemMaxDBCSCharSize

A kétbájtos karakterkészlet (DBCS) maximális méretét jelöli bájtban az aktuális operációs rendszer esetében. Ez a mező csak olvasható.

Metódusok

Name Description
AddRef(IntPtr)

Növeli a hivatkozás számát a megadott felületen.

AllocCoTaskMem(Int32)

Egy meghatározott méretű memóriablokkot foglal le a COM feladatmemória-kiosztójától.

AllocHGlobal(Int32)

A folyamat nem felügyelt memóriájából foglal le memóriát a megadott számú bájt használatával.

AllocHGlobal(IntPtr)

A folyamat nem felügyelt memóriájából foglal le memóriát a mutatóval a megadott bájtszámra.

AreComObjectsAvailableForCleanup()

Azt jelzi, hogy a futtatókörnyezet bármely környezetből hívható burkolói (RCW-k) elérhetők-e a karbantartáshoz.

BindToMoniker(String)

Lekéri a megadott moniker által azonosított felületmutatót.

ChangeWrapperHandleStrength(Object, Boolean)

Módosítja az objektum COM Callable Burkoló (CCW) leírójának erősségét.

CleanupUnusedObjectsInCurrentContext()

Értesíti a futtatókörnyezetet az aktuális környezetben lefoglalt összes futtatókörnyezeti hívható burkoló (RCW) eltávolításáról.

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

Adatok másolása egy egydimenziós, felügyelt, 8 bites, aláíratlan egész számtömbből egy nem felügyelt memóriamutatóba.

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

Adatok másolása egy egydimenziós, felügyelt karaktertömbből egy nem felügyelt memóriamutatóba.

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

Adatok másolása egy egydimenziós, felügyelt, dupla pontosságú lebegőpontos számtömbből egy nem felügyelt memóriamutatóba.

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

Adatok másolása egy egydimenziós, felügyelt, 16 bites aláírt egész számtömbből egy nem felügyelt memóriamutatóba.

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

Adatokat másol egy egydimenziós, felügyelt, 32 bites aláírt egész számtömbből egy nem felügyelt memóriamutatóba.

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

Adatokat másol egy egydimenziós, felügyelt, 64 bites aláírt egész számtömbből egy nem felügyelt memóriamutatóba.

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

Adatok másolása nem felügyelt memóriamutatóból egy felügyelt, 8 bites, aláíratlan egész számtömbbe.

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

Adatok másolása nem felügyelt memóriamutatóból felügyelt karaktertömbbe.

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

Adatok másolása nem felügyelt memóriamutatóból egy felügyelt, dupla pontosságú lebegőpontos számtömbbe.

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

Adatok másolása nem felügyelt memóriamutatóból egy felügyelt, 16 bites aláírt egész számtömbbe.

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

Adatok másolása nem felügyelt memóriamutatóból egy felügyelt, 32 bites aláírt egész számtömbbe.

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

Adatokat másol egy nem felügyelt memóriamutatóból egy felügyelt 64 bites aláírt egész számtömbbe.

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

Adatok másolása nem felügyelt memóriamutatóból felügyelt IntPtr tömbbe.

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

Adatok másolása nem felügyelt memóriamutatóból egy felügyelt, egy pontosságú lebegőpontos számtömbbe.

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

Adatok másolása egy egydimenziós, felügyelt IntPtr tömbből egy nem felügyelt memóriamutatóba.

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

Adatokat másol egy egydimenziós, felügyelt egypontos lebegőpontos számtömbből egy nem felügyelt memóriamutatóba.

CreateAggregatedObject(IntPtr, Object)
Elavult.

Összesít egy felügyelt objektumot a megadott COM-objektummal.

CreateAggregatedObject<T>(IntPtr, T)

A megadott típusú felügyelt objektum összesítése a megadott COM-objektummal.

CreateWrapperOfType(Object, Type)
Elavult.

A megadott COM-objektum körbefuttatása egy megadott típusú objektumban.

CreateWrapperOfType<T,TWrapper>(T)

A megadott COM-objektum körbefuttatása egy megadott típusú objektumban.

DestroyStructure(IntPtr, Type)
Elavult.

Felszabadítja azokat az alstruktúrákat, amelyekre a megadott nem felügyelt memóriablokk utal.

DestroyStructure<T>(IntPtr)

Felszabadítja a megadott típusú összes alstruktúrát, amelyekre a megadott nem felügyelt memóriablokk utal.

FinalReleaseComObject(Object)

A runtime callable Burkolóra (RCW) mutató összes hivatkozást 0-ra állítja.

FreeBSTR(IntPtr)

Felszabadítja a BSTR COM SysFreeString függvényt .

FreeCoTaskMem(IntPtr)

Felszabadít egy memóriablokkot, amelyet a nem felügyelt COM-feladatmemória-kiosztó foglal le.

FreeHGlobal(IntPtr)

Felszabadítja a folyamat nem felügyelt memóriájából korábban lefoglalt memóriát.

GenerateGuidForType(Type)

A megadott típus globálisan egyedi azonosítóját (GUID) adja vissza, vagy a típuskódtár-exportőr (Tlbexp.exe) által használt algoritmussal hoz létre GUID azonosítót.

GenerateProgIdForType(Type)

Egy programozott azonosítót (ProgID) ad vissza a megadott típushoz.

GetActiveObject(String)

Lekérte a megadott objektum futó példányát a futó objektumtáblából (ROT).

GetComInterfaceForObject(Object, Type, CustomQueryInterfaceMode)
Elavult.

Egy mutatót ad vissza egy IUnknown felületre, amely a megadott illesztőt jelöli a megadott objektumon. Az egyéni lekérdezési felület elérését a megadott testreszabási mód szabályozza.

GetComInterfaceForObject(Object, Type)
Elavult.

Egy mutatót ad vissza egy IUnknown felületre, amely a megadott illesztőt jelöli a megadott objektumon. Alapértelmezés szerint engedélyezve van az egyéni lekérdezési felület elérése.

GetComInterfaceForObject<T,TInterface>(T)

Egy mutatót ad vissza egy IUnknown felületre, amely a megadott illesztőt jelöli egy adott típusú objektumon. Alapértelmezés szerint engedélyezve van az egyéni lekérdezési felület elérése.

GetComInterfaceForObjectInContext(Object, Type)

Egy objektum megadott felületét jelző illesztőmutatót ad vissza, ha a hívó ugyanabban a környezetben van, mint az objektum.

GetComObjectData(Object, Object)

Lekéri a megadott kulcs által hivatkozott adatokat a megadott COM-objektumból.

GetComSlotForMethodInfo(MemberInfo)

Lekéri a virtuális függvénytábla (v-table vagy VTBL) pontját egy adott MemberInfo típushoz, ha ez a típus elérhető a COM számára.

GetDelegateForFunctionPointer(IntPtr, Type)
Elavult.

Nem felügyelt függvénymutatót delegálttá alakít át.

GetDelegateForFunctionPointer<TDelegate>(IntPtr)

A nem felügyelt függvénymutatót egy megadott típusú delegálttá alakítja.

GetEndComSlot(Type)

Lekéri egy típus virtuális függvénytáblájának (v-table vagy VTBL) utolsó pontját, amikor a COM-nak ki van téve.

GetExceptionCode()
Elavult.

Lekéri a bekövetkezett kivétel típusát azonosító kódot.

GetExceptionForHR(Int32, Guid, IntPtr)

Metódusok gyűjteménye a nem felügyelt memória kiosztásához, a nem felügyelt memóriablokkok másolásához és a felügyelt típusokká való konvertáláshoz, valamint a nem felügyelt kódokkal való interakcióhoz használt egyéb egyéb módszerekhez.

GetExceptionForHR(Int32, IntPtr)

A megadott HRESULT hibakódot egy megfelelő Exception objektummá alakítja át, és további hibainformációkat ad át a kivételobjektum IErrorInfo felületén.

GetExceptionForHR(Int32)

A megadott HRESULT hibakódot egy megfelelő Exception objektummá alakítja.

GetExceptionPointers()

Lekéri a kivétel számítógépfüggetlen leírását, valamint a szálnál a kivétel bekövetkeztekor fennálló állapotra vonatkozó információkat.

GetFunctionPointerForDelegate(Delegate)
Elavult.

A meghatalmazottat nem felügyelt kódból hívható függvénymutatóvá alakítja.

GetFunctionPointerForDelegate<TDelegate>(TDelegate)

Egy megadott típusú meghatalmazottat nem felügyelt kódból hívható függvénymutatóvá alakít át.

GetHINSTANCE(Module)

A megadott modul példányleíróját (HINSTANCE) adja vissza.

GetHRForException(Exception)

A megadott kivételt HRESULT-ra konvertálja.

GetHRForLastWin32Error()

A Win32-kód által végrehajtott Marshalutolsó hibának megfelelő HRESULT értéket adja vissza.

GetIDispatchForObject(Object)

Egy felügyelt objektumból származó IDispatch-felületet ad vissza.

GetIDispatchForObjectInContext(Object)

Egy IDispatch-felület mutatóját adja vissza egy felügyelt objektumból, ha a hívó ugyanabban a környezetben van, mint az objektum.

GetITypeInfoForType(Type)

Felügyelt típusból származó felületet ad ITypeInfo vissza.

GetIUnknownForObject(Object)

Egy felügyelt objektumból származó IUnknown felületet ad vissza.

GetIUnknownForObjectInContext(Object)

Egy felügyelt objektumból származó IUnknown felületet ad vissza, ha a hívó ugyanabban a környezetben van, mint az objektum.

GetLastPInvokeError()

Az aktuális szál utolsó platformhívási hibájának lekérése.

GetLastPInvokeErrorMessage()

Lekéri a rendszer hibaüzenetét az utolsó PInvoke hibakódhoz.

GetLastSystemError()

Az aktuális szálon az utolsó rendszerhiba jelenik meg.

GetLastWin32Error()

Az utolsó nem felügyelt függvény által visszaadott hibakódot adja vissza, amelyet a jelölőkészletet tartalmazó SetLastError platformhívással hívott meg.

GetManagedThunkForUnmanagedMethodPtr(IntPtr, IntPtr, Int32)
Elavult.

Mutatót kap egy futásidejű függvényhez, amely felügyelt kódról nem felügyelt kódra irányít egy hívást.

GetMethodInfoForComSlot(Type, Int32, ComMemberType)

Lekéri MemberInfo a megadott virtuális függvénytábla (v-table vagy VTBL) pont objektumát.

GetNativeVariantForObject(Object, IntPtr)
Elavult.

Egy objektumot COM VARIANT-vá alakít át.

GetNativeVariantForObject<T>(T, IntPtr)
Elavult.

Egy megadott típusú objektumot COM VARIANT-ra konvertál.

GetObjectForIUnknown(IntPtr)

Olyan típusú példányt ad vissza, amely egy COM-objektumot jelöl az IUnknown felületére mutató mutatóval.

GetObjectForNativeVariant(IntPtr)
Elavult.

A COM VARIANT-t objektummá alakítja.

GetObjectForNativeVariant<T>(IntPtr)
Elavult.

A COM VARIANT-t egy megadott típusú objektummá alakítja.

GetObjectsForNativeVariants(IntPtr, Int32)
Elavult.

A COM VARIANTs tömböt objektumok tömbjeként alakítja át.

GetObjectsForNativeVariants<T>(IntPtr, Int32)
Elavult.

COM VARIANT-tömböt konvertál egy megadott típusú tömbbe.

GetPInvokeErrorMessage(Int32)

Lekéri a megadott hibakód rendszerhiba-üzenetét.

GetStartComSlot(Type)

Lekéri a felhasználó által definiált metódusokat tartalmazó virtuális függvénytábla (v-table vagy VTBL) első pontját.

GetThreadFromFiberCookie(Int32)
Elavult.

Szálas cookie-t konvertál a megfelelő Thread példányra.

GetTypedObjectForIUnknown(IntPtr, Type)

Egy COM-objektumot képviselő, megadott típusú felügyelt objektumot ad vissza.

GetTypeForITypeInfo(IntPtr)

Egy nem felügyelt ITypeInfo-objektumot felügyelt Type objektummá alakít át.

GetTypeFromCLSID(Guid)

A megadott osztályazonosítóhoz (CLSID) társított típust adja vissza.

GetTypeInfoName(ITypeInfo)

Lekéri az ITypeInfo objektum által képviselt típus nevét.

GetTypeInfoName(UCOMITypeInfo)
Elavult.

Lekéri az ITypeInfo objektum által képviselt típus nevét.

GetTypeLibGuid(ITypeLib)

Lekéri egy típustár kódtár-azonosítóját (LIBID).

GetTypeLibGuid(UCOMITypeLib)
Elavult.

Lekéri egy típustár kódtár-azonosítóját (LIBID).

GetTypeLibGuidForAssembly(Assembly)

Lekéri a típustárhoz rendelt kódtár azonosítóját (LIBID), amikor az exportálva lett a megadott szerelvényből.

GetTypeLibLcid(ITypeLib)

Egy típustár LCID-jének lekérése.

GetTypeLibLcid(UCOMITypeLib)
Elavult.

Egy típustár LCID-jének lekérése.

GetTypeLibName(ITypeLib)

Egy típustár nevét kéri le.

GetTypeLibName(UCOMITypeLib)
Elavult.

Egy típustár nevét kéri le.

GetTypeLibVersionForAssembly(Assembly, Int32, Int32)

Lekéri a megadott szerelvényből exportálni kívánt típustár verziószámát.

GetUniqueObjectForIUnknown(IntPtr)

Létrehoz egy egyedi Runtime Callable Burkoló (RCW) objektumot egy adott IUnknown felülethez.

GetUnmanagedThunkForManagedMethodPtr(IntPtr, IntPtr, Int32)
Elavult.

Egy olyan futásidejű függvényre mutató mutatót kap, amely nem felügyelt kódból felügyelt kódra irányít egy hívást.

InitHandle(SafeHandle, IntPtr)

Inicializálja az újonnan létrehozott SafeHandle leírót a megadott értékre.

IsComObject(Object)

Azt jelzi, hogy egy megadott objektum COM-objektumot jelöl-e.

IsTypeVisibleFromCom(Type)

Azt jelzi, hogy egy típus látható-e a COM-ügyfelek számára.

NumParamBytes(MethodInfo)

Kiszámítja a nem felügyelt memóriában lévő bájtok számát, amelyek a megadott metódus paramétereinek tárolásához szükségesek.

OffsetOf(Type, String)
Elavult.

A felügyelt osztály nem felügyelt formájának mezőeltolását adja vissza.

OffsetOf<T>(String)

Egy adott felügyelt osztály nem felügyelt formájának mezőeltolását adja vissza.

Prelink(MethodInfo)

Egyszeri metódusbeállítási feladatokat hajt végre a metódus meghívása nélkül.

PrelinkAll(Type)

Egy osztály összes metódusának előzetes csatolási ellenőrzését hajtja végre.

PtrToStringAnsi(IntPtr, Int32)

Lefoglalt egy felügyelt Stringkaraktert, egy megadott számú karaktert másol egy nem felügyelt ANSI- vagy UTF-8-sztringből, és az egyes karaktereket UTF-16-ra bővíti.

PtrToStringAnsi(IntPtr)

Az összes karaktert egy nem felügyelt ANSI- vagy UTF-8-sztringből az első null karakterig másolja egy felügyeltre String, és minden karaktert UTF-16-ra szélesít.

PtrToStringAuto(IntPtr, Int32)

Lefoglalt egy felügyelt String karaktert, és a megadott számú karaktert átmásolja egy nem felügyelt memóriában tárolt sztringből.

PtrToStringAuto(IntPtr)

Lefoglal egy felügyelt String karaktert, és az összes karaktert átmásolja az első null karakterig egy nem felügyelt memóriában tárolt sztringből.

PtrToStringBSTR(IntPtr)

Lefoglal egy felügyeltet String , és egy nem felügyelt memóriában tárolt bináris sztringet (BSTR) másol bele.

PtrToStringUni(IntPtr, Int32)

Lefoglalt egy felügyelt String karaktert, és egy megadott számú karaktert másol egy nem felügyelt Unicode-sztringből.

PtrToStringUni(IntPtr)

Lefoglal egy felügyelt String karaktert, és az összes karaktert átmásolja az első null karakterre egy nem felügyelt Unicode-sztringből.

PtrToStringUTF8(IntPtr, Int32)

Lefoglal egy felügyeltet String , és adott számú bájtot másol egy nem felügyelt UTF8-sztringből.

PtrToStringUTF8(IntPtr)

Lefoglal egy felügyelt String karaktert, és az összes karaktert átmásolja az első null karakterig egy nem felügyelt UTF-8 sztringből.

PtrToStructure(IntPtr, Object)
Elavult.

A nem felügyelt memóriablokkból egy felügyelt objektumba irányít adatokat.

PtrToStructure(IntPtr, Type)
Elavult.

A nem felügyelt memóriablokkból a megadott típusú újonnan lefoglalt felügyelt objektumba osztja az adatokat.

PtrToStructure<T>(IntPtr, T)

A nem felügyelt memóriablokkból a megadott típusú felügyelt objektumba adhatja át az adatokat.

PtrToStructure<T>(IntPtr)

Egy nem felügyelt memóriablokk adatait egy általános típusparaméter által megadott típusú, újonnan lefoglalt felügyelt objektumra osztja.

QueryInterface(IntPtr, Guid, IntPtr)

Egy COM-objektumból egy adott felületre mutató mutatót kér.

ReadByte(IntPtr, Int32)

Egyetlen bájtot olvas be egy adott eltolásnál (vagy indexnél) a nem felügyelt memóriából.

ReadByte(IntPtr)

Egyetlen bájtot olvas be a nem felügyelt memóriából.

ReadByte(Object, Int32)
Elavult.

Egyetlen bájtot olvas be egy adott eltolásnál (vagy indexnél) a nem felügyelt memóriából.

ReadInt16(IntPtr, Int32)

Egy 16 bites aláírt egész számot olvas be egy adott eltoláskor a nem felügyelt memóriából.

ReadInt16(IntPtr)

Egy 16 bites aláírt egész számot olvas be a nem felügyelt memóriából.

ReadInt16(Object, Int32)
Elavult.

Egy 16 bites aláírt egész számot olvas be egy adott eltoláskor a nem felügyelt memóriából.

ReadInt32(IntPtr, Int32)

Egy 32 bites aláírt egész számot olvas be egy adott eltoláskor a nem felügyelt memóriából.

ReadInt32(IntPtr)

32 bites aláírt egész számot olvas be a nem felügyelt memóriából.

ReadInt32(Object, Int32)
Elavult.

Egy 32 bites aláírt egész számot olvas be egy adott eltoláskor a nem felügyelt memóriából.

ReadInt64(IntPtr, Int32)

Egy 64 bites aláírt egész számot olvas be egy adott eltoláskor a nem felügyelt memóriából.

ReadInt64(IntPtr)

64 bites aláírt egész számot olvas be a nem felügyelt memóriából.

ReadInt64(Object, Int32)
Elavult.

Egy 64 bites aláírt egész számot olvas be egy adott eltoláskor a nem felügyelt memóriából.

ReadIntPtr(IntPtr, Int32)

A processzor natív méretű egész számának olvasása a nem felügyelt memória adott eltolásánál.

ReadIntPtr(IntPtr)

A processzor natív méretű egész számának olvasása nem felügyelt memóriából.

ReadIntPtr(Object, Int32)
Elavult.

A processzor natív méretű egész számának olvasása nem felügyelt memóriából.

ReAllocCoTaskMem(IntPtr, Int32)

Átméretezi a korábban lefoglalt memóriablokkot AllocCoTaskMem(Int32).

ReAllocHGlobal(IntPtr, IntPtr)

Átméretezi a korábban lefoglalt memóriablokkot AllocHGlobal(IntPtr).

Release(IntPtr)

A hivatkozási szám a megadott felületen csökken.

ReleaseComObject(Object)

A megadott COM-objektumhoz társított futtatókörnyezeti hívható burkoló (RCW) hivatkozásainak száma csökken.

ReleaseThreadCache()
Elavult.

Felszabadítja a szálgyorsítótárat.

SecureStringToBSTR(SecureString)

Lefoglal egy nem felügyelt bináris sztringet (BSTR), és bemásolja a felügyelt SecureString objektum tartalmát.

SecureStringToCoTaskMemAnsi(SecureString)

Egy felügyelt SecureString objektum tartalmának másolása a nem felügyelt COM-feladatelosztóból lefoglalt memóriablokkba.

SecureStringToCoTaskMemUnicode(SecureString)

Egy felügyelt SecureString objektum tartalmának másolása a nem felügyelt COM-feladatelosztóból lefoglalt memóriablokkba.

SecureStringToGlobalAllocAnsi(SecureString)

A felügyelt SecureString adatok tartalmát nem felügyelt memóriába másolja, és a másolás során ANSI-formátumba konvertálja.

SecureStringToGlobalAllocUnicode(SecureString)

Egy felügyelt SecureString objektum tartalmának másolása nem felügyelt memóriába.

SetComObjectData(Object, Object, Object)

A megadott COM-objektumban megadott kulcs által hivatkozott adatokat állítja be.

SetLastPInvokeError(Int32)

Beállítja az aktuális szál utolsó platformhívási hibáját.

SetLastSystemError(Int32)

Az aktuális szál utolsó rendszerhibájának beállítása.

SizeOf(Object)
Elavult.

Egy objektum nem felügyelt méretét adja vissza bájtban.

SizeOf(Type)
Elavult.

Egy nem felügyelt típus méretét adja vissza bájtban.

SizeOf<T>()

Egy nem felügyelt típus méretét adja vissza bájtban.

SizeOf<T>(T)

Egy megadott típusú objektum nem felügyelt méretét adja vissza bájtban.

StringToBSTR(String)

Lefoglal egy BSTR-t , és bemásolja a felügyeltek String tartalmát.

StringToCoTaskMemAnsi(String)

A felügyelt String tartalom másolása a nem felügyelt COM-feladatelosztóból lefoglalt memóriablokkba.

StringToCoTaskMemAuto(String)

A felügyelt String tartalom másolása a nem felügyelt COM-feladatelosztóból lefoglalt memóriablokkba.

StringToCoTaskMemUni(String)

A felügyelt String tartalom másolása a nem felügyelt COM-feladatelosztóból lefoglalt memóriablokkba.

StringToCoTaskMemUTF8(String)

A felügyelt String tartalom másolása a nem felügyelt COM-feladatelosztóból lefoglalt memóriablokkba.

StringToHGlobalAnsi(String)

A felügyelt String adatok tartalmát nem felügyelt memóriába másolja, és a másolás során ANSI-formátumba konvertálja.

StringToHGlobalAuto(String)

A felügyelt String adatok tartalmát nem felügyelt memóriába másolja, szükség esetén ANSI-formátumba alakítva.

StringToHGlobalUni(String)

Egy felügyelt String tartalom másolása nem felügyelt memóriába.

StructureToPtr(Object, IntPtr, Boolean)
Elavult.

Egy felügyelt objektum adatait egy nem felügyelt memóriablokkba ássa.

StructureToPtr<T>(T, IntPtr, Boolean)

Egy megadott típusú felügyelt objektum adatait egy nem felügyelt memóriablokkba adhatja át.

ThrowExceptionForHR(Int32, Guid, IntPtr)

Metódusok gyűjteménye a nem felügyelt memória kiosztásához, a nem felügyelt memóriablokkok másolásához és a felügyelt típusokká való konvertáláshoz, valamint a nem felügyelt kódokkal való interakcióhoz használt egyéb egyéb módszerekhez.

ThrowExceptionForHR(Int32, IntPtr)

A megadott IErrorInfo felület alapján kivételt jelez egy adott HRESULT hibával.

ThrowExceptionForHR(Int32)

Kivételt jelez egy adott hiba HRESULT értékével.

UnsafeAddrOfPinnedArrayElement(Array, Int32)
Elavult.

Lekéri az elem címét a megadott indexben a megadott tömbön belül.

UnsafeAddrOfPinnedArrayElement<T>(T[], Int32)

Lekéri az elem címét a megadott indexben egy megadott típusú tömbben.

WriteByte(IntPtr, Byte)

Egyetlen bájtértéket ír a nem felügyelt memóriába.

WriteByte(IntPtr, Int32, Byte)

Egyetlen bájtértéket ír a nem felügyelt memóriába egy megadott eltolásnál.

WriteByte(Object, Int32, Byte)
Elavult.

Egyetlen bájtértéket ír a nem felügyelt memóriába egy megadott eltolásnál.

WriteInt16(IntPtr, Char)

Egy karaktert 16 bites egész számként ír a nem felügyelt memóriába.

WriteInt16(IntPtr, Int16)

16 bites egész számot ír a nem felügyelt memóriába.

WriteInt16(IntPtr, Int32, Char)

Egy 16 bites aláírt egész számot ír a nem felügyelt memóriába egy megadott eltoláskor.

WriteInt16(IntPtr, Int32, Int16)

Egy 16 bites aláírt egész számot ír egy nem felügyelt memóriába egy megadott eltoláskor.

WriteInt16(Object, Int32, Char)
Elavult.

Egy 16 bites aláírt egész számot ír a nem felügyelt memóriába egy megadott eltoláskor.

WriteInt16(Object, Int32, Int16)
Elavult.

Egy 16 bites aláírt egész számot ír a nem felügyelt memóriába egy megadott eltoláskor.

WriteInt32(IntPtr, Int32, Int32)

Egy 32 bites aláírt egész számot ír egy nem felügyelt memóriába egy megadott eltoláskor.

WriteInt32(IntPtr, Int32)

32 bites aláírt egész számot ír a nem felügyelt memóriába.

WriteInt32(Object, Int32, Int32)
Elavult.

Egy 32 bites aláírt egész számot ír a nem felügyelt memóriába egy megadott eltoláskor.

WriteInt64(IntPtr, Int32, Int64)

Egy 64 bites aláírt egész számot ír a nem felügyelt memóriába egy megadott eltoláskor.

WriteInt64(IntPtr, Int64)

64 bites aláírt egész számot ír a nem felügyelt memóriába.

WriteInt64(Object, Int32, Int64)
Elavult.

Egy 64 bites aláírt egész számot ír a nem felügyelt memóriába egy megadott eltoláskor.

WriteIntPtr(IntPtr, Int32, IntPtr)

Egy processzor natív méretű egész számértéket ír a nem felügyelt memóriába egy megadott eltoláskor.

WriteIntPtr(IntPtr, IntPtr)

Processzor natív méretű egész számértéket ír nem felügyelt memóriába.

WriteIntPtr(Object, Int32, IntPtr)
Elavult.

A processzor natív méretű egész számértékének írása nem felügyelt memóriába.

ZeroFreeBSTR(IntPtr)

Felszabadít egy , a metódussal lefoglalt BSTR-mutatót SecureStringToBSTR(SecureString) .

ZeroFreeCoTaskMemAnsi(IntPtr)

Felszabadít egy nem felügyelt sztringmutatót, amely a SecureStringToCoTaskMemAnsi(SecureString) metódussal lett lefoglalva.

ZeroFreeCoTaskMemUnicode(IntPtr)

Felszabadít egy nem felügyelt sztringmutatót, amely a SecureStringToCoTaskMemUnicode(SecureString) metódussal lett lefoglalva.

ZeroFreeCoTaskMemUTF8(IntPtr)

Felszabadít egy nem felügyelt sztringmutatót, amely a StringToCoTaskMemUTF8(String) metódussal lett lefoglalva.

ZeroFreeGlobalAllocAnsi(IntPtr)

Felszabadít egy nem felügyelt sztringmutatót, amely a SecureStringToGlobalAllocAnsi(SecureString) metódussal lett lefoglalva.

ZeroFreeGlobalAllocUnicode(IntPtr)

Felszabadít egy nem felügyelt sztringmutatót, amely a SecureStringToGlobalAllocUnicode(SecureString) metódussal lett lefoglalva.

A következőre érvényes: