Clipper On Line • Ver Tópico - Processo do windows

Processo do windows

Projeto Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

 

Processo do windows

Mensagempor leandrolinauer » 06 Fev 2018 10:34

Bom dia a todos
Notei um problema no meu sistema de uns dias pra cá, não descobri o que pode ser.
Em alguns Windows 7, o programa mesmo depois de finalizado ele continua no processo do windows em execução, ou seja:
Entro no sistema, funciona normalmente, mas quando saio dele, ele fecha a tela e no gerenciador de tarefas ele fecha nos aplicativos mas em processos nas imagens ele continua lá, uma, duas, n vezes que for aberto e finalizado.
o que pode ser?
Harbour 3.2 + GtWVW + QT + SQLite3 + DBF + SQL (Firebird)
leandrolinauer
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 373
Data de registro: 16 Out 2006 10:59
Cidade/Estado: Paranaíba-MS
Curtiu: 0 vez
Mens.Curtidas: 12 vezes

Processo do windows

Mensagempor Kapiaba » 06 Fev 2018 11:09

Na saida do seu programa, tente assim:

   DbUnLockAll()
   DbCommitAll()
   DbCloseAll()
   Release All
   HB_GCALL( .T. )
   CLEAR MEMORY
   // PostQuitMessage( 0 ) // Veja se a sua LIB tem algo equivalente a este comando.
   SET CURSOR ON
   __QUIT()

RETURN( NIL )


Abs
Kapiaba
Colaborador

Colaborador
 
Mensagens: 1765
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 310 vezes
Mens.Curtidas: 119 vezes

Processo do windows

Mensagempor leandrolinauer » 06 Fev 2018 14:06

Boa tarde.
Abaixo da forma como ficou juntamente como eu usava e funcionava, do nada começou a ocorrer isto em alguns windows, agora já ocorre no meu tbem.

Abaixo na sequencia

DbUnLockAll() //incluido, nao funcionou
DbCommitAll() //incluido, nao funcionou
DbCloseAll() //ja usava
Set Scoreboard On //uso
Set Delete Off //uso
Set Century Off //uso
Set Color To //uso
SetBlink(.T.) //uso
SetCursor(1) //uso

Estranho né, como que até a uns dias atrás estava tudo ok.
Continuo com o problema.
Detalhe
No meu pendrive executo e ele carrega no windows e quando sai do sistema ele finaliza certinho.
Quanto executo na pasta de instalação do sistema, já não funciona, sendo o mesmo copiado do pendrive na mesma hora.
Compilo no pendrive (onde eu crio) e instalo no lugar de instalação do sistema da loja, neste lugar não funciona.
Harbour 3.2 + GtWVW + QT + SQLite3 + DBF + SQL (Firebird)
leandrolinauer
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 373
Data de registro: 16 Out 2006 10:59
Cidade/Estado: Paranaíba-MS
Curtiu: 0 vez
Mens.Curtidas: 12 vezes

Processo do windows

Mensagempor asimoes » 06 Fev 2018 14:31

Houve alguma atualização do windows ?
Tentou copiar o conteúdo da pasta para uma outra unidade na mesma máquina pra ver se o problema ocorre ?
â–ºHarbour 3.x | Minigui xx-x | HwGuiâ—„
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4919
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 341 vezes
Mens.Curtidas: 258 vezes

Processo do windows

Mensagempor Kapiaba » 06 Fev 2018 14:35

// Mude a saida para uma FUNCAO, tipo assim e teste:

FUNCTION FINALIZAR()

   DbUnLockAll()
   DbCommitAll()
   DbCloseAll()
   Release All
   HB_GCALL( .T. )
   CLEAR MEMORY
   // PostQuitMessage( 0 ) // Veja se a sua LIB tem algo equivalente a este comando.
   SET CURSOR ON

   QUIT

   ? "saiu ou nao? Na linha..."

RETURN NIL


Maquina esta livre de virus? procure no forum por KILL PROCESS Tambem.

Abs
Kapiaba
Colaborador

Colaborador
 
Mensagens: 1765
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 310 vezes
Mens.Curtidas: 119 vezes

Processo do windows

Mensagempor asimoes » 06 Fev 2018 14:49

Mais informações por favor:

Qual é a versão do harbour 3.2 ou 3.4 ?
Qual compilador usado BCC x, GCC, LLVM/CLANG, MSVC ?
Qual é a versão do windows Xp, W7, W8,W10 ?
Usa HwGui ?
â–ºHarbour 3.x | Minigui xx-x | HwGuiâ—„
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4919
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 341 vezes
Mens.Curtidas: 258 vezes

Processo do windows

Mensagempor leandrolinauer » 06 Fev 2018 14:55

Boa tarde
HARBOUR
Harbour 3.2.0dev (r1601151502)
Copyright (c) 1999-2015, http://harbour-project.org/
COMPILADOR
GCC
Versão do Windows
Windows 7
HWgui
Não, neste projeto tenho GTWVW
Harbour 3.2 + GtWVW + QT + SQLite3 + DBF + SQL (Firebird)
leandrolinauer
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 373
Data de registro: 16 Out 2006 10:59
Cidade/Estado: Paranaíba-MS
Curtiu: 0 vez
Mens.Curtidas: 12 vezes

Processo do windows

Mensagempor asimoes » 06 Fev 2018 15:11

oK.

Faz um teste, inclui esse código no seu programa principal
Antes de encerrar a aplicação chama a função hb_ExitProcess()
FUNCTION FINALIZAR()

   DbUnLockAll()
   DbCommitAll()
   DbCloseAll()
   Release All
   HB_GCALL( .T. )
   CLEAR MEMORY
   // PostQuitMessage( 0 ) // Veja se a sua LIB tem algo equivalente a este comando.
   SET CURSOR ON

  hb_ExitProcess() // <========

RETURN NIL

#pragma BEGINDUMP

#include "hbapi.h"
#include "windows.h"

HB_FUNC( HB_EXITPROCESS )
{
   ExitProcess( 0 );
}
#pragma ENDDUMP
â–ºHarbour 3.x | Minigui xx-x | HwGuiâ—„
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4919
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 341 vezes
Mens.Curtidas: 258 vezes

Processo do windows

Mensagempor asimoes » 06 Fev 2018 15:15

A função hb_ExitProcess() vai remover a aplicação do processo do windows
â–ºHarbour 3.x | Minigui xx-x | HwGuiâ—„
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4919
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 341 vezes
Mens.Curtidas: 258 vezes

Processo do windows

Mensagempor Kapiaba » 06 Fev 2018 15:21

Olá, teste este executável e reporte o que ocorre ai na sua máquina. TUTOR04.EXE Fonte junto.

Abs.
Anexos
TUTOR04.ZIP
(1.76 MiB) Baixado 71 vezes
Kapiaba
Colaborador

Colaborador
 
Mensagens: 1765
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 310 vezes
Mens.Curtidas: 119 vezes

Processo do windows

Mensagempor leandrolinauer » 06 Fev 2018 15:31

Boa tarde
TUTOR04, funciona certinho.

hb_ExitProcess() => congela o programa
Harbour 3.2 + GtWVW + QT + SQLite3 + DBF + SQL (Firebird)
leandrolinauer
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 373
Data de registro: 16 Out 2006 10:59
Cidade/Estado: Paranaíba-MS
Curtiu: 0 vez
Mens.Curtidas: 12 vezes

Processo do windows

Mensagempor Kapiaba » 06 Fev 2018 15:37

Asimoes, seu exemplo funciona perfeito com Harbour y xHarbour.

#include "FiveWin.ch"

static oWnd

//----------------------------------------------------------------------------//

function Main()

   local oIco, oBar, oBmp

   DEFINE ICON oIco FILE "..\icons\fax.ico"

   DEFINE WINDOW oWnd FROM 1, 1 TO 22, 75 ;
      TITLE "FiveWin sample" ;
      MENU  BuildMenu() ;
      COLOR "B/W" ;
      ICON oIco

   DEFINE BUTTONBAR oBar _3D SIZE 26, 27 OF oWnd

   DEFINE BUTTON OF oBar FILENAME "..\bitmaps\16x16\new.bmp" FLAT ;
      ACTION MsgInfo( "New" ) ;
      TOOLTIP "Creates a new document"

   DEFINE BUTTON OF oBar FILENAME "..\bitmaps\16x16\open.bmp" FLAT ;
      ACTION MsgInfo( cGetFile( "*.*", "Select a document to open" ) ) ;
      TOOLTIP "Opens a document" WHEN .f.

   DEFINE BUTTON OF oBar FILENAME "..\bitmaps\16x16\floppy.bmp" FLAT ;
      ACTION MsgInfo( Time() ) TOOLTIP "Saves this document"

   DEFINE BUTTON OF oBar FILENAME "..\bitmaps\16x16\printer.bmp" FLAT ;
      ACTION MsgInfo( "Prints this document" ) TOOLTIP "Print this document" GROUP

   DEFINE BUTTON OF oBar FILENAME "..\bitmaps\16x16\prop.bmp" FLAT ;
      ACTION PrinterSetup() TOOLTIP "Setup the printer"

   DEFINE BUTTON OF oBar FILENAME "..\bitmaps\16x16\HelpInd.bmp" FLAT ;
      ACTION MsgInfo( Version() ) TOOLTIP "A multiple lines" + ;
      Chr( 13 ) + Chr( 10 ) + "tooltip!" GROUP

   DEFINE BUTTON OF oBar FILENAME "..\bitmaps\16x16\Help.bmp" FLAT ;
      ACTION MsgInfo( "fivewin power!" ) TOOLTIP "fivewin power!"

   DEFINE BUTTON OF oBar FILENAME "..\bitmaps\16x16\Exit.bmp" FLAT ;
          ACTION( FINALIZAR( oWnd ) ) TOOLTIP "Exit this app" GROUP

   //   ACTION oWnd:End() TOOLTIP "Exit this app" GROUP

   DEFINE MESSAGE OF oWnd ;
      PROMPT FWVERSION + " " + FWCOPYRIGHT ;
      NOINSET CENTERED KEYBOARD DATE CLOCK

   DEFINE BITMAP oBmp FILENAME "..\bitmaps\fiveback.bmp"

   oWnd:bPainted = { | hDC | BmpTiled( hDC, oWnd, oBmp ) }

   ACTIVATE WINDOW oWnd /*;
      VALID MsgYesNo( "Do you want to quit ?" ) */

return nil

//----------------------------------------------------------------------------//

function BuildMenu()

   local oMenu

   MENU oMenu
      MENUITEM "Information"
      MENU
         MENUITEM "&About..." ;
            ACTION MsgInfo( FWDESCRIPTION ) ;
            FILENAME "..\bitmaps\16x16\info.bmp"
         SEPARATOR
         MENUITEM "&End..."  ;
            ACTION( FINALIZAR( oWnd ) ) FILENAME "..\bitmaps\16x16\exit.bmp"

         //   ACTION oWnd:End() FILENAME "..\bitmaps\16x16\exit.bmp"

      ENDMENU

      MENUITEM "&Clients"
      MENU
         MENUITEM "&New..." ;
            ACTION ( MsgStop( "New Clients" ),;
                     oWnd:Say( 5, 5, "New Clients...", "GR+/G" ) ) ;
            FILENAME "..\bitmaps\16x16\faces.bmp"

         MENUITEM "&Modify..."  ACTION MsgInfo( "Modif. Clients" ) ;
            FILENAME "..\bitmaps\edit.bmp"

         MENUITEM "&Delete..."  ACTION MsgAlert( "Del Clients" ) ;
            FILENAME "..\bitmaps\16x16\delete.bmp"

         SEPARATOR

         MENUITEM "&Browse..."  ACTION MsgInfo( "Browse Clients" ) ;
            FILENAME "..\bitmaps\16x16\browse.bmp"

      ENDMENU

      MENUITEM "&Utilities"
      MENU
         MENUITEM "&Calculator..." ACTION WinExec( "Calc" ) ;
            FILENAME "..\bitmaps\16x16\calc.bmp"

         MENUITEM "&Internet..." ;
            ACTION WinExec( "start iexplore www.fivetech.com", 0 ) ;
            FILENAME "..\bitmaps\16x16\explorer.bmp"
      ENDMENU
   ENDMENU

return oMenu

//----------------------------------------------------------------------------//

STATIC FUNCTION BmpTiled( hDC, oWnd, oBmp )

   local nWidth := oWnd:nWidth(), nHeight := oWnd:nHeight()
   local nRow := 0, nCol := 0, n
   local nBmpWidth  := oBmp:nWidth(),  nBmpHeight := oBmp:nHeight()

   if oBmp:hBitmap == 0
      return nil
   endif

   while nRow < nHeight
      nCol = 0
      while nCol < nWidth
         PalBmpDraw( hDC, nRow, nCol, oBmp:hBitmap )
         nCol += nBmpWidth
      end
      nRow += nBmpHeight
   end

return nil

//----------------------------------------------------------------------------//

FUNCTION FINALIZAR( oWnd )

   // ? "saiu ou nao? Na linha: 148"

   DbUnLockAll()
   DbCommitAll()
   DbCloseAll()
   Release All
   HB_GCALL( .T. )
   CLEAR MEMORY

   oWnd:End()  // desligo a janela

   // PostQuitMessage( 0 ) // FiveWin the Power

   HB_EXITPROCESS() // Asimoes - Harbour y xHarbour funciona.

   SET CURSOR ON
   __QUIT()

RETURN NIL

#pragma BEGINDUMP

#include "hbapi.h"
#include "windows.h"

HB_FUNC( HB_EXITPROCESS )
{
   ExitProcess( 0 );
}
#pragma ENDDUMP


Abs.
Kapiaba
Colaborador

Colaborador
 
Mensagens: 1765
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 310 vezes
Mens.Curtidas: 119 vezes

Processo do windows

Mensagempor leandrolinauer » 06 Fev 2018 15:43

Estou quase descobrindo, agora vai ser uma caçada as bruxas.
Executei um sistema mais velho, e este mais velho funcionou perfeitamente.
Agora é descobrir em que ponto da modificação fez ocorrer este problema.

Grato a todos.
-:]
Harbour 3.2 + GtWVW + QT + SQLite3 + DBF + SQL (Firebird)
leandrolinauer
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 373
Data de registro: 16 Out 2006 10:59
Cidade/Estado: Paranaíba-MS
Curtiu: 0 vez
Mens.Curtidas: 12 vezes

Processo do windows

Mensagempor leandrolinauer » 06 Fev 2018 16:56

Fiz uma pesquisa pente fino na biblioteca e não encontrei nada de anormal nas ultimas mudanças que fiz na ultima semana, fui alterando para como era e não resolveu o problema.
Outro detalhe: só esta ocorrendo isto em WINDOWS 7, fiz um teste em um WINDOWS 10 e não ocorre isto.
Vou verificar nos XPs e posto novamente
Grato a todos.
Harbour 3.2 + GtWVW + QT + SQLite3 + DBF + SQL (Firebird)
leandrolinauer
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 373
Data de registro: 16 Out 2006 10:59
Cidade/Estado: Paranaíba-MS
Curtiu: 0 vez
Mens.Curtidas: 12 vezes

Processo do windows

Mensagempor JoséQuintas » 06 Fev 2018 18:04

O Harbour permite usar várias LIBs gráficas, e até sem lib gráfica.

Exemplo a investigar:

Compilou, mas deixou "restos" pra usar console.
Carrega o EXE, ele usa o console, e depois usa a GTWVW.... ao fechar GTWVW, continua o console.
Carrega o EXE, ele usa GTWW, janela GTWVW... ao fechar a janela... fecha só a janela não o programa, porque ficou algo pendente rodando.

"Tela Windows" não é tela console. O programa não precisa tela/janela pra funcionar.

O gerenciador de tarefas mostra as "telas" que estão sendo executadas, mas não os programas sem tela.
Algumas vezes, o programa fica como subprograma do prompt ou algo assim.

HB_GTSYS é onde se define a GT default, ou através de parâmetro na compilação.

É assim no Harbour, na HWGUI, MINIGUI, qualquer coisa.

Nota: não sei se é o caso, mas multithread também tem a ver.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18007
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

Próximo



Retornar para Harbour

Quem está online

Usuários vendo este fórum: Google [Bot] e 11 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro