Converter de Clipper para Harbour
Moderador: Moderadores
- aprendiz_ce
- Usuário Nível 3

- Mensagens: 147
- Registrado em: 21 Jul 2011 10:05
- Localização: Fortaleza/CE
Converter de Clipper para Harbour
Prezados,
Depois de converter os fontes de Clipper para Harbour, vou puder compila-los tanto para Windows 32/64 e para Linux i386/amd64?
Outra dúvida: Como faço para que o executável possa ficar "maximizado" ou "full screen" tanto no ambiente gráfico, prompt de comando (windows) ou terminal (linux)?
Grato a todos e aguardo qualquer ajuda.
Depois de converter os fontes de Clipper para Harbour, vou puder compila-los tanto para Windows 32/64 e para Linux i386/amd64?
Outra dúvida: Como faço para que o executável possa ficar "maximizado" ou "full screen" tanto no ambiente gráfico, prompt de comando (windows) ou terminal (linux)?
Grato a todos e aguardo qualquer ajuda.
Sucesso é a soma de pequenos esforços, repetidos o tempo todo.
- Jairo Maia
- Moderador
- Mensagens: 2785
- Registrado em: 16 Ago 2010 13:46
- Localização: Campinas-SP
Converter de Clipper para Harbour
Olá aprendiz_ce,
Todas essas questões já foram exaustivamente discutidas e esclarecidas neste fórum. Use o mecanismo de busca do fórum e tenha suas respostas. Acho mais fácil desta forma.
Todas essas questões já foram exaustivamente discutidas e esclarecidas neste fórum. Use o mecanismo de busca do fórum e tenha suas respostas. Acho mais fácil desta forma.
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)
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)
- aprendiz_ce
- Usuário Nível 3

- Mensagens: 147
- Registrado em: 21 Jul 2011 10:05
- Localização: Fortaleza/CE
Converter de Clipper para Harbour
Olá Jairo,
Na verdade eu já venho fazendo isso, ou seja, pesquisando e me virando com o que encontro aqui pelo fórum. O problema é que não achei nada especifico com relação a minha dúvida. Sempre encontro, mas geralmente são bem mais complexas e mais abrangentes que as coisas que procuro.
Será que o colega poderia pelo menos me informar sobre a questão de compilar para multiplataforma?
Grato pela sua atenção.
Na verdade eu já venho fazendo isso, ou seja, pesquisando e me virando com o que encontro aqui pelo fórum. O problema é que não achei nada especifico com relação a minha dúvida. Sempre encontro, mas geralmente são bem mais complexas e mais abrangentes que as coisas que procuro.
Será que o colega poderia pelo menos me informar sobre a questão de compilar para multiplataforma?
Grato pela sua atenção.
Sucesso é a soma de pequenos esforços, repetidos o tempo todo.
- Jairo Maia
- Moderador
- Mensagens: 2785
- Registrado em: 16 Ago 2010 13:46
- Localização: Campinas-SP
Converter de Clipper para Harbour
Olá aprendiz_ce,
Mas não é assim que funciona! Não trabalho com Linux, mas salvo se estou extremamente enganado, não existe como você criar um executável que funcione tanto em windows como em Linux.
Para qual plataforma seu sistema irá rodar você deve decidir quando for compilar, e se for o caso de no mesmo fonte pretender que seja multiplataforma, usar as condicionais #ifdef #endif para cada plataforma.
Por exemplo, se você usar em seu sistema para a plataforma Windows a GT WVG por exemplo, não será compatível em Linux. Entre muitas outras funções...
Linux e Windows, falam línguas diferentes.
[x]Harbour suportam multiplataformas, porém, não Pressupõe que os fontes podem ser os mesmos.
Mas não é assim que funciona! Não trabalho com Linux, mas salvo se estou extremamente enganado, não existe como você criar um executável que funcione tanto em windows como em Linux.
Para qual plataforma seu sistema irá rodar você deve decidir quando for compilar, e se for o caso de no mesmo fonte pretender que seja multiplataforma, usar as condicionais #ifdef #endif para cada plataforma.
Por exemplo, se você usar em seu sistema para a plataforma Windows a GT WVG por exemplo, não será compatível em Linux. Entre muitas outras funções...
Linux e Windows, falam línguas diferentes.
[x]Harbour suportam multiplataformas, porém, não Pressupõe que os fontes podem ser os mesmos.
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)
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)
- aprendiz_ce
- Usuário Nível 3

- Mensagens: 147
- Registrado em: 21 Jul 2011 10:05
- Localização: Fortaleza/CE
Converter de Clipper para Harbour
Olá Jairo, Bom Dia!
Pois é, o meu aplicativo hoje em dia roda no Windows/32 normalmente e no Linux de forma emulada. Quero dar um "Up" no mesmo e com isso deixa-lo rodando no Windows/64 e se possível no Linux também, mas utilizando os mesmos fontes. Agora, se for para manter dos fontes distintos penso que para mim não seria viável, mas se o mesmo puder rodar no Linux de forma emulada, já me atenderia. Que emulador eu poderia usar, o colega saberia me dizer? Foi basicamente por essas questões e a tela "full screen" que decide pedir orientações aqui no fórum, visando conciliar as coisas e deixar tudo certinho.
Grato e se o colega tiver alguma coisa a mais acrescentar fico agradecido.
Forte abraço!
Pois é, o meu aplicativo hoje em dia roda no Windows/32 normalmente e no Linux de forma emulada. Quero dar um "Up" no mesmo e com isso deixa-lo rodando no Windows/64 e se possível no Linux também, mas utilizando os mesmos fontes. Agora, se for para manter dos fontes distintos penso que para mim não seria viável, mas se o mesmo puder rodar no Linux de forma emulada, já me atenderia. Que emulador eu poderia usar, o colega saberia me dizer? Foi basicamente por essas questões e a tela "full screen" que decide pedir orientações aqui no fórum, visando conciliar as coisas e deixar tudo certinho.
Grato e se o colega tiver alguma coisa a mais acrescentar fico agradecido.
Forte abraço!
Sucesso é a soma de pequenos esforços, repetidos o tempo todo.
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Converter de Clipper para Harbour
Acabo de pegar outro sistema em Clipper Summer pra converter pra Harbour.
Numa primeira etapa, isso significa apenas compilar com Harbour.
Acabo de pegar este erro:
Abre com parêntesis, e fecha com colchete.
Não sei como isso compilava no Clipper Summer.
Sobre a tela full screen, isso dá mais problema do que solução.
Qualquer programa que se abra vai atrapalhar o full screen.
O melhor é usar maximizado e pronto.
Se usar GTWVG ela configura o melhor fonte automaticamente, e o usuário ainda pode clicar no maximizar.
Numa primeira etapa, isso significa apenas compilar com Harbour.
Acabo de pegar este erro:
Código: Selecionar todos
@ 21,37 say str(NFNUMERO]
Não sei como isso compilava no Clipper Summer.
Sobre a tela full screen, isso dá mais problema do que solução.
Qualquer programa que se abra vai atrapalhar o full screen.
O melhor é usar maximizado e pronto.
Se usar GTWVG ela configura o melhor fonte automaticamente, e o usuário ainda pode clicar no maximizar.
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/
- Jairo Maia
- Moderador
- Mensagens: 2785
- Registrado em: 16 Ago 2010 13:46
- Localização: Campinas-SP
Converter de Clipper para Harbour
Olá Aprendiz,
Olá José,
Mas você não precisa manter fontes distintas. Se você precisa que o mesmo sistema rode em plataformas diferentes, basta você fazer a compilação para as respectivas plataformas. Se windows, compile em Windows, se para Linux, compile no Linux.aprendiz_ce escreveu:Quero dar um "Up" no mesmo e com isso deixa-lo rodando no Windows/64 e se possível no Linux também, mas utilizando os mesmos fontes. Agora, se for para manter dos fontes distintos penso que para mim não seria viável
Nunca usei nenhum tipo de emulador para nenhuma situação. Mas no seu caso, acho que melhor do que usar emulador, seria compilar como eu disse acima, e dispensa uso de emulador.aprendiz_ce escreveu:Que emulador eu poderia usar
Quanto a tela cheia, acabei de postar em Contribuições, Dicas e Tutoriais um exemplo melhorado que já havia postado no fórum há algum tempo respondendo a um colega. Acho que pode ajudar, pois é compatível tanto em Window como Linux. Veja aqui: Tela Cheia Usando GTWVT com Windows ou Linux. Espero que ajude.aprendiz_ce escreveu:Foi basicamente por essas questões e a tela "full screen" que decide pedir orientações aqui no fórum
Olá José,
José, no caso deste tópico o interesse também é Linux, e a GTWVG não é compatível. Outrossim, uso a GTWVG, e faço o ajuste das telas calculando a resolução. Como seria fazer esse ajuste automaticamente? Já vi vários comandos sobre isso no arquivo .ch mas não consigo ter sucesso. Poderia dar uma dica?JoséQuintas escreveu:Se usar GTWVG ela configura o melhor fonte automaticamente, e o usuário ainda pode clicar no maximizar.
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)
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)
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Converter de Clipper para Harbour
Não percebi sobre rodar também em Linux.
Sobre GTWVG:
Acho que habilitaram a opção de maximizar, usando hb_gtInfo(), mas não é essa opção que uso.
A GTWVG já ajusta ao que considera ser o melhor fonte.
Eu simplesmente salvo a configuração em uso, e quando abrir já retorno pra ela.
Com isto, o usuário ajusta do jeito que quiser e vai estar do jeito que ele deixou.
E se por acaso trocar de monitor e a configuração não servir mais, a GTWVG já refaz o ajuste, e passa a valer a nova configuração.
Uso esta função pra salvar/restaurar no registro do Windows (o que vincula automaticamente ao terminal).
Uso Lucida Console como default.
Sobre GTWVG:
Acho que habilitaram a opção de maximizar, usando hb_gtInfo(), mas não é essa opção que uso.
A GTWVG já ajusta ao que considera ser o melhor fonte.
Eu simplesmente salvo a configuração em uso, e quando abrir já retorno pra ela.
Com isto, o usuário ajusta do jeito que quiser e vai estar do jeito que ele deixou.
E se por acaso trocar de monitor e a configuração não servir mais, a GTWVG já refaz o ajuste, e passa a valer a nova configuração.
Uso esta função pra salvar/restaurar no registro do Windows (o que vincula automaticamente ao terminal).
Uso Lucida Console como default.
Código: Selecionar todos
FUNCTION GtSetupFont( lSave )
LOCAL cFontSize, cFontWidth, cFontWeight, cRootKey
lSave := iif( lSave == NIL, .F., lSave )
cRootKey := "HKCU\Software\JPA Tecnologia\"
IF lSave
Win_RegWrite( cRootKey + "FontSize", LTrim( Str( HB_GtInfo( HB_GTI_FONTSIZE ) ) ) )
Win_RegWrite( cRootKey + "FontWidth", LTrim( Str( HB_GtInfo( HB_GTI_FONTWIDTH ) ) ) )
Win_RegWrite( cRootKey + "FontWeight", LTrim( Str( HB_GtInfo( HB_GTI_FONTWEIGHT ) ) ) )
ELSE
hb_GtInfo( HB_GTI_FONTNAME, "Lucida Console" )
IF Win_RegRead( cRootKey + "FontSize" ) != NIL
cFontSize := Win_RegRead( cRootKey + "FontSize" )
cFontWidth := Win_RegRead( cRootKey + "FontWidth" )
cFontWeight := Win_RegRead( cRootKey + "FontWeight" )
IF Val( cFontSize ) > 0 .AND. Val( cFontWidth ) > 0 .AND. Val( cFontWeight ) > 0
hb_gtInfo( HB_GTI_FONTSIZE, Val( cFontSize ) )
hb_gtInfo( HB_GTI_FONTWIDTH, Val( cFontWidth ) )
hb_gtInfo( HB_GTI_FONTWEIGHT, Val( cFontWeight ) )
ENDIF
ENDIF
ENDIF
RETURN NIL
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/
- aprendiz_ce
- Usuário Nível 3

- Mensagens: 147
- Registrado em: 21 Jul 2011 10:05
- Localização: Fortaleza/CE
Converter de Clipper para Harbour
Olá JoseQuintas,
Eu mencionei "full screen", mas pode ser "maximizado" sim. Nada contra! (rs) Destesto complicações, então o quanto mais prático e rápido eu puder fazer, melhor, pois o sistema está em produção e já roda a muitos anos, daí não posso criar nenhum descontentamento para os usuários e muito menos para a diretoria das empresas que utilizam meu aplicativo.
Como faço isso? Qual a melhor forma? Como você já mencionou que é o terceiro sistema em SUMMER que está convertendo, logo posso pensar que o colega já está bem experiente nesse tipo de experiência. Então, que passo devo seguir? No meu caso os fontes estão 70% no padrão para CLIPPER 5 utilizando bolsa de indices de DBFs (DBF/CDX).
Grato pela sua atenção e aguardo qualquer orientação.
Eu mencionei "full screen", mas pode ser "maximizado" sim. Nada contra! (rs) Destesto complicações, então o quanto mais prático e rápido eu puder fazer, melhor, pois o sistema está em produção e já roda a muitos anos, daí não posso criar nenhum descontentamento para os usuários e muito menos para a diretoria das empresas que utilizam meu aplicativo.
Como faço isso? Qual a melhor forma? Como você já mencionou que é o terceiro sistema em SUMMER que está convertendo, logo posso pensar que o colega já está bem experiente nesse tipo de experiência. Então, que passo devo seguir? No meu caso os fontes estão 70% no padrão para CLIPPER 5 utilizando bolsa de indices de DBFs (DBF/CDX).
Grato pela sua atenção e aguardo qualquer orientação.
Sucesso é a soma de pequenos esforços, repetidos o tempo todo.
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Converter de Clipper para Harbour
No tempo do Windows 98 já era chato trabalhar com telas full screen.
Nessa época já existia o messenger, pra troca de mensagens, e também outros programas que mostravam mensagens na tela.
Deixando o sistema em full screen, qualquer mensagem nova fazia a tela desaparecer.
Desde aquela época acostumei a não usar full screen, assim o usuário usa tranquilamente tudo.
Sobre passar de Clipper pra Harbour....
Eu já comentei várias vezes como eu faço:
Mantenha seu sistema Clipper funcionando
Faça testes compilando com Harbour, veja do que ele reclama, e ajuste os fontes para que funcione tanto em Clipper como em Harbour.
Assim que estiver tudo funcionando, pode assumir o Harbour, e vai poder mexer à vontade.
Isso de criar versões diferentes muitas vezes atrapalha, porque o sistema pode ser muito grande, e não vai dar pra ficar atualizando fontes diferentes.
E se precisar, pode usar os #define pra ajudar, porque também funcionam em Clipper.
Exemplo:
Só tome cuidado pra não abusar do #ifdef, pra não deixar os fontes confusos.
O que eu fazia era agrupar as diferenças em um único fonte, pra não encher os fontes disso aí, usando função aonde não tinha outro jeito.
Na época o Inkey() era diferente, então eu usava MyInkey() nos fontes, e somente num fonte Ze_XHARBOUR eu tinha o MyInkey() diferente pra Clipper ou Harbour, usando o #ifdef HARBOUR.
Assim, bastava alterar uma única linha pra trocar o compilador.
Também é bom pra rotinas específicas do Harbour, ou pra ter o mesmo fonte Linux/Windows, ou pra testar LIBs gráficas diferentes.
O nome ZE_ não é apenas por eu ser José, mas porque em ordem alfabética fica no final da lista.
Também não é bom querer ir logo pra uma LIB gráfica, porque não é tão fácil como se pensa, e pode acabar não tendo o programa em Harbour tão cedo.
Voltando um pouco às diferenças:
Na conversão do Clipper Summer, por usar apenas recursos básicos do Clipper, na maior parte é somente ajuste de sintaxe, pelo Clipper Summer aceitar coisa escrita errada.
Acabei de topar com erro de compilação no Harbour:
Parece que o Clipper Summer não se importava com colchetes no fonte....
Nota:
São vários EXEs, então estou pegando um por vez.
Nessa época já existia o messenger, pra troca de mensagens, e também outros programas que mostravam mensagens na tela.
Deixando o sistema em full screen, qualquer mensagem nova fazia a tela desaparecer.
Desde aquela época acostumei a não usar full screen, assim o usuário usa tranquilamente tudo.
Sobre passar de Clipper pra Harbour....
Eu já comentei várias vezes como eu faço:
Mantenha seu sistema Clipper funcionando
Faça testes compilando com Harbour, veja do que ele reclama, e ajuste os fontes para que funcione tanto em Clipper como em Harbour.
Assim que estiver tudo funcionando, pode assumir o Harbour, e vai poder mexer à vontade.
Isso de criar versões diferentes muitas vezes atrapalha, porque o sistema pode ser muito grande, e não vai dar pra ficar atualizando fontes diferentes.
E se precisar, pode usar os #define pra ajudar, porque também funcionam em Clipper.
Exemplo:
Código: Selecionar todos
#define HARBOUR
#ifdef HARBOUR
// fonte pra Harbour
#ELSE
// fonte pra Clipper
#ENDIF
O que eu fazia era agrupar as diferenças em um único fonte, pra não encher os fontes disso aí, usando função aonde não tinha outro jeito.
Na época o Inkey() era diferente, então eu usava MyInkey() nos fontes, e somente num fonte Ze_XHARBOUR eu tinha o MyInkey() diferente pra Clipper ou Harbour, usando o #ifdef HARBOUR.
Assim, bastava alterar uma única linha pra trocar o compilador.
Também é bom pra rotinas específicas do Harbour, ou pra ter o mesmo fonte Linux/Windows, ou pra testar LIBs gráficas diferentes.
O nome ZE_ não é apenas por eu ser José, mas porque em ordem alfabética fica no final da lista.
Também não é bom querer ir logo pra uma LIB gráfica, porque não é tão fácil como se pensa, e pode acabar não tendo o programa em Harbour tão cedo.
Voltando um pouco às diferenças:
Na conversão do Clipper Summer, por usar apenas recursos básicos do Clipper, na maior parte é somente ajuste de sintaxe, pelo Clipper Summer aceitar coisa escrita errada.
Acabei de topar com erro de compilação no Harbour:
Código: Selecionar todos
@ 1, 1 SAY variavel ]
Nota:
São vários EXEs, então estou pegando um por vez.
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/
- aprendiz_ce
- Usuário Nível 3

- Mensagens: 147
- Registrado em: 21 Jul 2011 10:05
- Localização: Fortaleza/CE
Converter de Clipper para Harbour
Jairo,
Antes para mais muito obrigado pelas suas orientações, pois as mesma estão me ajudando bastante.
Sobre a questão dos fontes: Era realmente isso que eu queria, ou seja, compilar no Windows para Windows ou compilar no Linux para Linux. Só que antes eu pensei que houvesse algum tipo de recurso que com uma única compilação o aplicativo pudesse rodar em ambos os sistemas operacionais (multiplataforma). Dúvida: E como é que fica a questão de pasta ("Windows - C:\pasta", "Linux - /pasta"), já que isso é bem diferente de OS para OS? HARBOUR sabe tratar isso de forma transparente?
Mais uma vez muito obrigado pela sua pronta atenção.
Antes para mais muito obrigado pelas suas orientações, pois as mesma estão me ajudando bastante.
Sobre a questão dos fontes: Era realmente isso que eu queria, ou seja, compilar no Windows para Windows ou compilar no Linux para Linux. Só que antes eu pensei que houvesse algum tipo de recurso que com uma única compilação o aplicativo pudesse rodar em ambos os sistemas operacionais (multiplataforma). Dúvida: E como é que fica a questão de pasta ("Windows - C:\pasta", "Linux - /pasta"), já que isso é bem diferente de OS para OS? HARBOUR sabe tratar isso de forma transparente?
Mais uma vez muito obrigado pela sua pronta atenção.
Sucesso é a soma de pequenos esforços, repetidos o tempo todo.
- aprendiz_ce
- Usuário Nível 3

- Mensagens: 147
- Registrado em: 21 Jul 2011 10:05
- Localização: Fortaleza/CE
Converter de Clipper para Harbour
Olá JoséQuintas, Boa Tarde!
Essa questão de usar "DEFINE" é uma coisa bem legal. Gostei!
Pois é, é como falei anteriormente... quando mais simples e mais prático para mim, melhor! Se o aplicativo puder rodar "maximizado" sem problemas, já estará de bom tamanho. Não penso em fazer grandes mudanças nos fontes não, somente o que for necessário para compilar no HARBOUR e muito menos penso em mexer com essa parte gráfica, só se for extremamente necessário. Se eu conseguir uma sobrevida para o mesmo e manter a compatibilidade com os novos sistemas operacionais da Microsoft (Win7, Win8, Win8,1), penso que estarei com a missão cumprida.
Outra coisa: Seu trabalho de conversão, como você está cobrando? Hora programada ou o serviço pronto? Teria com o colega me dar um noção de valores para que eu possa ver como é que eu vou fazer no meu caso.
Mais uma vez muito obrigado pela sua valiosa atenção.
Forte abraço!
Essa questão de usar "DEFINE" é uma coisa bem legal. Gostei!
Pois é, é como falei anteriormente... quando mais simples e mais prático para mim, melhor! Se o aplicativo puder rodar "maximizado" sem problemas, já estará de bom tamanho. Não penso em fazer grandes mudanças nos fontes não, somente o que for necessário para compilar no HARBOUR e muito menos penso em mexer com essa parte gráfica, só se for extremamente necessário. Se eu conseguir uma sobrevida para o mesmo e manter a compatibilidade com os novos sistemas operacionais da Microsoft (Win7, Win8, Win8,1), penso que estarei com a missão cumprida.
Outra coisa: Seu trabalho de conversão, como você está cobrando? Hora programada ou o serviço pronto? Teria com o colega me dar um noção de valores para que eu possa ver como é que eu vou fazer no meu caso.
Mais uma vez muito obrigado pela sua valiosa atenção.
Forte abraço!
Sucesso é a soma de pequenos esforços, repetidos o tempo todo.
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7929
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
Converter de Clipper para Harbour
Ola!
O mesmo fonte vc compila no Windows/32 e 64 e no Linux/32 e 64. Para compilar é preciso ter o Harbour(binário/executável) p/ cada plataforma.
Quanto as coisinhas extras do linux o Harbour tem algumas funções para este SO(sistema operacional) . Olhe os fontes do hbmk2.prg por exemplo:
hb_eol(), hb_ps(), hb_osPathListSeparator() esse hb_ps() é a barra "/" Linux ou "\" windows.
Saudações,
Itamar M. Lins Jr.
O mesmo fonte vc compila no Windows/32 e 64 e no Linux/32 e 64. Para compilar é preciso ter o Harbour(binário/executável) p/ cada plataforma.
Quanto as coisinhas extras do linux o Harbour tem algumas funções para este SO(sistema operacional) . Olhe os fontes do hbmk2.prg por exemplo:
hb_eol(), hb_ps(), hb_osPathListSeparator() esse hb_ps() é a barra "/" Linux ou "\" windows.
Código: Selecionar todos
#if defined( __PLATFORM__WINDOWS )
IF hb_osIs64bit() .AND. hb_DirExists( cBasePath + hb_ps() + "binnt64" )
hb_SetEnv( "PATH", ;
cBasePath + hb_ps() + "binnt64" + hb_osPathListSeparator() + ;
cBasePath + hb_ps() + "binnt" + hb_osPathListSeparator() + ;
GetEnv( "PATH" ) )
ELSE
hb_SetEnv( "PATH", ;
cBasePath + hb_ps() + "binnt" + hb_osPathListSeparator() + ;
cBasePath + hb_ps() + "binw" + hb_osPathListSeparator() + ;
GetEnv( "PATH" ) )
ENDIF
#elif defined( __PLATFORM__OS2 )
hb_SetEnv( "PATH", cBasePath + hb_ps() + "binp" + hb_osPathListSeparator() + cBasePath + hb_ps() + "binw" + hb_osPathListSeparator() + GetEnv( "PATH" ) )
#elif defined( __PLATFORM__DOS )
hb_SetEnv( "PATH", cBasePath + hb_ps() + "binw" + hb_osPathListSeparator() + GetEnv( "PATH" ) )
#elif defined( __PLATFORM__LINUX )
hb_SetEnv( "PATH", cBasePath + hb_ps() + "binl" + hb_osPathListSeparator() + GetEnv( "PATH" ) )
#endif
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
- aprendiz_ce
- Usuário Nível 3

- Mensagens: 147
- Registrado em: 21 Jul 2011 10:05
- Localização: Fortaleza/CE
Converter de Clipper para Harbour
Olá Itamar,
Poxa, que legal! Vou ver se consigo fazer algo que atenda as minhas necessidade com as suas informações.
Grato pela sua atenção.
Poxa, que legal! Vou ver se consigo fazer algo que atenda as minhas necessidade com as suas informações.
Grato pela sua atenção.
Sucesso é a soma de pequenos esforços, repetidos o tempo todo.
- Jairo Maia
- Moderador
- Mensagens: 2785
- Registrado em: 16 Ago 2010 13:46
- Localização: Campinas-SP
Converter de Clipper para Harbour
Olá Apendiz,
Parece que sua dúvida sobre a tela é recorrente, porém, isso já está resolvido alguns postes acima, acho que passou batido. Basta acrescentar em seu sistema o seguinte:
Parece que sua dúvida sobre a tela é recorrente, porém, isso já está resolvido alguns postes acima, acho que passou batido. Basta acrescentar em seu sistema o seguinte:
Código: Selecionar todos
REQUEST HB_GT_WVT_DEFAULT // coloque antes de Function Main()
Function Main()
// Variaveis locais se houver...
HB_GtInfo( HB_GTI_FONTNAME, "Lucida Console" ) // fonte
HB_GtInfo( HB_GTI_WINTITLE, "Título da Tela" ) // titulo da tela
HB_GtInfo( HB_GTI_CLOSABLE, .F. ) // não permite fechar pelo X
HB_GtInfo( HB_GTI_RESIZABLE, .F. ) // não permite alterar a tela pelo quadradinho (só funciona no XP)
Set ScoreBoard Off // usa a linha 0
SetMode( 25, 85 ) // usa a largura total da tela
HB_GtInfo( HB_GTI_MAXIMIZED, .T. )
// restante da função Main()...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)
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)