Méthode IKsPropertySet::Get
[La fonctionnalité associée à cette page, DirectShow, est une fonctionnalité héritée. Il a été remplacé par MediaPlayer, IMFMediaEngine et Audio/Video Capture dans Media Foundation. Ces fonctionnalités ont été optimisées pour Windows 10 et Windows 11. Microsoft recommande vivement au nouveau code d’utiliser MediaPlayer, IMFMediaEngine et La capture audio/vidéo dans Media Foundation au lieu de DirectShow, lorsque cela est possible. Microsoft suggère que le code existant qui utilise les API héritées soit réécrit pour utiliser les nouvelles API si possible.]
La méthode Get récupère une propriété identifiée par un GUID de jeu de propriétés et un ID de propriété.
Syntaxe
HRESULT Get(
[in] REFGUID guidPropSet,
[in] DWORD dwPropID,
[in] LPVOID pInstanceData,
[in] DWORD cbInstanceData,
[out] LPVOID pPropData,
[in] DWORD cbPropData,
[out] DWORD *pcbReturned
);
Paramètres
-
guidPropSet [in]
-
GUID du jeu de propriétés .
-
dwPropID [in]
-
Identificateur de la propriété dans le jeu de propriétés.
-
pInstanceData [in]
-
Pointeur vers un tableau d’octets qui contient instance données pour la propriété .
-
cbInstanceData [in]
-
Taille du tableau donné dans pInstanceData, en octets.
-
pPropData [out]
-
Pointeur vers un tableau d’octets qui reçoit les données de propriété.
-
cbPropData [in]
-
Taille du tableau donné dans pPropData, en octets.
-
pcbReturned [out]
-
Reçoit le nombre d’octets que la méthode copie dans le tableau pPropData .
Valeur renvoyée
Retourne une valeur HRESULT . Les valeurs possibles sont les suivantes.
Code de retour | Description |
---|---|
|
Opération réussie. |
|
Le jeu de propriétés n’est pas pris en charge. |
|
L’ID de propriété n’est pas pris en charge pour le jeu de propriétés spécifié. |
Notes
Notes
Une autre interface de ce nom existe dans le fichier dsound.h en-tête. Les deux interfaces ne sont pas compatibles. L’interface IKsControl , documentée dans le DDK DirectShow, est désormais l’interface recommandée pour passer des jeux de propriétés entre les pilotes WDM et les composants en mode utilisateur.
Pour récupérer une propriété, allouez une mémoire tampon que cette méthode remplira ensuite. Pour déterminer la taille de mémoire tampon nécessaire, spécifiez NULL pour pPropData et zéro (0) pour cbPropData. Cette méthode retourne la taille de mémoire tampon nécessaire dans pcbReturned.
Vous devez inclure Ks.h avant Ksproxy.h.
Exemples
L’exemple suivant interroge une broche pour sa catégorie de broche en récupérant la propriété AMPROPERTY_PIN_CATEGORY . (Voir Pin Property Set.)
HRESULT GetPinCategory(IPin *pPin, GUID *pPinCategory)
{
IKsPropertySet *pKs = NULL;
HRESULT hr = pPin->QueryInterface(IID_PPV_ARGS(&pKs));
if (FAILED(hr))
{
return hr;
}
// Try to retrieve the pin category.
DWORD cbReturned = 0;
hr = pKs->Get(AMPROPSETID_Pin, AMPROPERTY_PIN_CATEGORY, NULL, 0,
pPinCategory, sizeof(GUID), &cbReturned);
// If this succeeded, pPinCategory now contains the category GUID.
SafeRelease(&pKs);
return hr;
}
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge |
Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge |
Windows 2000 Server [applications de bureau uniquement] |
En-tête |
|
Bibliothèque |
|
Voir aussi