Quem está usando o sistema?
Moderador: Moderadores
- Linguagemclipper
- Usuário Nível 3

- Mensagens: 240
- Registrado em: 16 Abr 2016 17:33
- Localização: Maceió/AL
- Contato:
Quem está usando o sistema?
Prezados,
Preciso saber quem está usando o sistema, quais usuários? Tem jeito fácil?
Penso em criar um banco de dados com uma flag de usuário ativo ou inativo.
O problema é aquele usuário que não sai com a tecla <Esc>. Tem jeito de brecar ou executar uma rotina quando o usuário de teclar ALT+C ou clicar no botão X de fechar janela?
Estou usando RDD DBFCDX, talvez com um SQL ou outro database fosse mais fácil.
Preciso saber quem está usando o sistema, quais usuários? Tem jeito fácil?
Penso em criar um banco de dados com uma flag de usuário ativo ou inativo.
O problema é aquele usuário que não sai com a tecla <Esc>. Tem jeito de brecar ou executar uma rotina quando o usuário de teclar ALT+C ou clicar no botão X de fechar janela?
Estou usando RDD DBFCDX, talvez com um SQL ou outro database fosse mais fácil.
Usando xHarbour v1.2.3 Rev. 10264 + BCC 5.8, Elchs' LetoDBf, DBFCDX e SIBRA para imprimir relatórios.
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Quem está usando o sistema?
Não entendi.
Desde quando precisar liberar Alt-C para o usuário?
Desde quando precisa liberar pro usuário fechar no X da janela?
Tá programando em modo totalmente console, é isso?
Desde quando precisar liberar Alt-C para o usuário?
Desde quando precisa liberar pro usuário fechar no X da janela?
Tá programando em modo totalmente console, é isso?
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
- Linguagemclipper
- Usuário Nível 3

- Mensagens: 240
- Registrado em: 16 Abr 2016 17:33
- Localização: Maceió/AL
- Contato:
Quem está usando o sistema?
Sim, estou usando em modo console.
Lembro que tinha um comando ou função que impedia o ALT+C, mas não lembro o nome. Todavia o cara ainda poderia apertar o X e fechar a janela.
Enfim, como é que eu faço para não ficar liberado essas coisas?
Lembro que tinha um comando ou função que impedia o ALT+C, mas não lembro o nome. Todavia o cara ainda poderia apertar o X e fechar a janela.
Enfim, como é que eu faço para não ficar liberado essas coisas?
Usando xHarbour v1.2.3 Rev. 10264 + BCC 5.8, Elchs' LetoDBf, DBFCDX e SIBRA para imprimir relatórios.
-
Adalberto
- Usuário Nível 3

- Mensagens: 343
- Registrado em: 01 Set 2007 01:09
- Localização: Santa Cruz de la Sierra - Bolivia
Quem está usando o sistema?
Caro amigo,
Anexei um arquivo: WinApi.Prg, tem várias coisas que eu estava coletando deste fórum e outros Forum (sou muito grato aos autores), entre essas belezas está a função ApagarBotonX()
Espero que seja útil.
Um grande abraço da Bolívia.
Adalberto
Anexei um arquivo: WinApi.Prg, tem várias coisas que eu estava coletando deste fórum e outros Forum (sou muito grato aos autores), entre essas belezas está a função ApagarBotonX()
Espero que seja útil.
Um grande abraço da Bolívia.
Adalberto
- Anexos
-
WINAPI.PRG- (3.16 KiB) Baixado 322 vezes
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Quem está usando o sistema?
Esqueça o que foi postado.
SetCancel( .F. )
coloque -GUI ou gtwvg.hbc, e o fechar janela vai ser traduzido para ESC.
Importante:
É provável que em modo GUI deve precisar outra rotina de erros, que não envie pra tela, que salve em disco, por exemplo.
Já aproveita e envia por email, faz log dos erros, etc.
SetCancel( .F. )
coloque -GUI ou gtwvg.hbc, e o fechar janela vai ser traduzido para ESC.
Importante:
É provável que em modo GUI deve precisar outra rotina de erros, que não envie pra tela, que salve em disco, por exemplo.
Já aproveita e envia por email, faz log dos erros, etc.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
Quem está usando o sistema?
Olá!
Crie uma tabela onde possa armazenar os dados de cada sessão do sistema. Por exemplo, a cada login bem sucedido, armazene o ID do usuário que logou, a data e hora do login e guarde o ID do registro da sessão. Quando o usuário fechar o sistema, localize o login deste usuário na tabela e atualize com a data e hora do logout. Pode armazenar nela também dados de logins mal sucedidos (tentativas de invasão, usuário errou senha 3 ou mais vezes...). Pode ter outra tabela vinculada à tabela de sessões, onde armazenará o log de atividades do usuário em cada sessão (o que o usuário fez no sistema... inclusões, alterações, exclusões, impressões...). Desta forma você terá um controle total do tempo de utilização do sistema e atividades realizadas, podendo a qualquer momento fazer auditoria.
No código abaixo, só finaliza o programa se teclar ESC:
Neste caso, pouco importa se é DBF ou SQL.Linguagemclipper escreveu:Preciso saber quem está usando o sistema, quais usuários? Tem jeito fácil?
Penso em criar um banco de dados com uma flag de usuário ativo ou inativo.
Crie uma tabela onde possa armazenar os dados de cada sessão do sistema. Por exemplo, a cada login bem sucedido, armazene o ID do usuário que logou, a data e hora do login e guarde o ID do registro da sessão. Quando o usuário fechar o sistema, localize o login deste usuário na tabela e atualize com a data e hora do logout. Pode armazenar nela também dados de logins mal sucedidos (tentativas de invasão, usuário errou senha 3 ou mais vezes...). Pode ter outra tabela vinculada à tabela de sessões, onde armazenará o log de atividades do usuário em cada sessão (o que o usuário fez no sistema... inclusões, alterações, exclusões, impressões...). Desta forma você terá um controle total do tempo de utilização do sistema e atividades realizadas, podendo a qualquer momento fazer auditoria.
Tem vários exemplos aqui no fórum para desabilitar fechamento de janela pelo "X". É só procurar.Linguagemclipper escreveu:O problema é aquele usuário que não sai com a tecla <Esc>. Tem jeito de brecar ou executar uma rotina quando o usuário de teclar ALT+C ou clicar no botão X de fechar janela?
No código abaixo, só finaliza o programa se teclar ESC:
Código: Selecionar todos
#include "set.ch"
#include "inkey.ch"
#include "hbgtinfo.ch"
Procedure Main()
REQUEST HB_LANG_PT
REQUEST HB_CODEPAGE_UTF8
REQUEST HB_GT_WVT_DEFAULT
hb_gtInfo( HB_GTI_WINTITLE , "Teste" )
hb_gtInfo( HB_GTI_ALTENTER, .T. ) // Permite <Alt-Enter> para tela cheia
hb_gtInfo( HB_GTI_CLOSABLE, .F. ) // Não deixa fechar no "X" nem no menu da barra de ferramentas
hb_gtinfo( HB_GTI_RESIZABLE, .T.)
Set( _SET_CANCEL, .F. ) // desabilita ALT+C e CTRL-PgBreak
CLS
While .T.
DispOutAt( 10, 10, "Pressione qualquer tecla para continuar ou [Esc] para encerrar..." )
Inkey(0)
If LastKey() == K_ESC
EXIT
Endif
Enddo
Return
//--------------------------------------------------
[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)
-
Kapiaba
- Colaborador

- Mensagens: 1908
- Registrado em: 07 Dez 2012 16:14
- Localização: São Paulo
- Contato:
Quem está usando o sistema?
Bom dia. Não uso mais DOS, más...
Download:
https://mega.nz/file/JRk3iCKS#c1aswmYwS ... rI45tXgOOk
Regards, saludos.
Código: Selecionar todos
// Impedindo o fechamento pelo X da janela ...
RUN C:\PASTASIS\CMDX
https://mega.nz/file/JRk3iCKS#c1aswmYwS ... rI45tXgOOk
Regards, saludos.
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Quem está usando o sistema?
É a GT que uso, não sei se as outras aceitam igual.
Não precisa usar nada da GTWVG, apenas indique e pronto.
Ela usa a GTWVT como base, que é a GUI default do Harbour, então talvez nem precise da GTWVG, e baste indicar -GUI na compilação.
Faça seu teste, é só acrescentar -GUI.
Código: Selecionar todos
REQUEST HB_CODEPAGE_PTISO
#include "inkey.ch"
PROCEDURE Main
LOCAL nKey := 0
Set( _SET_CODEPAGE, "PTISO" )
SET EVENTMASK TO INKEY_ALL - INKEY_MOVE + HB_INKEY_GTEVENT
SetMode(40,100)
CLS
DO WHILE nKey != K_ESC
nKey := Inkey(0)
IF nKey == HB_K_CLOSE
Alert( "Tentou fechar no X" )
ENDIF
ENDDO
RETURN
PROCEDURE HB_GTSYS
REQUEST HB_GT_WVG_DEFAULT
RETURN
Ela usa a GTWVT como base, que é a GUI default do Harbour, então talvez nem precise da GTWVG, e baste indicar -GUI na compilação.
Faça seu teste, é só acrescentar -GUI.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
- Linguagemclipper
- Usuário Nível 3

- Mensagens: 240
- Registrado em: 16 Abr 2016 17:33
- Localização: Maceió/AL
- Contato:
Quem está usando o sistema?
Pessoal, estou usando o xHarbour v1.2.1
Parece que vocês estão usando o Harbour
Joguei o SETCANCEL(.F.), blz!
No Hbmake apareceu uma lib gtwvg, adicionei ela, mas não aconteceu nada diferente. Cliquei no X e fechou sem executar a EXIT PROCEDURE
Parece que vocês estão usando o Harbour
Joguei o SETCANCEL(.F.), blz!
No Hbmake apareceu uma lib gtwvg, adicionei ela, mas não aconteceu nada diferente. Cliquei no X e fechou sem executar a EXIT PROCEDURE
Usando xHarbour v1.2.3 Rev. 10264 + BCC 5.8, Elchs' LetoDBf, DBFCDX e SIBRA para imprimir relatórios.
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
Quem está usando o sistema?
Olá!
Não testou o exemplo que coloquei acima? Funciona perfeitamente. Só sai teclando ESC...
O exemplo postado pelo Quintas dá erro:
O que falta incluir?
Não testou o exemplo que coloquei acima? Funciona perfeitamente. Só sai teclando ESC...
O exemplo postado pelo Quintas dá erro:
Código: Selecionar todos
hbmk2: Erro: Referenciado, faltando, mas funções desconhecida(s):
HB_GT_WVG_DEFAULT()[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)
- Linguagemclipper
- Usuário Nível 3

- Mensagens: 240
- Registrado em: 16 Abr 2016 17:33
- Localização: Maceió/AL
- Contato:
Quem está usando o sistema?
Esse REQUEST HB_GT_WVT_DEFAULT deu erro pra mim
Usando xHarbour v1.2.3 Rev. 10264 + BCC 5.8, Elchs' LetoDBf, DBFCDX e SIBRA para imprimir relatórios.
-
Paredes01
- Usuário Nível 2

- Mensagens: 52
- Registrado em: 20 Mai 2012 11:22
- Localização: Mérida, Yucatán, México
Quem está usando o sistema?
utilizo xharbour
modo consola 100%
**** [ agregar wvt.lib ]
#include "hbgtinfo.ch"
Request HB_GT_WVT_DEFAULT
Request HB_GT_WVT
Procedure Main()
SetCancel(.F.)
HB_GTInfo( HB_GTI_CLOSABLE, .F. ) //evita cerrar con [X]
Return
modo consola 100%
**** [ agregar wvt.lib ]
#include "hbgtinfo.ch"
Request HB_GT_WVT_DEFAULT
Request HB_GT_WVT
Procedure Main()
SetCancel(.F.)
HB_GTInfo( HB_GTI_CLOSABLE, .F. ) //evita cerrar con [X]
Return
- Linguagemclipper
- Usuário Nível 3

- Mensagens: 240
- Registrado em: 16 Abr 2016 17:33
- Localização: Maceió/AL
- Contato:
Quem está usando o sistema?
O erro diz que está faltando essa lib aí wvt.lib
Realmente não consta na minha instalação ela.
Ví no site do xharbour as contributions sem links... muito louco!
Como baixo essa lib?
Realmente não consta na minha instalação ela.
Ví no site do xharbour as contributions sem links... muito louco!
Como baixo essa lib?
Usando xHarbour v1.2.3 Rev. 10264 + BCC 5.8, Elchs' LetoDBf, DBFCDX e SIBRA para imprimir relatórios.
-
Paredes01
- Usuário Nível 2

- Mensagens: 52
- Registrado em: 20 Mai 2012 11:22
- Localização: Mérida, Yucatán, México
Quem está usando o sistema?
Cual xharbour utilizas con que compilador
cambia el nombre de la libreria de acuerdo a la versión de xharbour
El nombre de las funciones siguen igual
Saludos!!
cambia el nombre de la libreria de acuerdo a la versión de xharbour
El nombre de las funciones siguen igual
Saludos!!
-
Paredes01
- Usuário Nível 2

- Mensagens: 52
- Registrado em: 20 Mai 2012 11:22
- Localização: Mérida, Yucatán, México
Quem está usando o sistema?
Puedes descargar xharhour [libre]
con el tipo de compilador que utilices
link:
http://whosaway.com/
Saludos!!
con el tipo de compilador que utilices
link:
http://whosaway.com/
Saludos!!