Share via


Méthode ICustomDestinationList ::AddUserTasks (shobjidl_core.h)

Spécifie les éléments à inclure dans la catégorie Tâches d’une liste de raccourcis personnalisée.

Syntaxe

HRESULT AddUserTasks(
  [in] IObjectArray *poa
);

Paramètres

[in] poa

Type : IObjectArray*

Pointeur vers un IObjectArray qui représente un ou plusieurs objets IShellLink (ou, plus rarement, IShellItem) qui représentent les tâches.

Note Tout IShellLink utilisé ici doit déclarer une liste d’arguments via SetArguments. L’ajout d’un objet IShellLink sans argument à une catégorie personnalisée n’est pas pris en charge. Un utilisateur ne peut pas épingler ou détacher ce type d’élément d’une liste de raccourcis, ni l’ajouter ou le supprimer.
 

Valeur retournée

Type : HRESULT

Retourne S_OK en cas de réussite, ou une valeur d’erreur dans le cas contraire.

Remarques

Vous devez appeler ICustomDestinationList ::BeginList avant d’appeler cette méthode.

L’en-tête de catégorie Tâches est toujours affiché dans la liste par défaut, sauf si la catégorie est vide. Impossible de modifier ce texte d’en-tête. Elle s’affiche dans la langue sélectionnée par l’utilisateur.

La catégorie Tâches , même si elle apparaît toujours comme la dernière catégorie d’une liste de raccourcis, est prioritaire sur toutes les autres catégories de la liste. Cette liste est remplie, puis l’espace restant est alloué aux autres catégories. Contrairement à d’autres catégories, les éléments de la catégorie Tâches ne peuvent pas être supprimés ou épinglés par l’utilisateur. Les applications doivent équilibrer la valeur pour l’utilisateur des tâches de cette catégorie par rapport à l’espace nécessaire pour d’autres catégories.

Les tâches doivent s’appliquer à l’application dans son ensemble ; ils ne sont pas destinés à être spécifiques à une fenêtre ou à un document individuel. Pour ces tâches contextuelles plus précises, une application peut les fournir via une barre d’outils de miniatures.

Note Il est vivement recommandé que la liste des tâches soit statique. La liste des tâches doit rester la même quel que soit l’état ou la status de l’application. Ces tâches sont disponibles même lorsque l’application n’est pas en cours d’exécution. Il n’existe aucune interdiction par programmation d’utiliser AddUserTasks pour faire varier la liste des tâches lors de sa mise à jour, mais vous devez considérer que cela peut perturber l’utilisateur qui ne s’attend pas à ce que cette partie de la liste de raccourcis change. Toutefois, si une application choisit de modifier l’état d’une tâche, par exemple « Se connecter » en « Se déconnecter », il incombe à cette application de s’assurer que la liste des tâches est correcte et à jour. En outre, si l’application s’arrête de manière inattendue, la barre des tâches utilise sa dernière version correcte connue de la liste des tâches sans appeler l’application pour en demander une, ce qui entraîne la possibilité d’éléments obsolètes.
 

Les instances IShellLink fournies via iObjectArray pointé par poa doivent fournir les éléments suivants :

Le nom d’affichage doit être défini via la propriété System.Title (PKEY_Title) de l’élément. La propriété peut contenir directement le nom complet ou il peut s’agir d’une représentation sous forme de chaîne indirecte, telle que « @shell32.dll,-1324 », pour utiliser une chaîne stockée. Une chaîne indirecte permet d’afficher le nom de l’élément dans la langue sélectionnée de l’utilisateur.

Si vous le souhaitez, le champ de description (SetDescription) peut être défini pour fournir une info-bulle personnalisée pour l’élément dans la liste de raccourcis.

Une liste de tâches peut également inclure des séparateurs. Ceux-ci sont créés en incluant un IShellLink vide (il s’agit de la seule exception à l’exigence de la liste d’arguments) et en définissant sa propriété System.AppUserModel.IsDestListSeparator sur TRUE via l’interface IPropertyStore de l’objet IShellLink. Toutes les autres valeurs dans IShellLink seront ignorées. Les séparateurs n’occupent pas un espace complet dans la liste et ne sont pas comptés dans le nombre d’éléments de la liste. Si deux séparateurs sont fournis sans élément entre eux, l’un des séparateurs ne s’affiche pas. Les séparateurs au début ou à la fin de la liste sont également ignorés.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 7 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 R2 [applications de bureau uniquement]
Plateforme cible Windows
En-tête shobjidl_core.h (incluez Shobjidl.h)
Bibliothèque Shell32.lib
DLL Shell32.dll (version 6.1 ou ultérieure)

Voir aussi

ICustomDestinationList

ICustomDestinationList ::AppendCategory

ICustomDestinationList ::AppendKnownCategory

Extensions de la barre des tâches