Existe Alguma Forma de Encerrar o Programa apos ficar o mesmo <N> tempo sem Uso
obrigado ...
Moderador: Moderadores


Código: Selecionar todos
IF INKEY(<temporização>,159)>0
KEYBOARD CHR(255)
EXIT
ENDIF
Código: Selecionar todos
Function MAIN()
Define backgroundevent Action gereimpre() Name "UdfClock1" interval 2.00
return

Código: Selecionar todos
PROCEDURE TESTE
set date brit
set cent on
set dele on
* esta funcao chama o evento
monitora()
* abra seu banco de dados
use SEUBANCO
dbedit(03,00,23,79)
QUIT
Código: Selecionar todos
Function MONITORA
Define backgroundevent Action SSAVEPRG() Name "UdfClock1" interval 1
return
Código: Selecionar todos
PROC SSAVEPRG
static ssave
IF ssave == NIL
ssave:=1
ENDIF
if ssave=10
* 10 é o tempo de ociosidade pois se ficar 10 seg sem usar o teclado
* executa a sua função
Wait"Aqui coloque sua função para encerramento do sistema"
keyb chr(0)
ssave:=1
endif
* esta linha é apenas para exibir o contador durante o teste
* pode ser retirada
@24,01 say ssave
ssave++
if lastkey()#0
keyb chr(0)
ssave:=1
endif
return ssave

Pode até ser, mas ainda acho que é necessário ser colocado o #Include "BGEVENTS.CH" para que tenha efeito.ANDRIL escreveu:O importante é que tenha uma função para chamar a especificação DEFINE (q é diferente da #DEFINE) do clipper, se nao tiver em uma função, durante a compilação já informará erro, se não me falha a memoria, era uma informação da própria lib.
Código: Selecionar todos
#Include "BGEVENTS.CH"
set date brit
set cent on
set dele on
* esta funcao chama o evento
monitora()
* abra seu banco de dados
use CLIENTES
dbedit(03,00,23,79)
Function MONITORA
Define backgroundevent Action SSAVEPRG() Name "UdfClock1" interval 1
return
PROC SSAVEPRG
static ssave
IF ssave == NIL
ssave:=1
ENDIF
if ssave=10
* 10 é o tempo de ociosidade pois se ficar 10 seg sem usar o teclado
* executa a sua função
Wait"Aqui coloque sua função para encerramento do sistema"
keyb chr(0)
ssave:=1
endif
* esta linha é apenas para exibir o contador durante o teste
* pode ser retirada
@24,01 say ssave
ssave++
if lastkey()#0
keyb chr(0)
ssave:=1
endif
return ssaveEu acho que o EVEN.LIB é a própria biblioteca, pois eu não possuo BGEVENTS.LIB alguma. Obrigado Andril.Agora fiquei em dúvida se eu alterei o nome da BGEVENTS.LIB para EVEN.LIB ou existe realmente esta EVEN.LIB

Neste também não possui o EVEN.LIBMaligno escreveu:http://www.the-oasis.net/files/general/bgev5.zip