Histórico da Página
| Composition Setup |
|---|
import.css=/download/attachments/327912/newLayout.css |
...
| Pagetitle | ||||
|---|---|---|---|---|
|
...
Função: WaitRun
Executa um programa externo (arquivo executável) através do sistema operacional da estação onde o Smart Client está sendo executado, e aguarda pelo término do programa externo.WaitRun ( < cExeName>, [ nOpc] ) --> nStatus
...
Executa e aguarda pelo término de um programa externo (arquivo executável) através do sistema operacional da estação onde o
| Inclusão de trecho | ||||||
|---|---|---|---|---|---|---|
|
Sintaxe
| Bloco de código | ||
|---|---|---|
| ||
WaitRun(<cExeName>[, <nOpc>]) |
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência |
|---|---|---|---|---|
cExeName |
...
caractere | Indica o path completo, mais o nome e extensão do arquivo executável. Caso a aplicação já esteja no PATH de busca do sistema operacional da máquina onde o
| X |
...
nShow |
...
numérico |
...
Indica o modo de interface a ser criado para a execução do programa. Para mais informações |
...
, consulte |
...
as observações. |
Retorno
Nome | Tipo | Descrição |
|---|---|---|
nRet | Numérico | Retorna 0 (zero) em caso de sucesso |
...
...
da execução do processo. Em caso de erro, será retornado um número correspondente a uma ocorrência de sistema operacional relacionada a falha de execução. |
Observações
...
- A função WaitRun()
...
- deve ser chamada de um programa
...
que está sendo executado a partir de uma conexãoInclusão de trecho AdvPL AdvPL nopanel true
...
- do
. Caso a função seja chamada a partir de um processo que não foi iniciado aInclusão de trecho SmartClient SmartClient nopanel true
...
- partir do
, por exemplo uma função em JOB, aInclusão de trecho SmartClient SmartClient nopanel true
...
- 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.
...
- No Windows, aplicações UWP podem não respeitar o WaitRun(), isto é, a função WaitRun() retorna o controle de execução ao
antes da aplicação externa ser finalizada.Inclusão de trecho AdvPL AdvPL nopanel true - Caso o comportamento desejado seja chamar uma aplicação externa e não interromper o processamento do código
aguardando o término da aplicação, utilize a função WinExec.Inclusão de trecho AdvPL AdvPL nopanel true - Utilize aspas duplas ao especificar caminhos com espaços, por exemplo: WaitRun('"C:\my folder name\App.exe"')
- Algumas aplicações com UI podem conter mais de um processo, onde um primeiro que é responsável por efetivamente iniciar um segundo que conterá a UI. Aplicações desse tipo podem não repassar os parâmetros de visibilidade. O Advpl não possui forma de intereferir nesse comportamento. Um exemplo disso é tentar passar o parâmetro SW_HIDE ao executar a calculadora. Por conta dessa característica, ela sempre ficará visível e em primeiro plano.
Exemplos
| Bloco de código | ||||||||
|---|---|---|---|---|---|---|---|---|
| ||||||||
#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 |
...
// |
...
Constantes |
...
definidas no #include "shell.ch" |
...
User Function WinCalc() |
...
Alert("Vou executar a calculadora.") |
...
WaitRun("CALC.EXE", SW_SHOWNORMAL ) |
...
Alert("A calculadora foi encerrada.") |
...
Return |
...