Compartilhar via


LocalAlloc

Windows Mobile SupportedWindows Embedded CE Supported

9/8/2008

Essa função aloca o número especificado de bytes a partir de heap.

No ambiente de linear Windows Embedded CE API, não há nenhuma diferença entre o local heap e o heap global. LocalAlloc é equivalente a HeapAlloc (GetProcessHeap, …).

Syntax

HLOCAL LocalAlloc(
  UINT uFlags,
  UINT uBytes
);

Parameters

  • uFlags
    [no] Especifica como alocar memória. Se zero for especificado, o usar como padrão será o sinalizador LMEM_FIXED. A seguinte tabela mostra os valores possíveis.

    Valor Descrição

    LMEM_FIXED

    Aloca memória fixa. O valor de retorno é um ponteiro para o objeto memória.

    LMEM_ZEROINIT

    Inicializa conteúdo memória para zero.

    LPTR

    Combina os sinalizadores LMEM_FIXED e LMEM_ZEROINIT.

  • uBytes
    [no] Especifica o número de bytes para alocar.

Return Value

Um identificador para o objeto recém-alocado memória indica sucesso. NULL Indica falha. Para informações de erro estendidas get, chamar GetLastError.

Remarks

Se o heap não contiver espaço livre suficientes para satisfazer a solicitação, LocalAlloc retorna NULL. Como NULL é usado para indicar um erro, endereço virtual zero é nunca alocado. Portanto, é fácil detecção o uso de uma NULL ponteiro.

Se essa função for bem-sucedido, ele aloca menos a quantidade solicitada. Se a quantidade alocada for maior do que a quantidade solicitada, o processo poderá usar a quantidade inteira.

Para determinar o número de bytes alocados, use a função LocalSize.

A livre de memória, use a função LocalFree.

Para Windows Embedded CE heap versões 1.0 e 1.01, o local para cada processo não pode exceder 1 MB. No entanto, um processo pode criar múltiplo pilhas usando a função HeapCreate e cada heap pode ser até 1 MB.

Para Windows Embedded CE versões 1.0 a 2.12, Alocando memória cerca de 0 a 7 bytes em 192K no tamanho faz com que o correspondente chamar para LocalFree Para falhar para determinados memória bloqueia no intervalo tamanho. O código de retorno é ERROR_INVALID_PARAMETER.

Requirements

Header winbase.h
Library coredll.lib
Windows Embedded CE Windows CE 1.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also

Reference

Memory Management Functions
HeapCreate
LocalFree
LocalReAlloc
LocalSize