Composition Setup |
---|
import.css=/download/attachments/3279126062824/newLayouttecnologia.css
|
Portuguese |
---|
Função: ShellExecute
...
Executa uma função, um arquivo ou qualquer execução em linha de comando no S.O. na estação onde o Smartclient está em execução. Esta função encontra-se disponível para Windows e Linux.
Sintaxe
Bloco de código |
---|
|
ShellExecute( < cAcao> cAcao >, < cArquivo> cArquivo >, < cParam> cParam >, < cDirTrabalho>, < nOpc> ) --> Nil Parâmetros/Elementos cDirTrabalho >, [ nOpc ] )
|
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência |
---|
cAcao |
...
caractere | Indica o nome da ação que será executada. | X |
|
cArquivo |
...
caractere | Indica o caminho |
...
e diretório do arquivo que será executado. | X |
|
cParam |
...
caractere | Indica o parâmetro de linha que será repassado para o |
...
...
caractere | Indica o diretório de trabalho onde o arquivo será executa. | X |
|
nOpc |
...
...
o modo de interface a ser criado para a execução do programa. Para mais informações consulte observações. |
|
|
Retorno
Nome | Tipo | Descrição |
---|
cRet | caractere | Retorna 0 (zero) em caso de sucesso. Um retorno de valor menor ou igual a 32 Especifica um erro, de acordo com a documentação da API. |
Observações
Informações |
---|
|
Opções de exibição da janela da aplicação executada: 0 - Escondido 1 - Normal 2 - Minimizada 3 - Maximizada 4 - Na Ativação 5 - Mostra na posição mais recente da janela 6 - Minimizada 7 - Minimizada 8 - Esconde a barra de tarefas 9 - Restaura a posição anterior 10 - Posição padrão da aplicação 11 - Força minimização independente da aplicação executada, maximizada |
Nota |
---|
|
- A função somente será executada caso o client (SmartClient) esteja executando em sistemas operacionais Microsoft Windows (a partir da versão XP), ou em caso de SmartClient HTML ou SmartClient Activex
das opções disponíveis, consulte a área de Observações. | X | // Tabela de opções de exibição da janela da aplicação executada
#define SW_HIDE 0 // Escondido
#define SW_SHOWNORMAL 1 // Normal
#define SW_NORMAL 1 // Normal
#define SW_SHOWMINIMIZED 2 // Minimizada
#define SW_SHOWMAXIMIZED 3 // Maximizada
#define SW_MAXIMIZE 3 // Maximizada
#define SW_SHOWNOACTIVATE 4 // Na Ativação
#define SW_SHOW 5 // Mostra na posição mais recente da janela
#define SW_MINIMIZE 6 // Minimizada
#define SW_SHOWMINNOACTIVE 7 // Minimizada
#define SW_SHOWNA 8 // Esconde a barra de tarefas
#define SW_RESTORE 9 // Restaura a posição anterior
#define SW_SHOWDEFAULT 10// Posição padrão da aplicação
#define SW_FORCEMINIMIZE 11// Força minimização independente da aplicação executada
#define SW_MAX 11// Maximizada
Importante |
Função válida somente para sistemas operacionais Microsoft Windows, e a partir da varsão XP- .
- Existe suporte a variáveis de ambiente nos
parãmetros cArquivo e cDirTrabalho - parâmetros cArquivo e cDirTrabalho em builds superiores a 7.00.111010P. Ex:
Exemplo: ShellExecuteShellExecute( "Open", "%PROGRAMFILES%\Internet Explorer\iexplore.exe", "http://www.google.com.br", "C:\", 1 )
- Quando executada via SmartClient HTML, a função ShellExecute não tem acesso ao arquivos locais, só podendo ser utilizada para abrir URL de sites em outras janelas/abas. Ex:
Exemplo: ShellExecute( "Open", "http://www.google.com.br", "", "C:\", 1 )
- A função ShellExecute() deve ser chamada de um programa AdvPL que está sendo executado a partir de uma conexão do Smart Client. Caso a função seja chamada a partir de um processo que não foi iniciado a partir do Smart Client, por exemplo uma função em JOB, a função não executará o programa e retornará -1. Em caso de falha na localização ou inexistência do arquivo executável, será retornado status 2.
- A função ShellExecute() apenas dispara a execução de uma nova aplicação, sem aguardar pelo seu retorno ou término. Caso seja necessário aguardar pelo término da aplicaçao externa a executada, utilize a função WaitRun.
Exemplos
Bloco de código |
---|
language | cpp |
---|
theme | Eclipse |
---|
linenumbers | true |
---|
collapse | false |
---|
|
user function exemplo()
// Exemplo de uso para Windows
shellExecute( "Open", "C:\Windows\System32\cmd.exe", " /k dir", "C:\", 1 )
// Exemplo de uso para Linux
shellExecute("Browser", "/usr/bin/firefox", " http://www.google.com.br", "/", 1 )
return
|
Abrangência
...
TOTVS Application Server
...
Veja também