Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Bloco de código
collapsefalse
ShellExecute( < cAcao >, < cArquivo >, < cParam >, < 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 executável.

X

 


cDirTrabalho

caractere

Indica o diretório de trabalho onde o arquivo será executa.

X

 


nOpc

numérico

Indica 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 da execução do processo e diferente de zero para erros.

nRet

numérico

Se a função for bem-sucedida ela retornará um valor maior que 32.

(informação)  O retorno bem sucedido (superior a 32) é de responsabilidade do Sistema Operacional,e será necessário pesquisar o comando executado para confirmar essa informação.

Se a função falhar ela retornará um valor de erro entre 0 e 32, que indica a causa da falha.

O valor de retorno é lançado como um HINSTANCE, conforme tabela de erros disponível abaixo:

https://docs.microsoft.com/en-us/windows/win32/api/shellapi/ns-shellapi-shellexecuteinfoa

SE_ERR_FNF (2)
File not found.

SE_ERR_PNF (3)
Path not found.

SE_ERR_ACCESSDENIED (5)
Access denied.

SE_ERR_OOM (8)
Out of memory.

SE_ERR_SHARE (26)
Cannot share an open file.

SE_ERR_ASSOCINCOMPLETE (27)
File association information not complete.

SE_ERR_DDETIMEOUT (28)
DDE operation timed out.

SE_ERR_DDEFAIL (29)
DDE operation failed.

SE_ERR_DDEBUSY (30)
DDE operation is busy.

SE_ERR_NOASSOC (31)
File association not available.

SE_ERR_DLLNOTFOUND (32)
Dynamic-link library not found.

Observações

Informações
icontrue
titleObservação

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
icontrue
titleAtenção
  • 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.
  • Existe suporte a variáveis de ambiente nos parâmetros cArquivo e cDirTrabalho em builds superiores a 7.00.111010P. Ex:
    ShellExecute( "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.

...

Bloco de código
languagecpp
themeEclipse
titleExemplo
linenumberstrue
collapsefalse
#INCLUDE "TOTVS.CH"

user function exemplo()
    
    // Exemplo de uso para Windows
    shellExecuteShellExecute( "Openopen", "C:\Windows\System32\cmd.exehttp://www.google.com.br", " /k dir", "C:\", 1 )
    
    // Exemplo de uso para Linux
    shellExecute("Browser", "/usr/bin/firefox", " http://www.google.com.br", "/", 1 )
 
return

...

TOTVS Application Server

Veja também