Marshal.PtrToStringUni Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Alloca un oggetto String gestito e vi copia tutta o parte di una stringa Unicode non gestita.
Overload
PtrToStringUni(IntPtr) |
Alloca un oggetto String gestito e vi copia tutti i caratteri fino al primo carattere Null da una stringa Unicode non gestita. |
PtrToStringUni(IntPtr, Int32) |
Alloca un oggetto String gestito e vi copia un numero di caratteri specificato da una stringa Unicode non gestita. |
PtrToStringUni(IntPtr)
- Origine:
- Marshal.cs
- Origine:
- Marshal.cs
- Origine:
- Marshal.cs
Alloca un oggetto String gestito e vi copia tutti i caratteri fino al primo carattere Null da una stringa Unicode non gestita.
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
Parametri
- ptr
-
IntPtr
nativeint
L'indirizzo del primo carattere della stringa non gestita.
Restituisce
Stringa gestita che contiene una copia della stringa non gestita se il valore del parametro ptr
non è null
; in caso contrario, questo metodo restituisce null
.
- Attributi
Commenti
PtrToStringUni è utile per il marshalling personalizzato o per l'uso durante la combinazione di codice gestito e non gestito. Poiché questo metodo crea una copia del contenuto della stringa non gestita, è necessario liberare la stringa originale in base alle esigenze. Questo metodo fornisce la funzionalità opposta dei Marshal.StringToCoTaskMemUni metodi e Marshal.StringToHGlobalUni .
Questa API riflette la definizione di Windows di Unicode, ovvero una codifica UTF-16 a 2 byte. In molte piattaforme non Windows, il wchar_t
tipo di dati è di 4 byte, non di 2 byte. Consultare il compilatore per verificare se wchar_t
è possibile usare o char16_t
usare invece .
Vedi anche
Si applica a
PtrToStringUni(IntPtr, Int32)
- Origine:
- Marshal.cs
- Origine:
- Marshal.cs
- Origine:
- Marshal.cs
Alloca un oggetto String gestito e vi copia un numero di caratteri specificato da una stringa Unicode non gestita.
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
Parametri
- ptr
-
IntPtr
nativeint
L'indirizzo del primo carattere della stringa non gestita.
- len
- Int32
Numero di caratteri Unicode da copiare.
Restituisce
Stringa gestita che contiene una copia della stringa non gestita se il valore del parametro ptr
non è null
; in caso contrario, questo metodo restituisce null
.
- Attributi
Commenti
PtrToStringUni è utile per il marshalling personalizzato o quando si combina codice gestito e non gestito. Poiché questo metodo crea una copia del contenuto della stringa non gestita, è necessario liberare la stringa originale in base alle esigenze. Questo metodo fornisce la funzionalità opposta dei Marshal.StringToCoTaskMemUni metodi e Marshal.StringToHGlobalUni .
Questa API riflette la definizione di Windows di Unicode, ovvero una codifica UTF-16 a 2 byte. In molte piattaforme non Windows, il wchar_t
tipo di dati è di 4 byte, non di 2 byte. Consultare il compilatore per verificare se wchar_t
è possibile usare o char16_t
usare invece .