Harbour 32bits x 64bits

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

Moderador: Moderadores

Hasse
Usuário Nível 4
Usuário Nível 4
Mensagens: 820
Registrado em: 19 Out 2004 10:30
Localização: Jaraguá do Sul - SC

Harbour 32bits x 64bits

Mensagem por Hasse »

Boa noite colegas.

Estou dando os primeiros passos para migrar do xHarbour para o Harbour (com mingw).
Eu baixei o "harbour-nightly-win.exe", que foi instalado na pasta C:\HB32

No meu NB de 32bits funcionou bem, mas no Desk_top de 64bits não.

O executável simplesmente aborta sem qualquer mensagem. Nem um CLEAR inicial é executado.

Certamente o motivo deve ser o fato de serem de 32bits e não 64bits.

Qual a versão que devo instalar para que funcione corretamente.

OUTRA PERGUNTA:
O executável compilado em 64bits roda em 32bits ?
Hasse
CP200 / CP500 / Basic / dBase III / dBase IV / Clipper Summer / RTlink / Exospace.
Clipper 5.3b / Blinker 7.0 / CDX com TAG
xHarbour 1.2.1-6604 / Borland C++ (5.5.1) 32 bit / HBmake.
Harbour 3.2.0dev (r1412121623) / MINGW / HBM2 / MiniGui HMG 3.1.4 / IDE (Roberto Lopez).
"Conheça todas as teorias, domine todas as técnicas, mas, quando tocares uma alma humana, seja apenas outra alma humana." (C.G.Jung)
Avatar do usuário
rochinha
Administrador
Administrador
Mensagens: 4664
Registrado em: 18 Ago 2003 20:43
Localização: São Paulo - Brasil
Contato:

Harbour 32bits x 64bits

Mensagem por rochinha »

Amiguinho,

Este comportamento é no mínimo estranho já que aplicativos 32 bits rodam normalmente.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar do usuário
Jairo Maia
Moderador
Moderador
Mensagens: 2785
Registrado em: 16 Ago 2010 13:46
Localização: Campinas-SP

Harbour 32bits x 64bits

Mensagem por Jairo Maia »

Olá Hasse,

Apenas acrescentando ao que o colega Rochicha já disse (ou seja, aplicativos em 32 bits rodam normalmente em OS 64 bits), a resposta a sua segunda pergunta que é sobre aplicativos compilados em 64 bits rodam em 32 bits, a resposta é NÃO. Aplicativos compilados em 64 bits não rodam em 32 bits.
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Hasse
Usuário Nível 4
Usuário Nível 4
Mensagens: 820
Registrado em: 19 Out 2004 10:30
Localização: Jaraguá do Sul - SC

Harbour 32bits x 64bits

Mensagem por Hasse »

Bom dia.

Então está certo que tenho algum problema de configuração no meu Desktop.

Obrigado aos colegas Rochinha e Jairo.

Um Feliz Natal e Próspero ano de 2015, também estendido a todos os colegas deste fantástico Fórum.
Hasse
CP200 / CP500 / Basic / dBase III / dBase IV / Clipper Summer / RTlink / Exospace.
Clipper 5.3b / Blinker 7.0 / CDX com TAG
xHarbour 1.2.1-6604 / Borland C++ (5.5.1) 32 bit / HBmake.
Harbour 3.2.0dev (r1412121623) / MINGW / HBM2 / MiniGui HMG 3.1.4 / IDE (Roberto Lopez).
"Conheça todas as teorias, domine todas as técnicas, mas, quando tocares uma alma humana, seja apenas outra alma humana." (C.G.Jung)
Hasse
Usuário Nível 4
Usuário Nível 4
Mensagens: 820
Registrado em: 19 Out 2004 10:30
Localização: Jaraguá do Sul - SC

Harbour 32bits x 64bits

Mensagem por Hasse »

Boa noite colegas.

Problema encontrado.....

Acontece que o Harbour abre uma segunda janela console para rodar o aplicativo, e uma das mensagens, na abertura, usa a impressão de pequena mensagem com "?". Em seguida a janela é fechada tão rapidamente que não dá tempo de ver esta mensagem.

Há uma forma do aplicativo usar a mesma janela console ? (isto é, sem abrir aquela segunda janela console ?)
Hasse
CP200 / CP500 / Basic / dBase III / dBase IV / Clipper Summer / RTlink / Exospace.
Clipper 5.3b / Blinker 7.0 / CDX com TAG
xHarbour 1.2.1-6604 / Borland C++ (5.5.1) 32 bit / HBmake.
Harbour 3.2.0dev (r1412121623) / MINGW / HBM2 / MiniGui HMG 3.1.4 / IDE (Roberto Lopez).
"Conheça todas as teorias, domine todas as técnicas, mas, quando tocares uma alma humana, seja apenas outra alma humana." (C.G.Jung)
Avatar do usuário
rochinha
Administrador
Administrador
Mensagens: 4664
Registrado em: 18 Ago 2003 20:43
Localização: São Paulo - Brasil
Contato:

Harbour 32bits x 64bits

Mensagem por rochinha »

Amiguinho,

Algumas vezes isso aconteceu comigo compilando programas em fivewin. Abria uma janela console, mas executava o aplicativo em Windows. Se eu fechasse esta tela console quebrava o aplicativo em Windows.

No meu caso, usando Borland C++ 5.5 era a falta ou sobra de um parâmetro na linkagem.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7929
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

Harbour 32bits x 64bits

Mensagem por Itamar M. Lins Jr. »

Tenta ai:
Colocar antes da função main.

Código: Selecionar todos

ANNOUNCE HB_GTSYS
REQUEST HB_GT_GUI_DEFAULT
E na linha de comando do hbmk2
-gtwin //se for win -gtwvt ou gtwvg ou -gtgui // (Hwgui/Minigui)
ou no arquivo .hbp colocar
{win}gt=gtgui
...
conforme o drive que usar.

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Hasse
Usuário Nível 4
Usuário Nível 4
Mensagens: 820
Registrado em: 19 Out 2004 10:30
Localização: Jaraguá do Sul - SC

Harbour 32bits x 64bits

Mensagem por Hasse »

Bom dia colegas.

Especificamente neste caso, a execução do aplicativo é em modo console.

Fiz a inclusão das linhas sugeridas pelo colega Itamar, mas o executável passa a trabalhar de forma oculta. Não abre, nem outra janela e nem na mesma janela, e fica em Background, e nem aparece na Barra de Tarefas.

Abaixo as primeiras linhas do .hbp, na parte anterior ao início da declaração dos prg's:
-oFio402x
-inc
-compr=yes
-quiet
-lxhb
-lhbwin
-lhbct
-gui
Já tentei tirar a última linha acima, mas também não funciona.



Também estou tentando encontrar a forma correta de ter uma lista de erros gravada em arquivo LOG, quando há, mas também sem sucesso. Usei as linhas abaixo no .hbp, mas nada acontece:
-echo=_ErrorLog.txt
-exitstr
Hasse
CP200 / CP500 / Basic / dBase III / dBase IV / Clipper Summer / RTlink / Exospace.
Clipper 5.3b / Blinker 7.0 / CDX com TAG
xHarbour 1.2.1-6604 / Borland C++ (5.5.1) 32 bit / HBmake.
Harbour 3.2.0dev (r1412121623) / MINGW / HBM2 / MiniGui HMG 3.1.4 / IDE (Roberto Lopez).
"Conheça todas as teorias, domine todas as técnicas, mas, quando tocares uma alma humana, seja apenas outra alma humana." (C.G.Jung)
Avatar do usuário
Jairo Maia
Moderador
Moderador
Mensagens: 2785
Registrado em: 16 Ago 2010 13:46
Localização: Campinas-SP

Harbour 32bits x 64bits

Mensagem por Jairo Maia »

Olá Hasse,

Em seu arquivo .Hbp, acrescente o parâmetro -gui

E para que não seja aberta a janela extra, você não pode usar arquivo .Bat para abrir o aplicativo. O ícone do windows deve apontar diretamente para o executável.

Se este aplicativo estiver sendo aberto por outro aplicativo Harbour, use:

Código: Selecionar todos

Hb_OpenProcess( "C:\Caminho\Nome_do_Aplicativo.exe" )
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7929
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

Harbour 32bits x 64bits

Mensagem por Itamar M. Lins Jr. »

Especificamente neste caso, a execução do aplicativo é em modo console.
Então não é -gui
Use -gtwin
Que é o padrão p/ console.

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7929
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

Harbour 32bits x 64bits

Mensagem por Itamar M. Lins Jr. »

E antes da função main
Remove a REQUEST HB_GT_GUI_DEFAULT -> só p/ Mingui,HBQT,Hwgui...

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Hasse
Usuário Nível 4
Usuário Nível 4
Mensagens: 820
Registrado em: 19 Out 2004 10:30
Localização: Jaraguá do Sul - SC

Harbour 32bits x 64bits

Mensagem por Hasse »

Boa tarde

Janela Console: Perfeito. Funcionando como planejado.

Arquivo de erro de compilação: Como mencionado acima, ainda não consegui gravar um arquivo de saída para os erros de compilação. Usei as linhas abaixo no .hbp
-echo=_ErrorLog.txt
-exitstr
Mas não funciona. Como se faz isto ?
Hasse
CP200 / CP500 / Basic / dBase III / dBase IV / Clipper Summer / RTlink / Exospace.
Clipper 5.3b / Blinker 7.0 / CDX com TAG
xHarbour 1.2.1-6604 / Borland C++ (5.5.1) 32 bit / HBmake.
Harbour 3.2.0dev (r1412121623) / MINGW / HBM2 / MiniGui HMG 3.1.4 / IDE (Roberto Lopez).
"Conheça todas as teorias, domine todas as técnicas, mas, quando tocares uma alma humana, seja apenas outra alma humana." (C.G.Jung)
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7929
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

Harbour 32bits x 64bits

Mensagem por Itamar M. Lins Jr. »

Ola!
Digita ai!

Código: Selecionar todos

\>hbmk2 seuprojeto.hbp -trace -info 1> hbcomplog.txt 2>&1 
Se já tem -trace e -info no .hbp não precisa colocar na linha

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Hasse
Usuário Nível 4
Usuário Nível 4
Mensagens: 820
Registrado em: 19 Out 2004 10:30
Localização: Jaraguá do Sul - SC

Harbour 32bits x 64bits

Mensagem por Hasse »

Boa noite.

A linha de comando no ambiente console funciona, mas o seu comportamento é muito estranho.

1)-Usando a Linha de Comando:
-É necessário rodar a Linha de Comando antes de cada compilação, caso contrário a arquivo _FioLog.txt não é atualizado.

2)-Incluindo -trace e -info no arquivo .hbp:
-Só atualiza o arquivo _FioLog.txt caso a Linha de Compilação seja: hbmk2 fio > _FioLog.txt

3)-Arquivo _FioLog.txt:
As informações são dispersas.
Depois de compilado, intruduzi uma função inexistente, dididi(), em Fio402.prg e compilei novamente. O arquivo _FioLog.txt não reportou o erro, mas ele foi reportado no console. Vejam os arquivos do Anexo: _FioLog.txt e _MonitLog.txt que é a cópia do monitor. Mesmo usando -rebuild o resultado é o mesmo.

4)-Também não informa a linha do prg onde está o erro. Isto é normal ?
Anexos
_MonitLog.txt
(237 Bytes) Baixado 69 vezes
_FioLog.txt
(2.82 KiB) Baixado 52 vezes
Hasse
CP200 / CP500 / Basic / dBase III / dBase IV / Clipper Summer / RTlink / Exospace.
Clipper 5.3b / Blinker 7.0 / CDX com TAG
xHarbour 1.2.1-6604 / Borland C++ (5.5.1) 32 bit / HBmake.
Harbour 3.2.0dev (r1412121623) / MINGW / HBM2 / MiniGui HMG 3.1.4 / IDE (Roberto Lopez).
"Conheça todas as teorias, domine todas as técnicas, mas, quando tocares uma alma humana, seja apenas outra alma humana." (C.G.Jung)
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Harbour 32bits x 64bits

Mensagem por JoséQuintas »

Reparei na sua assinatura:
Harbour 3.3.1 minigui

Se está usando Harbour "não padrão", a solução padrão pode não resolver.

No Harbour padrão, seja 3.2 ou 3.4, basta compilar padrão.
hbmk2 arquivo.prg

Pra mim tá parecendo que está misturando GUI e console, por isso não vê mensagens de erro, e vê janela duplicada.
Mas não me pergunte sobre ajutes de configuração em minigui ou hbide.
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/
Responder