Función SHInvokePrinterCommandA (shellapi.h)
Ejecuta un comando en un objeto printer.
Sintaxis
BOOL SHInvokePrinterCommandA(
[in, optional] HWND hwnd,
UINT uAction,
[in] LPCSTR lpBuf1,
[in, optional] LPCSTR 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 alto 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 de 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 de
Puntero a una cadena terminada en NULL que contiene información adicional para el comando printer. La información contenida en este parámetro depende del valor de uAction.
[in, optional] lpBuf2
Tipo: LPCTSTR de
Puntero a una cadena terminada en NULL que contiene información adicional para el comando printer. La información contenida en este parámetro depende del valor de uAction.
fModal
Tipo: BOOL de
TRUE para especificar que SHInvokePrinterCommand no debe devolverse hasta que se complete el comando; FALSE si la función debe devolverse tan pronto como se inicialice el comando.
Valor devuelto
Tipo: BOOL de
Devuelve true si se ejecuta correctamente; De lo contrario, FALSE.
Observaciones
Cuando se especifica un nombre de impresora mediante lpBuf1, 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 shell versiones 4.71 y versiones posteriores. Para mantener la compatibilidad con versiones anteriores de Shell, esta función no se debe usar explícitamente. En su lugar, se deben usar las funciones
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 neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows 2000 Professional, Windows XP [solo aplicaciones de escritorio] |
servidor mínimo admitido | Windows 2000 Server [solo aplicaciones de escritorio] |
de la plataforma de destino de |
Windows |
encabezado de |
shellapi.h |
biblioteca de |
Shell32.lib |
DLL de |
Shell32.dll (versión 4.71 o posterior) |