Partager via


Méthode IComponent ::GetResultViewType (mmc.h)

La méthode IComponent ::GetResultViewType détermine la vue du volet de résultats.

Syntaxe

HRESULT GetResultViewType(
  [in]  MMC_COOKIE cookie,
  [out] LPOLESTR   *ppViewType,
  [out] long       *pViewOptions
);

Paramètres

[in] cookie

Valeur qui spécifie l’identificateur unique fourni en snapin pour l’élément d’étendue. Pour plus d’informations sur les cookies dans MMC, consultez Cookies.

[out] ppViewType

Pointeur vers l’adresse d’une chaîne qui spécifie l’affichage à afficher pour le cookie spécifié. Le composant appelé (composant logiciel enfichable) alloue la chaîne de type d’affichage à l’aide de la fonction d’API COM CoTaskMemAlloc et l’appelant (MMC) la libère à l’aide de CoTaskMemFree.

La chaîne retournée dépend du type d’affichage :

Liste standard

Pour les vues de liste standard, MMC n’utilise pas cette valeur. Si le composant logiciel enfichable utilise uniquement des vues de liste standard, le composant logiciel enfichable peut définir ppViewType sur NULL. MMC utilise des vues de liste standard comme type d’affichage par défaut.

Bloc-tâches

Pour une vue du bloc-tâches qui utilise des modèles de bloc-tâches MMC, ppViewType doit pointer vers l’adresse d’une chaîne qui contient le chemin de la ressource vers le modèle de bloc-tâches et un nom de groupe qui identifie le bloc-tâches. N’oubliez pas que MMC transmet le nom du groupe dans les appels aux méthodes IExtendTaskPad pour permettre au composant logiciel enfichable d’identifier le bloc-tâches particulier affiché (ceci est important si le composant logiciel enfichable comporte plusieurs pavés de tâches).

La chaîne doit avoir la forme suivante :

« res:// filepath/template#groupname »

filepath est le chemin d’accès complet à l’exécutable MMC (MMC.exe), template est le nom de fichier du modèle stocké en tant que ressource dans le fichier spécifié par filepath et groupname est le nom qui identifie le bloc-tâches.

MMC fournit les fichiers HTML suivants sous forme de modèles :

Fichier de ressources Description
default.htm Modèle pour le bloc-tâches standard
listpad.htm Modèle pour le bloc-tâches d’affichage de liste « vertical »
horizontal.htm Modèle pour le bloc-tâches d’affichage de liste « horizontal »
 

Par exemple, la chaîne suivante spécifie que MMC.exe a un chemin d’accès de c:\Windows\System32\mmc.exe, que le bloc-tâches standard s’affiche (default.htm) et que le nom du groupe est tpad1 : « res ://c:\Windows\System32\mmc.exe/default.htm#tpad1 ».

Pour une vue du bloc-tâches qui utilise une page HTML personnalisée, ppViewType doit pointer vers l’adresse d’une chaîne qui contient le chemin d’accès aux ressources du fichier HTML du bloc-tâches personnalisé et un nom de groupe qui identifie le bloc-tâches. La chaîne a la même forme que la chaîne d’un modèle de bloc-tâches MMC, à ceci près que le chemin d’accès doit spécifier le chemin d’accès à la DLL du composant logiciel enfichable qui stocke la page HTML personnalisée en tant que ressource.

OCX personnalisé

Pour une vue personnalisée fournie par un contrôle personnalisé OLE (OCX), ppViewType doit pointer vers l’adresse d’une chaîne qui contient la représentation sous forme de chaîne du CLSID du contrôle personnalisé. La chaîne doit commencer par une accolade ouverte ({) et se terminer par une accolade fermée (}). La chaîne suivante représente le contrôle Calendar et peut être retournée dans le paramètre ppViewType pour afficher le contrôle Calendar dans le volet de résultats : « {8E27C92B-1264-101C-8A2F-040224009C02} ».

MMC autorise une instance unique de chaque type OCX par instance de composant logiciel enfichable par affichage. Si l’option MMC_VIEW_OPTIONS_CREATENEW n’est pas sélectionnée, MMC affiche le instance OCX mis en cache pour tous les éléments d’étendue du composant logiciel enfichable qui demandent cette vue OCX. Si l’option MMC_VIEW_OPTIONS_CREATENEW est sélectionnée, MMC détruit l’OCX mis en cache et en crée un chaque fois qu’un élément demande la vue OCX.

Page web personnalisée

Pour une vue personnalisée fournie par une page web, ppViewType doit pointer vers l’adresse d’une chaîne qui contient l’URL de la page. La chaîne suivante représente l’URL du site web Microsoft et peut être retournée dans le paramètre ppViewType pour afficher le site web dans le volet de résultats : « www.microsoft.com ».

[out] pViewOptions

Pointeur vers la valeur qui fournit à la console les options spécifiées par le composant logiciel enfichable propriétaire. Cette valeur peut être une combinaison des éléments suivants :

MMC_VIEW_OPTIONS_CREATENEW (0x0010)

Pour une vue OCX personnalisée. Dans MMC 1.2, l’OCX est toujours mis en cache. Si cet indicateur n’est pas spécifié, MMC 1.2 affiche le instance OCX mis en cache pour tous les éléments d’étendue du composant logiciel enfichable qui demandent cette vue OCX. Si cet indicateur est spécifié, MMC 1.2 détruit l’OCX mis en cache et en crée un (puis met en cache) chaque fois qu’un élément demande la vue OCX. Dans MMC 2.0, l’OCX n’est mis en cache que si cet indicateur n’est pas défini. Dans MMC 2.0, le composant logiciel enfichable peut libérer tous les OCX lorsque le nœud est désélectionné si cet indicateur est défini.

Une fois que le composant logiciel enfichable a spécifié son option de mise en cache OCX pour un nœud (à l’aide ou non de l’indicateur MMC_VIEW_OPTIONS_CREATENEW), il ne doit pas modifier le choix d’option pour cette instance du composant logiciel enfichable.

MMC_VIEW_OPTIONS_EXCLUDE_SCOPE_ITEMS_FROM_LIST (0x00000040)

Nouveautés de MMC 1.2. Dans un affichage de liste standard, cette option indique à MMC de masquer les éléments d’étendue dans la vue. Les éléments d’étendue sont automatiquement masqués dans les affichages de liste virtuelle.

MMC_VIEW_OPTIONS_FILTERED (0x0008)

Avertit MMC que le composant logiciel enfichable prend en charge les vues filtrées. Consultez Ajout d’affichages filtrés.

MMC_VIEW_OPTIONS_LEXICAL_SORT (0x00000080)

Nouveautés de MMC 1.2. Dans un affichage de liste standard, cette option indique à MMC de trier lexicalement tous les éléments d’étendue (y compris les extensions), suivis de tous les éléments de résultat. Les interfaces IResultDataCompare et IResultDataCompareEx sont ignorées lorsque cette option est définie.

MMC_VIEW_OPTIONS_MULTISELECT (0x0004)

Autorise plusieurs sélections d’éléments dans l’affichage du volet de résultats.

MMC_VIEW_OPTIONS_NOLISTVIEWS (0x0001)

Indique à la console de s’abstenir de présenter les choix d’affichage de liste standard dans le menu Affichage . Permet au composant logiciel enfichable d’afficher uniquement ses propres vues personnalisées dans le volet de résultats.

MMC_VIEW_OPTIONS_NONE (0)

Aucune option d’affichage sélectionnée. Il s’agit de l’option d’affichage par défaut.

MMC_VIEW_OPTIONS_OWNERDATALIST (0x0002)

Valeur qui spécifie que l’affichage de liste du volet de résultats doit être une liste virtuelle.

MMC_VIEW_OPTIONS_USEFONTLINKING (0x0020)

Utilisez la liaison de polices sur les éléments de résultats (pour la prise en charge multilingue). Pour plus de détails, consultez la section Notes.

Si ppViewType est un type d’affichage personnalisé, les options d’affichage qui affectent les affichages de liste standard sont appliquées par MMC lorsque la vue passe d’une vue personnalisée à une vue de liste standard.

Valeur retournée

Cette méthode peut retourner l’une de ces valeurs.

Remarques

Le composant appelé (composant logiciel enfichable) alloue la chaîne de type d’affichage à l’aide de la fonction d’API COM CoTaskMemAlloc et l’appelant (MMC) la libère à l’aide de CoTaskMemFree.

MMC appelle GetResultViewType lorsqu’un élément d’étendue de composant logiciel enfichable est sélectionné. Lorsque vous passez d’un affichage de liste standard à un affichage personnalisé, le composant logiciel enfichable doit appeler IConsole2 ::SelectScopeItem pour resélectionner l’élément et forcer MMC à appeler à nouveau GetResultViewType . Cela permet au composant logiciel enfichable de spécifier l’OCX ou la page web personnalisée appropriée afin que MMC puisse le charger. Lorsque vous passez d’une vue personnalisée à un affichage de liste standard, MMC appelle automatiquement GetResultViewType et définit le type d’affichage de liste approprié.

Étant donné une chaîne Unicode, la fonctionnalité de liaison de police détermine la meilleure police pour qui affiche cette chaîne. Par exemple, si vous remplissiez une vue de liste avec des noms de serveurs et que vous saviez que la moitié serait en japonais et la moitié en russe, vous définiriez les options d’affichage de liaison de police et MMC déterminerait une police appropriée. La valeur par défaut consiste à ne pas utiliser la liaison de polices, car il y a un faible niveau de performances lorsque MMC recherche la police appropriée.

Un cookie est un pointeur vers une structure qui contient des informations propres à un élément spécifique. Il est transmis via le membre lParam d’une structure SCOPEDATAITEM .

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista
Serveur minimal pris en charge Windows Server 2008
Plateforme cible Windows
En-tête mmc.h

Voir aussi

IComponent

Idataobject