HSTRING

Identificador de una cadena de Windows Runtime.

typedef HSTRING__* HSTRING;

Observaciones

Use HSTRING para representar cadenas inmutables en el Windows Runtime.

JavaScript y otros lenguajes, como C#, y Microsoft Visual Basic, pueden usar cadenas representadas mediante HSTRING. En la tabla siguiente se muestra cómo se representa un HSTRING en otros lenguajes.

Lenguaje de programación Representación de cadena
C++/WinRT Clase winrt::hstring
Extensiones de componentes de Visual C++ (C++/CX) Platform::String (Clase)
JavaScript objeto de cadena
.NET Framework clase System.String

 

El identificador HSTRING es un tipo de identificador estándar. Semánticamente, un HSTRING que contiene el valor NULL representa la cadena vacía, que consta de cero caracteres de contenido y un carácter NULL de terminación. La creación de una cadena a través de WindowsCreateString con cero caracteres generará el valor de identificador NULL. Al llamar a WindowsGetStringRawBuffer con el valor NULL, se devolverá un puntero a una cadena vacía seguida del carácter de terminación NUL . No existe ningún valor distinto para representar un HSTRING que no está inicializado.

Llame a la función WindowsCreateString para crear un nuevo HSTRING y llame a la función WindowsDeleteString para liberar la referencia a la memoria de la cadena de respaldo. Llame a la función WindowsCreateStringReference para crear una referencia de cadena, que también se denomina cadena de paso rápido.

Copie un HSTRING llamando a la función WindowsDuplicateString .

Concatene dos cadenas llamando a la función WindowsConcatString .

Acceda a la memoria de la cadena de respaldo llamando a la función WindowsGetStringRawBuffer .

HSTRING puede almacenar y usar caracteres NUL incrustados. Use la función WindowsStringHasEmbeddedNull para comprobar si hay caracteres NUL incrustados antes de usar cualquier función que pueda producir resultados inesperados. Por ejemplo, la mayoría de las funciones de Windows usan LPCWSTR como parámetro de entrada y calculan la longitud de la cadena solo hasta que se encuentra el primer NUL .

La cadena de respaldo debe permanecer inmutable y terminada en null. Al llamar al código, se crea una referencia de cadena mediante la función WindowsCreateStringReference , la memoria que contiene la representación de cadena de respaldo es propiedad del autor de la llamada. El Windows Runtime se basa en el contenido de la cadena original para permanecer sin cambios. Al pasar una referencia de cadena a la Windows Runtime, es responsabilidad del autor de la llamada asegurarse de que el contenido de la cadena no cambia y nul finaliza durante la llamada. El Windows Runtime libera todas las referencias a la referencia de cadena cuando la llamada devuelve.

Cuando reciba un HSTRING como parámetro out, se recomienda establecer el identificador en NULL cuando haya terminado con él.

Llame a la función WindowsPreallocateStringBuffer para asignar un búfer de cadena mutable que puede usar para crear un HSTRING inmutable. Cuando haya terminado de rellenar el búfer, llame a la función WindowsPromoteStringBuffer para crear el HSTRING. Este patrón de construcción en dos fases permite la funcionalidad similar a un "generador de cadenas".

Requisitos

Requisito Value
Cliente mínimo compatible
Windows 8
Servidor mínimo compatible
Windows Server 2012
Encabezado
Hstring.h

Vea también

WindowsCreateString

WindowsDeleteString

WindowsDuplicateString

WindowsPreallocateStringBuffer