WsAlloc-Funktion (webservices.h)

Ordnet ein Segment des Arbeitsspeichers aus dem angegebenen Heap zu.

Syntax

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

Parameter

[in] heap

Zeiger auf eine WS_HEAP Struktur, die den Heap darstellt, aus dem der Speicher zugeordnet werden soll.

[in] size

Die Anzahl der zu belegenden Bytes. Dieser Wert kann auch 0 sein.

ptr

Bei Erfolg ein Zeiger, der die Adresse des zugeordneten Arbeitsspeichers empfängt. Dieser Zeiger ist gültig, bis WsFreeHeap oder WsResetHeap auf dem Heap aufgerufen wird.

Der zurückgegebene Zeiger wird an einer 8-Byte-Grenze ausgerichtet.

Null-Bytezuordnungen geben einen Zeiger ohne NULL zurück.

[in, optional] error

Zeiger auf eine WS_ERROR-Struktur , die zusätzliche Fehlerinformationen empfängt, wenn die Funktion fehlschlägt.

Rückgabewert

Wenn die Funktion erfolgreich ist, wird NO_ERROR zurückgegeben. Andernfalls wird ein HRESULT-Fehlercode zurückgegeben.

Rückgabecode Beschreibung
WS_E_QUOTA_EXCEEDED
Die angeforderten Bytes überschreiten zusätzlich zu bereits zugeordneten Bytes die Größe des Heaps, wie durch die WS_HEAP_PROPERTY_MAX_SIZE-Eigenschaft angegeben.
E_OUTOFMEMORY
Unzureichender Arbeitsspeicher, um den Vorgang abzuschließen.

Hinweise

Der von dieser Funktion zurückgegebene Arbeitsspeicher ist nicht null initialisiert und enthält nicht definierte Werte.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 7 [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 R2 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile webservices.h
Bibliothek WebServices.lib
DLL WebServices.dll