Método IPrintCoreHelper::WhyConstrained (prcomoem.h)
El método IPrintCoreHelper::WhyConstrained proporciona una lista de opciones que restringen el par de opciones de características especificado en la configuración actual.
Sintaxis
HRESULT WhyConstrained(
[in] const DEVMODE *pDevmode,
[in] DWORD cbSize,
[in] PCSTR pszFeatureKeyword,
[in] PCSTR pszOptionKeyword,
[out] const PRINT_FEATURE_OPTION **ppFOConstraints,
[out] DWORD *pdwNumOptions
);
Parámetros
[in] pDevmode
Puntero a una estructura DEVMODEW . Si se proporciona este puntero, IPrintCoreHelper::WhyConstrained debe usar la estructura DEVMODEW a la que apunta pDevmode en lugar de la estructura DEVMODEW predeterminada o actual. Si se llama a este método desde el proveedor de complementos o desde IPrintOemPS::D evMode o IPrintOemUni::D evMode, se requiere este parámetro. En la mayoría de las otras situaciones, el parámetro debe ser NULL. Cuando el controlador principal establece pDevmode en NULL, modifica su estado interno en lugar del de la estructura DEVMODEW pasada. Esto es necesario durante las operaciones como el reemplazo completo de la interfaz de usuario, donde la estructura DEVMODEW devuelta por un DDI, como DrvDocumentPropertySheets, está siendo administrada por el módulo de interfaz de usuario del controlador principal.
[in] cbSize
Tamaño, en bytes, de la estructura DEVMODEW a la que apunta el parámetro pDevmode .
[in] pszFeatureKeyword
Puntero a una cadena ANSI que contiene el nombre de la característica. El nombre de la característica debe corresponder a la palabra clave que se usa en el archivo GPD o PPD.
[in] pszOptionKeyword
Puntero a una cadena ANSI que contiene el nombre de la opción. El nombre de la opción debe corresponder a la palabra clave que se usa en el archivo GPD o PPD.
[out] ppFOConstraints
Puntero a una matriz de PRINT_FEATURE_OPTION elementos. Cuando devuelve IPrintCoreHelper::WhyConstrained , la matriz contiene una lista de pares de elementos de características de las opciones que restringen las opciones especificadas en el parámetro pszOptionKeyword .
[out] pdwNumOptions
Puntero a una variable que recibe el número de pares de opción de características de la matriz a la que apunta el parámetro ppFOConstraints .
Valor devuelto
IPrintCoreHelper::WhyConstrained debe devolver uno de los siguientes valores.
Código devuelto | Descripción |
---|---|
|
La operación se realizó correctamente. |
|
Uno o varios de los argumentos no son válidos o no se admite la característica. |
|
No se pudo asignar memoria para la matriz de resultados. |
Comentarios
Si el par de opción de características especificado no está restringido, IPrintCoreHelper::WhyConstrained devolverá S_OK pero devolverá *pdwFOPairs establecido en 0 y con *ppFOConstraints[0] establecido en NULL.
Tenga en cuenta que los resultados de este método podrían no contener todas las opciones que afectan a la opción seleccionada actualmente. En el caso de los controladores Unidrv, esta lista incluirá al menos una opción de cada conjunto de restricciones que esté activa. Sin embargo, si hay combinaciones no válidas que enumeran más de dos pares de opción de características, solo se incluirá una opción de la combinación en la lista.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Escritorio |
Encabezado | prcomoem.h (include Prcomoem.h) |