Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Kopiert den Inhalt eines verwalteten String in einen Speicherblock, der von der nicht verwalteten Speicherreservierung für COM-Aufgaben reserviert wurde.
Namespace: System.Runtime.InteropServices
Assembly: mscorlib (in mscorlib.dll)
Syntax
'Declaration
Public Shared Function StringToCoTaskMemAnsi ( _
s As String _
) As IntPtr
'Usage
Dim s As String
Dim returnValue As IntPtr
returnValue = Marshal.StringToCoTaskMemAnsi(s)
public static IntPtr StringToCoTaskMemAnsi (
string s
)
public:
static IntPtr StringToCoTaskMemAnsi (
String^ s
)
public static IntPtr StringToCoTaskMemAnsi (
String s
)
public static function StringToCoTaskMemAnsi (
s : String
) : IntPtr
Parameter
- s
Eine zu kopierende verwaltete Zeichenfolge.
Rückgabewert
Eine ganze Zahl, die einen Zeiger auf den für die Zeichenfolge reservierten Speicherblock darstellt, oder 0 (null), wenn eine NULL-Zeichenfolge bereitgestellt wurde.
Ausnahmen
| Ausnahmetyp | Bedingung |
|---|---|
Es ist nicht genügend Speicherplatz vorhanden. |
|
Der s-Parameter übersteigt die vom Betriebssystem zugelassene maximale Länge. |
Hinweise
StringToCoTaskMemAnsi ist hilfreich beim benutzerdefinierten Marshalling und beim Kombinieren von verwaltetem und nicht verwaltetem Code. Da diese Methode den erforderlichen nicht verwalteten Speicher für eine Zeichenfolge reserviert, müssen Sie den Speicher immer freigeben, indem Sie FreeCoTaskMem aufrufen. Diese Methode stellt die Umkehrfunktion von Marshal.PtrToStringAnsi bereit. Die Zeichen der Zeichenfolge werden als ANSI-Zeichen kopiert.
Hinweis
Diese Methode verwendet SecurityAction.LinkDemand, um einen Aufruf aus nicht vertrauenswürdigem Code zu verhindern. Nur der direkte Aufrufer muss über die SecurityPermissionAttribute.UnmanagedCode-Berechtigung verfügen. Wenn der Code aus teilweise vertrauenswürdigem Code aufgerufen werden kann, dürfen Benutzereingaben nicht ohne Validierung an Methoden der Marshal-Klasse übergeben werden. Wichtige Einschränkungen bei der Verwendung des LinkDemand-Members finden Sie unter "Demand" und "LinkDemand".
.NET Framework-Sicherheit
- SecurityPermission für die Berechtigung zum Aufrufen von nicht verwaltetem Code. Zugeordnete Enumeration: UnmanagedCode Sicherheitsaktion: LinkDemand
Plattformen
Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
Siehe auch
Referenz
Marshal-Klasse
Marshal-Member
System.Runtime.InteropServices-Namespace
FreeCoTaskMem
PtrToStringAnsi