IBuffer Interface
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Représente un tableau référencé d’octets utilisé par les interfaces de lecture et d’écriture de flux d’octets. La mémoire tampon est l’implémentation de classe de cette interface.
public interface class IBuffer
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.Guid(2421821408, 48211, 4575, 140, 73, 0, 30, 79, 198, 134, 218)]
struct IBuffer
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.Guid(2421821408, 48211, 4575, 140, 73, 0, 30, 79, 198, 134, 218)]
public interface IBuffer
Public Interface IBuffer
- Dérivé
- Attributs
Configuration requise pour Windows
Famille d’appareils |
Windows 10 (introduit dans 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduit dans v1.0)
|
Exemples
Cet exemple de code montre comment récupérer une chaîne à partir d’un IBuffer d’octets UTF-8.
public string RetrieveStringFromUtf8IBuffer(Windows.Storage.Streams.IBuffer theBuffer)
{
using (var dataReader = Windows.Storage.Streams.DataReader.FromBuffer(theBuffer))
{
dataReader.UnicodeEncoding = Windows.Storage.Streams.UnicodeEncoding.Utf8;
return dataReader.ReadString(theBuffer.Length);
}
}
Remarques
Cette interface est utilisée pour redimensionner la mémoire tampon tout en préservant le contenu. Si votre classe C++/WinRT implémente IBuffer
et n’a pas besoin ou ne prend pas en charge le redimensionnement, vous devez lever hresult_not_implemented.
Pour plus d’informations, consultez Créer, écrire et lire un fichier, qui montre comment lire et écrire des octets dans un fichier à l’aide d’une mémoire tampon.
WriteableBitmap.PixelBuffer est un exemple de propriété qui retourne un IBuffer qui ne peut pas être écrit directement dans. Consultez cette rubrique pour obtenir un exemple de code spécifique au langage montrant comment écrire dans le contenu de pixels sous-jacent dans la mémoire tampon.
Fonctions d’extension C++/WinRT
Notes
Des fonctions d’extension existent sur les types de projection C++/WinRT pour certaines API Windows Runtime. Par exemple, winrt::Windows::Foundation::IAsyncAction est le type de projection C++/WinRT pour IAsyncAction. Les fonctions d’extension ne font pas partie de la surface d’interface binaire d’application (ABI) des types Windows Runtime réels. Elles ne sont donc pas répertoriées en tant que membres des API Windows Runtime. Mais vous pouvez les appeler à partir de n’importe quel projet C++/WinRT. Consultez Fonctions C++/WinRT qui étendent Windows Runtime API.
uint8_t* data() const;
Retourne un pointeur vers les données conservées à l’intérieur de la mémoire tampon.
Propriétés
Capacity |
Obtient le nombre maximal d’octets que la mémoire tampon peut contenir. |
Length |
Obtient le nombre d’octets actuellement utilisés dans la mémoire tampon. |