Función SHInvokePrinterCommandW (shellapi.h)
Ejecuta un comando en un objeto de impresora.
Sintaxis
BOOL SHInvokePrinterCommandW(
[in, optional] HWND hwnd,
UINT uAction,
[in] LPCWSTR lpBuf1,
[in, optional] LPCWSTR lpBuf2,
BOOL fModal
);
Parámetros
[in, optional] hwnd
Tipo: HWND
Identificador de la ventana primaria de las ventanas o cuadros de diálogo que se crean durante la operación.
uAction
Tipo: UINT
Tipo de operación de impresora que se va a realizar. Uno de los siguientes valores:
PRINTACTION_OPEN (0)
0x0. Abra la impresora especificada por lpBuf1. Se omite el parámetro lpBuf2 .
PRINTACTION_PROPERTIES (1)
0x1. Muestra las páginas de propiedades de la impresora especificada por lpBuf1. El parámetro lpBuf2 puede ser NULL o puede asignar un nombre a una hoja de propiedades específica para mostrar, ya sea por nombre o número. Si el valor alto de WORD de lpBuf2 es distinto de cero, se supone que este parámetro es un puntero a un búfer que contiene el nombre de la hoja que se va a abrir. De lo contrario, lpBuf2 se ve como el índice de base cero de la hoja de propiedades que se va a abrir.
PRINTACTION_NETINSTALL (2)
0x2. Instale la impresora de red especificada por lpBuf1. Se omite el parámetro lpBuf2 .
PRINTACTION_NETINSTALLLINK (3)
0x3. Cree un acceso directo a la impresora de red especificada por lpBuf1. El parámetro lpBuf2 especifica la unidad y la ruta de acceso de la carpeta en la que se va a crear el acceso directo. La impresora de red ya debe haberse instalado en el equipo local.
PRINTACTION_TESTPAGE (4)
0x4. Imprima una página de prueba en la impresora especificada por lpBuf1. Se omite el parámetro lpBuf2 .
PRINTACTION_OPENNETPRN (5)
0x5. Abra la impresora de red especificada por lpBuf1. Se omite el parámetro lpBuf2 .
PRINTACTION_DOCUMENTDEFAULTS (6)
0x6. Muestra las propiedades de documento predeterminadas para la impresora especificada por lpBuf1. Se omite el parámetro lpBuf2 .
PRINTACTION_SERVERPROPERTIES (7)
0x7. Muestra las propiedades del servidor de impresora especificado por lpBuf1. Se omite el parámetro lpBuf2 .
[in] lpBuf1
Tipo: LPCTSTR
Puntero a una cadena terminada en null que contiene información adicional para el comando de impresora. La información contenida en este parámetro depende del valor de uAction.
[in, optional] lpBuf2
Tipo: LPCTSTR
Puntero a una cadena terminada en null que contiene información adicional para el comando de impresora. La información contenida en este parámetro depende del valor de uAction.
fModal
Tipo: BOOL
TRUE para especificar que SHInvokePrinterCommand no debe devolver hasta que se complete el comando; FALSE si la función debe devolverse tan pronto como se inicialice el comando.
Valor devuelto
Tipo: BOOL
Devuelve TRUE si se ejecuta correctamente; de lo contrario, FALSE.
Comentarios
Cuando lpBuf1 especifica un nombre de impresora, el nombre puede ser el nombre de una impresora local o el servidor y compartir el nombre de una impresora de red. Al especificar un nombre de impresora de red, el nombre debe especificarse en este formato:
"\\<server><shared printer name>"
Esta función se implementa en las versiones 4.71 y posteriores de Shell. Para mantener la compatibilidad con versiones anteriores de Shell, esta función no se debe usar explícitamente. En su lugar, las funciones LoadLibrary y GetProcAddress deben usarse para obtener la dirección de la función.
Nota
El encabezado shellapi.h define SHInvokePrinterCommand como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 2000 Professional, Windows XP [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | shellapi.h |
Library | Shell32.lib |
Archivo DLL | Shell32.dll (versión 4.71 o posterior) |