Marshal.PtrToStringUni Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Alloue un String managé afin d'y copier la totalité ou une partie d'une chaîne Unicode non managée.
Surcharges
PtrToStringUni(IntPtr) |
Alloue un objet String managé et copie tous les caractères - jusqu'au premier caractère null - d'une chaîne Unicode non managée dans cet objet. |
PtrToStringUni(IntPtr, Int32) |
Alloue un objet String managé et copie un nombre spécifié de caractères d'une chaîne Unicode non managée dans cet objet. |
PtrToStringUni(IntPtr)
- Source:
- Marshal.cs
- Source:
- Marshal.cs
- Source:
- Marshal.cs
Alloue un objet String managé et copie tous les caractères - jusqu'au premier caractère null - d'une chaîne Unicode non managée dans cet objet.
public:
static System::String ^ PtrToStringUni(IntPtr ptr);
[System.Security.SecurityCritical]
public static string PtrToStringUni (IntPtr ptr);
public static string? PtrToStringUni (IntPtr ptr);
public static string PtrToStringUni (IntPtr ptr);
[<System.Security.SecurityCritical>]
static member PtrToStringUni : nativeint -> string
static member PtrToStringUni : nativeint -> string
Public Shared Function PtrToStringUni (ptr As IntPtr) As String
Paramètres
- ptr
-
IntPtr
nativeint
Adresse du premier caractère de la chaîne non managée.
Retours
Chaîne managée qui contient une copie de la chaîne non managée si la valeur du paramètre ptr
n’est pas null
; sinon, cette méthode retourne null
.
- Attributs
Remarques
PtrToStringUni est utile pour le marshaling personnalisé ou pour une utilisation lors de la combinaison de code managé et non managé. Étant donné que cette méthode crée une copie du contenu de la chaîne non managée, vous devez libérer la chaîne d’origine comme il convient. Cette méthode fournit les fonctionnalités opposées des Marshal.StringToCoTaskMemUni méthodes et .Marshal.StringToHGlobalUni
Cette API reflète la définition Windows d’Unicode, qui est un encodage de 2 octets UTF-16. Sur de nombreuses plateformes non-Windows, le wchar_t
type de données est de 4 octets, et non de 2 octets. Consultez votre compilateur pour vérifier si wchar_t
peut être utilisé ou char16_t
doit être utilisé à la place.
Voir aussi
S’applique à
PtrToStringUni(IntPtr, Int32)
- Source:
- Marshal.cs
- Source:
- Marshal.cs
- Source:
- Marshal.cs
Alloue un objet String managé et copie un nombre spécifié de caractères d'une chaîne Unicode non managée dans cet objet.
public:
static System::String ^ PtrToStringUni(IntPtr ptr, int len);
[System.Security.SecurityCritical]
public static string PtrToStringUni (IntPtr ptr, int len);
public static string PtrToStringUni (IntPtr ptr, int len);
[<System.Security.SecurityCritical>]
static member PtrToStringUni : nativeint * int -> string
static member PtrToStringUni : nativeint * int -> string
Public Shared Function PtrToStringUni (ptr As IntPtr, len As Integer) As String
Paramètres
- ptr
-
IntPtr
nativeint
Adresse du premier caractère de la chaîne non managée.
- len
- Int32
Nombre de caractères Unicode à copier.
Retours
Chaîne managée qui contient une copie de la chaîne non managée si la valeur du paramètre ptr
n’est pas null
; sinon, cette méthode retourne null
.
- Attributs
Remarques
PtrToStringUni est utile pour le marshaling personnalisé ou lors de la combinaison de code managé et non managé. Étant donné que cette méthode crée une copie du contenu de la chaîne non managée, vous devez libérer la chaîne d’origine comme il convient. Cette méthode fournit les fonctionnalités opposées des Marshal.StringToCoTaskMemUni méthodes et .Marshal.StringToHGlobalUni
Cette API reflète la définition Windows d’Unicode, qui est un encodage de 2 octets UTF-16. Sur de nombreuses plateformes non-Windows, le wchar_t
type de données est de 4 octets, et non de 2 octets. Consultez votre compilateur pour vérifier si wchar_t
peut être utilisé ou char16_t
doit être utilisé à la place.