Função SHInvokePrinterCommandA (shellapi.h)
Executa um comando em um objeto de impressora.
Sintaxe
BOOL SHInvokePrinterCommandA(
[in, optional] HWND hwnd,
UINT uAction,
[in] LPCSTR lpBuf1,
[in, optional] LPCSTR lpBuf2,
BOOL fModal
);
Parâmetros
[in, optional] hwnd
Digite: HWND
O identificador da janela pai de qualquer janela ou caixa de diálogo criada durante a operação.
uAction
Tipo: UINT
O tipo de operação de impressora a ser executada. Um dos seguintes valores:
PRINTACTION_OPEN (0)
0x0. Abra a impressora especificada por lpBuf1. O parâmetro lpBuf2 é ignorado.
PRINTACTION_PROPERTIES (1)
0x1. Exiba as páginas de propriedades da impressora especificada por lpBuf1. O parâmetro lpBuf2 pode ser NULL ou pode nomear uma folha de propriedades específica a ser exibida, seja por nome ou número. Se o WORD alto de lpBuf2 for diferente de zero, supõe-se que esse parâmetro seja um ponteiro para um buffer que contém o nome da planilha a ser aberta. Caso contrário, lpBuf2 é visto como o índice baseado em zero da folha de propriedades a ser aberta.
PRINTACTION_NETINSTALL (2)
0x2. Instale a impressora de rede especificada por lpBuf1. O parâmetro lpBuf2 é ignorado.
PRINTACTION_NETINSTALLLINK (3)
0x3. Crie um atalho para a impressora de rede especificada por lpBuf1. O parâmetro lpBuf2 especifica a unidade e o caminho da pasta na qual criar o atalho. A impressora de rede já deve ter sido instalada no computador local.
PRINTACTION_TESTPAGE (4)
0x4. Imprima uma página de teste na impressora especificada por lpBuf1. O parâmetro lpBuf2 é ignorado.
PRINTACTION_OPENNETPRN (5)
0x5. Abra a impressora de rede especificada por lpBuf1. O parâmetro lpBuf2 é ignorado.
PRINTACTION_DOCUMENTDEFAULTS (6)
0x6. Exiba as propriedades padrão do documento para a impressora especificada por lpBuf1. O parâmetro lpBuf2 é ignorado.
PRINTACTION_SERVERPROPERTIES (7)
0x7. Exiba as propriedades do servidor de impressora especificadas por lpBuf1. O parâmetro lpBuf2 é ignorado.
[in] lpBuf1
Tipo: LPCTSTR
Ponteiro para uma cadeia de caracteres terminada em nulo que contém informações adicionais para o comando da impressora. As informações contidas nesse parâmetro dependem do valor de uAction.
[in, optional] lpBuf2
Tipo: LPCTSTR
Ponteiro para uma cadeia de caracteres terminada em nulo que contém informações adicionais para o comando da impressora. As informações contidas nesse parâmetro dependem do valor de uAction.
fModal
Tipo: BOOL
TRUE para especificar que SHInvokePrinterCommand não deve retornar até que o comando seja concluído; FALSE se a função deve retornar assim que o comando for inicializado.
Retornar valor
Tipo: BOOL
Retorna TRUE se tiver êxito; caso contrário, FALSE.
Comentários
Quando um nome de impressora é especificado por lpBuf1, o nome pode ser o nome de uma impressora local ou do servidor e compartilhar o nome de uma impressora de rede. Ao especificar um nome de impressora de rede, o nome deve ser especificado neste formato:
"\\<server><shared printer name>"
Essa função é implementada nas versões 4.71 e posteriores do Shell . Para manter a compatibilidade com versões anteriores do Shell, essa função não deve ser usada explicitamente. Em vez disso, as funções LoadLibrary e GetProcAddress devem ser usadas para obter o endereço da função.
Observação
O cabeçalho shellapi.h define SHInvokePrinterCommand como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional, Windows XP [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | shellapi.h |
Biblioteca | Shell32.lib |
DLL | Shell32.dll (versão 4.71 ou posterior) |