Freigeben über


Marshal.StringToCoTaskMemAnsi-Methode: (String)

 

Veröffentlicht: Oktober 2016

Kopiert den Inhalt eines verwalteten String in einen Speicherblock, der von der nicht verwalteten Speicherbelegung für COM-Aufgaben reserviert wurde.

Namespace:   System.Runtime.InteropServices
Assembly:  mscorlib (in mscorlib.dll)

Syntax

[SecurityCriticalAttribute]
public static IntPtr StringToCoTaskMemAnsi(
    string s
)
public:
[SecurityCriticalAttribute]
static IntPtr StringToCoTaskMemAnsi(
    String^ s
)
[<SecurityCriticalAttribute>]
static member StringToCoTaskMemAnsi : 
        s:string -> nativeint
<SecurityCriticalAttribute>
Public Shared Function StringToCoTaskMemAnsi (
    s As String
) As IntPtr

Parameter

  • s
    Type: System.String

    Eine zu kopierende verwaltete Zeichenfolge.

Rückgabewert

Type: System.IntPtr

Eine ganze Zahl, die einen Zeiger auf den für die Zeichenfolge belegten Speicherblock darstellt, oder 0, wenn s gleich null ist.

Ausnahmen

Exception Condition
OutOfMemoryException

Es ist nicht genügend Arbeitsspeicher verfügbar.

ArgumentOutOfRangeException

Die s Parameter überschreitet die maximale Länge vom Betriebssystem.

Hinweise

StringToCoTaskMemAnsi ist hilfreich beim benutzerdefinierten Marshalling und beim Kombinieren von verwaltetem und nicht verwaltetem Code. Da diese Methode den nicht verwalteten Speicher für eine Zeichenfolge erforderlich belegt wird, müssen Sie den Speicher immer freigeben, durch Aufrufen von FreeCoTaskMem. Diese Methode stellt die Umkehrfunktionen der Marshal.PtrToStringAnsi. Die Zeichen der Zeichenfolge werden als ANSI-Zeichen kopiert.

Sicherheit

SecurityCriticalAttribute

requires full trust for the immediate caller. This member cannot be used by partially trusted or transparent code.

Versionsinformationen

Universelle Windows-Plattform
Verfügbar seit 8
.NET Framework
Verfügbar seit 1.1
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Windows Phone
Verfügbar seit 8.1

Siehe auch

FreeCoTaskMem
PtrToStringAnsi
Marshal-Klasse
System.Runtime.InteropServices-Namespace

Zurück zum Anfang