Marshal.StringToCoTaskMemAuto-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 StringToCoTaskMemAuto(
string s
)
public:
[SecurityCriticalAttribute]
static IntPtr StringToCoTaskMemAuto(
String^ s
)
[<SecurityCriticalAttribute>]
static member StringToCoTaskMemAuto :
s:string -> nativeint
<SecurityCriticalAttribute>
Public Shared Function StringToCoTaskMemAuto (
s As String
) As IntPtr
Parameter
s
Type: System.StringEine zu kopierende verwaltete Zeichenfolge.
Rückgabewert
Type: System.IntPtr
Der reservierte Speicherblock oder 0, wenn s gleich null ist.
Ausnahmen
Exception | Condition |
---|---|
OutOfMemoryException | Es ist nicht genügend Arbeitsspeicher verfügbar. |
ArgumentOutOfRangeException | Die Länge für s liegt außerhalb des Bereichs. |
Hinweise
StringToCoTaskMemAuto eignet sich für die benutzerdefinierten Marshalling oder 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.PtrToStringAuto.
Die Zeichen der Zeichenfolge werden als ANSI oder Unicode-Zeichen, je nach Betriebssystem kopiert, in dem der Code ausgeführt wird. Unter Windows 98 werden die Zeichen als ANSI-Zeichen kopiert. Unter Windows NT 4.0, Windows 2000, Windows XP und Windows Server 2003-Produktfamilie werden die Zeichen als Unicode-Zeichen kopiert.
Sicherheit
requires full trust for the immediate caller. This member cannot be used by partially trusted or transparent code.
Versionsinformationen
.NET Framework
Verfügbar seit 1.1
Siehe auch
PtrToStringAuto
Marshal-Klasse
System.Runtime.InteropServices-Namespace
Zurück zum Anfang