Share via


Funzione WsAlloc (webservices.h)

Alloca un segmento di memoria dall'heap specificato.

Sintassi

HRESULT WsAlloc(
  [in]           WS_HEAP  *heap,
  [in]           SIZE_T   size,
                 void     **ptr,
  [in, optional] WS_ERROR *error
);

Parametri

[in] heap

Puntatore a una struttura WS_HEAP che rappresenta l'heap da cui allocare la memoria.

[in] size

Numero di byte da allocare. Il valore può essere zero.

ptr

In caso di esito positivo, un puntatore che riceve l'indirizzo della memoria allocata. Questo puntatore è valido finché non viene chiamato WsFreeHeap o WsResetHeapnell'heap.

Il puntatore restituito è allineato su un limite di 8 byte.

Le allocazioni di byte zero restituiranno un puntatore non NULL.

[in, optional] error

Puntatore a una struttura WS_ERROR che riceve informazioni aggiuntive sull'errore se la funzione ha esito negativo.

Valore restituito

Se la funzione ha esito positivo, restituisce NO_ERROR; in caso contrario, restituisce un codice di errore HRESULT.

Codice restituito Descrizione
WS_E_QUOTA_EXCEEDED
I byte richiesti, oltre ai byte già allocati, superano le dimensioni dell'heap, come specificato dalla proprietà WS_HEAP_PROPERTY_MAX_SIZE .
E_OUTOFMEMORY
Memoria insufficiente per completare l'operazione.

Commenti

La memoria restituita da questa funzione non è inizializzata zero e contiene valori non definiti.

Requisiti

Requisito Valore
Client minimo supportato Windows 7 [app desktop | App UWP]
Server minimo supportato Windows Server 2008 R2 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione webservices.h
Libreria WebServices.lib
DLL WebServices.dll