Méthode IDirectDraw7 ::EnumSurfaces (ddraw.h)
Énumère toutes les surfaces existantes ou possibles qui répondent à la description de surface spécifiée.
Syntaxe
HRESULT EnumSurfaces(
[in] DWORD unnamedParam1,
[in] LPDDSURFACEDESC2 unnamedParam2,
[in] LPVOID unnamedParam3,
[in] LPDDENUMSURFACESCALLBACK7 unnamedParam4
);
Paramètres
[in] unnamedParam1
Combinaison d’un indicateur de type de recherche et d’un indicateur correspondant. L’indicateur de type de recherche détermine la façon dont la méthode recherche des surfaces correspondantes ; vous pouvez rechercher des surfaces qui peuvent être créées à l’aide de la description dans le paramètre lpDDSD2 ou des surfaces existantes qui correspondent déjà à cette description. L’indicateur de correspondance détermine si la méthode énumère toutes les surfaces, uniquement celles qui correspondent ou uniquement celles qui ne correspondent pas à la description dans le paramètre lpDDSD2 .
Indicateurs de type de recherche
DDENUMSURFACES_CANBECREATED
Énumère la première surface qui peut être créée et répond au critère de recherche. Cet indicateur ne peut être utilisé qu’avec l’indicateur DDENUMSURFACES_MATCH.
DDENUMSURFACES_DOESEXIST
Énumère les surfaces déjà existantes qui répondent au critère de recherche.
Indicateurs de correspondance
DDENUMSURFACES_ALL
Énumère toutes les surfaces qui répondent au critère de recherche. Cet indicateur ne peut être utilisé qu’avec l’indicateur de type de recherche DDENUMSURFACES_DOESEXIST.
DDENUMSURFACES_MATCH
Recherche une surface qui correspond à la description de la surface.
DDENUMSURFACES_NOMATCH
Recherche toute surface qui ne correspond pas à la description de la surface.
[in] unnamedParam2
Adresse d’une structure DDSURFACEDESC2 qui définit la surface d’intérêt. Ce paramètre peut être NULL si dwFlags inclut l’indicateur DDENUMSURFACES_ALL.
[in] unnamedParam3
Adresse d’une structure définie par l’application à passer à chaque membre d’énumération.
[in] unnamedParam4
Adresse de la fonction EnumSurfacesCallback7 que la procédure d’énumération appelle chaque fois qu’une correspondance est trouvée.
Valeur retournée
Si la méthode réussit, la valeur de retour est DD_OK.
En cas d’échec, la méthode peut retourner l’une des valeurs d’erreur suivantes :
- DDERR_INVALIDOBJECT
- DDERR_INVALIDPARAMS
Remarques
Si l’indicateur DDENUMSURFACES_CANBECREATED est défini, cette méthode tente de créer temporairement une surface qui répond au critère de recherche.
Lorsque vous utilisez l’indicateur DDENUMSURFACES_DOESEXIST, le nombre de références d’une surface énumérée est incrémenté. Si vous ne comptez pas utiliser la surface, veillez à utiliser IDirectDrawSurface7 ::Release pour la libérer après chaque énumération. Si vous utilisez la surface, relâchez-la lorsqu’elle n’est plus nécessaire.
Cette méthode diffère de ses équivalents dans les versions d’interface précédentes en ce qu’elle accepte un pointeur vers une fonction EnumSurfacesCallback7 , plutôt qu’une fonction EnumSurfacesCallback ou EnumSurfacesCallback2 .
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Windows |
En-tête | ddraw.h |
Bibliothèque | Ddraw.lib |
DLL | Ddraw.dll |
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour