SysAllocStringByteLen
9/8/2008
Essa função leva um seqüência ANSI como entrada e retorna um seqüência de caracteres alocado. Essa função não executar ANSI para Unicode tradução. É válido somente para 32-bit sistemas.
Syntax
BSTR SysAllocStringByteLen(
char FAR* psz,
unsigned int len
);
Parameters
- psz
[no] Seqüência de caracteres NULL-Terminated para copiar, ou NULL para manter o não inicializado seqüência de caracteres.
- Len
[no] Número de bytes para copiar a partir psz. Um NULL caractere é colocado posteriormente, alocar um total de Len+ 1 bytes.
Return Value
Retorna o seqüência de caracteres alocado para indicar êxito, ou NULL para indicar que existe memória suficiente.
Remarks
Essa função é fornecida para criar seqüências de caracteres que contêm dados binários. Você pode usar esse tipo de seqüência de caracteres somente em situações onde ele será não convertido de ANSI para Unicode, ou vice-versa.
De exemplo, não use essas seqüências de caracteres entre uma 16 - bit aplicativo e um 32 - bit aplicativo execução em um 32-bit sistema Windows. O OLE 16 - bit para 32 - bit (e 32 - bit para 16 - bit) interoperabilidade camada Converte a seqüência de caracteres e corrompe a dados binários.
O método preferencial de passagem dados binários é usar um SafeArray De VT_UI1, que não é convertido por OLE.
Se psz é NULL, um seqüência de caracteres o comprimento solicitado está alocado, mas não inicializado.
O seqüência de caracteres designado por psz Pode conter incorporado NULL caracteres e não precisa terminar com um NULL.
Liberar o seqüência de caracteres retornado posteriormente com SysFreeString.
Passagem inválido (e, em algumas circunstâncias NULL) ponteiros para essa função faz com que uma terminação inesperada do aplicativo.
Requirements
Header | oleauto.h |
Library | oleaut32.lib |
Windows Embedded CE | Windows CE 2.0 and later |
Windows Mobile | Windows Mobile Version 5.0 and later |