Compartir a través de


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

El método IComponent::GetResultViewType determina cuál debe ser la vista del panel de resultados.

Sintaxis

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

Parámetros

[in] cookie

Valor que especifica el identificador único proporcionado por el complemento para el elemento de ámbito. Para obtener más información sobre las cookies en MMC, consulte Cookies.

[out] ppViewType

Puntero a la dirección de una cadena que especifica la vista que se va a mostrar para la cookie especificada. El destinatario (complemento) asigna la cadena de tipo de vista mediante la función de API COM CoTaskMemAlloc y el autor de la llamada (MMC) lo libera mediante CoTaskMemFree.

La cadena que se devuelve depende del tipo de vista:

Lista estándar

Para las vistas de lista estándar, MMC no usa este valor. Si el complemento solo usa vistas de lista estándar, el complemento puede establecer ppViewType en NULL. MMC usa vistas de lista estándar como tipo de vista predeterminado.

Cuadro

Para una vista del panel de tareas que usa plantillas de panel de tareas MMC, ppViewType debe apuntar a la dirección de una cadena que contiene la ruta de acceso del recurso a la plantilla del panel de tareas y un nombre de grupo que identifica el panel de tareas. Tenga en cuenta que MMC pasa el nombre del grupo en llamadas a métodos IExtendTaskPad para permitir que el complemento identifique el panel de tareas concreto que se muestra (esto es importante si el complemento tiene varios paneles de tareas).

La cadena debe tener el siguiente formato:

"res:// filepath/template#groupname"

donde filepath es la ruta de acceso completa al ejecutable MMC (MMC.exe), la plantilla es el nombre de archivo de la plantilla que se almacena como un recurso dentro del archivo especificado por filepath y groupname es el nombre que identifica el panel de tareas.

MMC proporciona los siguientes archivos HTML como plantillas:

Archivo de recursos Descripción
default.htm Plantilla para el panel de tareas estándar
listpad.htm Plantilla para el panel de tareas de vista de lista "vertical"
horizontal.htm Plantilla para el panel de tareas de vista de lista "horizontal"
 

Por ejemplo, la cadena siguiente especifica que MMC.exe tiene una ruta de acceso de c:\Windows\System32\mmc.exe, se muestra el panel de tareas estándar (default.htm) y el nombre del grupo es tpad1: "res://c:\Windows\System32\mmc.exe/default.htm#tpad1".

Para una vista del panel de tareas que usa una página HTML personalizada, ppViewType debe apuntar a la dirección de una cadena que contiene la ruta de acceso del recurso al archivo HTML del panel de tareas personalizado y un nombre de grupo que identifica el panel de tareas. La cadena tiene el mismo formato que la cadena para una plantilla del panel de tareas MMC, excepto que la ruta de acceso debe especificar la ruta de acceso al archivo DLL del complemento que almacena la página HTML personalizada como un recurso.

OCX personalizado

Para una vista personalizada proporcionada por un control personalizado OLE (OCX), ppViewType debe apuntar a la dirección de una cadena que contiene la representación de cadena del CLSID del control personalizado. La cadena debe comenzar con una llave abierta ({) y terminar con una llave de cierre (}). La siguiente cadena representa el control Calendar y se puede devolver en el parámetro ppViewType para mostrar el control Calendar en el panel de resultados: "{8E27C92B-1264-101C-8A2F-040224009C02}".

MMC permite una única instancia de cada tipo OCX por instancia de complemento por vista. Si la opción MMC_VIEW_OPTIONS_CREATENEW no está seleccionada, MMC mostrará la instancia OCX almacenada en caché para cualquiera de los elementos de ámbito del complemento que solicitan esta vista OCX. Si se selecciona la opción MMC_VIEW_OPTIONS_CREATENEW , MMC destruirá el OCX almacenado en caché y creará uno nuevo cada vez que un elemento solicite la vista OCX.

Página web personalizada

Para una vista personalizada proporcionada por una página web, ppViewType debe apuntar a la dirección de una cadena que contiene la dirección URL de la página. La siguiente cadena representa la dirección URL del sitio web de Microsoft y se puede devolver en el parámetro ppViewType para mostrar el sitio web en el panel de resultados: "www.microsoft.com".

[out] pViewOptions

Puntero al valor que proporciona a la consola las opciones especificadas por el complemento propietario. Este valor puede ser una combinación de lo siguiente:

MMC_VIEW_OPTIONS_CREATENEW (0x0010)

Para una vista OCX personalizada. En MMC 1.2, el OCX siempre se almacena en caché. Si no se especifica esta marca, MMC 1.2 muestra la instancia OCX almacenada en caché para cualquiera de los elementos de ámbito del complemento que solicitan esta vista OCX. Si se especifica esta marca, MMC 1.2 destruye el OCX almacenado en caché y crea (después almacena en caché) uno nuevo cada vez que un elemento solicita la vista OCX. En MMC 2.0, el OCX se almacenará en caché solo si no se establece esta marca. En MMC 2.0, el complemento puede liberar cualquier OCX cuando se deseleccione el nodo si se establece esta marca.

Una vez que el complemento haya especificado su opción de almacenamiento en caché OCX para un nodo (ya sea mediante o no con la marca de MMC_VIEW_OPTIONS_CREATENEW ), no debe cambiar la opción de opción para esta instancia del complemento.

MMC_VIEW_OPTIONS_EXCLUDE_SCOPE_ITEMS_FROM_LIST (0x00000040)

Novedades de MMC 1.2. En una vista de lista estándar, esta opción indica a MMC que oculte los elementos de ámbito en la vista. Los elementos de ámbito se ocultan automáticamente en las vistas de lista virtual.

MMC_VIEW_OPTIONS_FILTERED (0x0008)

Notifica a MMC que el complemento admite vistas filtradas. Consulte Agregar vistas filtradas.

MMC_VIEW_OPTIONS_LEXICAL_SORT (0x00000080)

Novedades de MMC 1.2. En una vista de lista estándar, esta opción indica a MMC que ordene léxicamente todos los elementos de ámbito (incluidas las extensiones) primero, seguido de todos los elementos de resultado. Las interfaces IResultDataCompare e IResultDataCompareEx se omiten cuando se establece esta opción.

MMC_VIEW_OPTIONS_MULTISELECT (0x0004)

Permite varias selecciones de elementos en la vista del panel de resultados.

MMC_VIEW_OPTIONS_NOLISTVIEWS (0x0001)

Indica a la consola que se abstenga de presentar opciones de vista de lista estándar en el menú Ver . Permite que el complemento muestre solo sus propias vistas personalizadas en el panel de resultados.

MMC_VIEW_OPTIONS_NONE (0)

No hay opciones de vista seleccionadas. Esta es la opción de vista predeterminada.

MMC_VIEW_OPTIONS_OWNERDATALIST (0x0002)

Valor que especifica que la vista de lista del panel de resultados debe ser una lista virtual.

MMC_VIEW_OPTIONS_USEFONTLINKING (0x0020)

Use la vinculación de fuentes en los elementos de resultado (para compatibilidad multilingüe). Para obtener información detallada, vea la sección Comentarios de.

Si ppViewType es un tipo de vista personalizado, MMC aplica las opciones de vista que afectan a las vistas de lista estándar cuando la vista cambia de una vista personalizada a una vista de lista estándar.

Valor devuelto

Este método puede devolver uno de estos valores.

Comentarios

El destinatario (complemento) asigna la cadena de tipo de vista mediante la función de API COM CoTaskMemAlloc y el autor de la llamada (MMC) lo libera mediante CoTaskMemFree.

MMC llama a GetResultViewType cuando se selecciona un elemento de ámbito de complemento. Al cambiar de una vista de lista estándar a una vista personalizada, el complemento debe llamar a IConsole2::SelectScopeItem para volver a seleccionar el elemento y forzar a MMC a llamar a GetResultViewType de nuevo. Esto permite que el complemento especifique el OCX o la página web personalizados adecuados para que MMC pueda cargarlo. Al cambiar de una vista personalizada a una vista de lista estándar, MMC llama automáticamente a GetResultViewType y establece el tipo de vista de lista adecuado.

Dada una cadena Unicode, la característica de vinculación de fuentes determina la mejor fuente para que muestre esa cadena. Por ejemplo, si rellenara una vista de lista con nombres de servidor y sabía que la mitad estaría en japonés y medio en ruso, establecería las opciones de vista de vinculación de fuentes y MMC determinaría una fuente adecuada. El valor predeterminado no es usar la vinculación de fuentes, ya que hay un pequeño impacto de rendimiento cuando MMC busca la fuente adecuada.

Una cookie es un puntero a una estructura que contiene información única para un elemento específico. Se pasa a través del miembro lParam de una estructura SCOPEDATAITEM .

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista
Servidor mínimo compatible Windows Server 2008
Plataforma de destino Windows
Encabezado mmc.h

Consulte también

IComponent

IDataObject