Share via


CStringT::AllocSysString

Asigna una cadena de Automatización-compatible de tipo BSTR y copia el contenido del objeto de CStringT en él, incluido el carácter null de terminación.

BSTR AllocSysString() const;

Valor devuelto

La cadena recién asignada.

Comentarios

En programas MFC, se produce CMemoryException (Clase) si existe memoria insuficiente. En programas ATL, se produce CAtlException . esta función se utiliza normalmente para devolver las cadenas para la automatización.

Normalmente, si esta cadena se pasa a una función COM como [in] parámetro, después se requiere que el llamador liberar la cadena. Puede hacerlo con SysFreeString, como se describe en Windows SDK. Para obtener más información, vea Allocating and Releasing Memory for a BSTR.

Para obtener más información sobre las funciones de asignación VIEJAS en Windows, vea SysAllocString en Windows SDK.

Ejemplo

El siguiente ejemplo muestra el uso de CStringT::AllocSysString.

// typedef CStringT<TCHAR, StrTraitATL<TCHAR, ChTraitsCRT<TCHAR>>> CAtlString;
CAtlString str(_T("This is a test string!"));
BSTR bstr = str.AllocSysString();

// bstr now contains "This is a test string!", and can be
// passed to any OLE function requiring a BSTR. 
// Normally, if you pass the BSTR, you will 
// need to free the string after returning from the function call.   

Requisitos

encabezado: cstringt.h

Vea también

Referencia

CStringT Class