IByteBuffer::SetSize, méthode
[La méthode SetSize peut être utilisée dans les systèmes d’exploitation spécifiés dans la section Configuration requise. Il n’est pas disponible pour une utilisation dans Windows Server 2003 avec Service Pack 1 (SP1) et versions ultérieures, Windows Vista, Windows Server 2008 et les versions ultérieures du système d’exploitation. L’interface IStream fournit des fonctionnalités similaires.]
La méthode SetSize modifie la taille de l’objet de flux.
Syntaxe
HRESULT SetSize(
[in] LONG libNewSize
);
Paramètres
-
libNewSize [in]
-
Nouvelle taille du flux en nombre d’octets
Valeur retournée
La valeur de retour est un HRESULT. La valeur S_OK indique que l’appel a réussi.
Notes
La méthode IByteBuffer::SetSize modifie la taille de l’objet de flux. Appelez cette méthode pour préallouer l’espace pour le flux. Si le paramètre libNewSize est supérieur à la taille actuelle du flux, le flux est étendu à la taille indiquée en remplissant l’espace intermédiaire avec des octets de valeur non définie. Cette opération est similaire à la méthode IByteBuffer::Write si le pointeur de recherche dépasse la fin du flux actuel.
Si le paramètre libNewSize est plus petit que le flux actuel, le flux est tronqué à la taille indiquée.
Le pointeur de recherche n’est pas affecté par la modification de la taille du flux.
L’appel de IByteBuffer::SetSize peut être un moyen efficace d’obtenir un grand segment d’espace contigu.
Exemples
L’exemple suivant montre comment définir la taille de la mémoire tampon.
LONG lNewSize = 256;
HRESULT hr;
// Change the buffer size.
hr = pIByteBuff->SetSize(lNewSize);
if (FAILED(hr))
printf("Failed IByteBuffer::SetSize\n");
Spécifications
Condition requise | Valeur |
---|---|
Client minimal pris en charge |
Windows XP [applications de bureau uniquement] |
Serveur minimal pris en charge |
Windows Server 2003 [applications de bureau uniquement] |
Fin de la prise en charge des clients |
Windows XP |
Fin de la prise en charge des serveurs |
Windows Server 2003 |
En-tête |
|
Bibliothèque de types |
|
DLL |
|
IID |
IID_IByteBuffer est défini comme E126F8FE-A7AF-11D0-B88A-00C04FD424B9 |