Configuração de CODEPAGE

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

Moderador: Moderadores

Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

Configuração de CODEPAGE

Mensagem por Toledo »

Amigos, estou com um certo problema que não encontrei ainda uma maneira de resolver.

Este código abaixo compilado no Clipper, quando se pressiona ALT+157 no GET aparece o simbolo Ø.

Código: Selecionar todos

cls
cVar:=spac(10)
@ 10,10 say "Digite ALT+157..:" GET cVar
READ
retu
Se o mesmo código for compilado no Harbour, incluíndo apenas o Func Main() no início, o resultado de ALT+157 já é outro.

Já tentei todas as combinações de REQUEST HB_CODEPAGE_???, HB_SETCODEPAGE('???') e WVT_SetCodePage(???), mas não consegui obter o mesmo resultado do código gerado no Clipper.

Os testes que fiz foram com o Harbour e MingW.

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar do usuário
Jairo Maia
Moderador
Moderador
Mensagens: 2785
Registrado em: 16 Ago 2010 13:46
Localização: Campinas-SP

Configuração de CODEPAGE

Mensagem por Jairo Maia »

Olá Toledo,

Engraçado. Aqui compilei assim e funcionou certinho:

Código: Selecionar todos

REQUEST HB_CODEPAGE_PT850
Hb_SetCodePage('PT850')
cls
cVar:=spac(10)
@ 10,10 say "Digite ALT+157..:" GET cVar
READ
retu
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)
Imatech
Usuário Nível 3
Usuário Nível 3
Mensagens: 350
Registrado em: 24 Ago 2010 23:48
Localização: Goiânia-GO

Configuração de CODEPAGE

Mensagem por Imatech »

Capturar.PNG
Capturar.PNG (12.73 KiB) Exibido 2674 vezes

Código: Selecionar todos

#include "inkey.ch"

//*----------------------------------------------------------------------------*
// HARBOUR 3.2 SVN + MSVC
//*----------------------------------------------------------------------------*
Procedure Main
   Local xAux
   Local aLang := { 'EN',  'PT850' }

   xAux := SETMODE( 9, 27 )

   CLS

   xAux := hb_langSelect( hb_UserLang(), aLang[ 1 ] )
   xAux := hb_cdpSelect( aLang[ 1 ] )

   ALERT( CHR( 157 ) + ';;' + aLang[ 1 ], , 'GR+/N' )

   xAux := hb_langSelect( hb_UserLang(), aLang[ 2 ] ) // .OR. HB_LANGSELECT( 'pt-BR', "PT850" )
   xAux := hb_cdpSelect( aLang[ 2 ] )

   ALERT( CHR( 157 ) + ';;' + aLang[ 2 ], , 'GR+/N' )

Return

//*----------------------------------------------------------------------------*
// HB_GTSYS()
//*----------------------------------------------------------------------------*
PROCEDURE HB_GTSYS()

   REQUEST HB_LANG_EN
   REQUEST HB_CODEPAGE_EN

   REQUEST HB_LANG_PT
   REQUEST HB_CODEPAGE_PT850

   REQUEST HB_GT_WVG_DEFAULT
   REQUEST HB_GT_WVT
   REQUEST HB_GT_WIN

RETURN
Editado pela última vez por Imatech em 05 Out 2012 13:44, em um total de 2 vezes.
M., Ronaldo

by: IMATECH

IMATION TECNOLOGIA
Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

Configuração de CODEPAGE

Mensagem por Toledo »

Jairo, qual versão do Harbour você está usando? Está usando BCC, MingW, etc?

Compilei aqui com o Harbour 2.1 e MingW (e também com BCC), mas não tem jeito de ALT+157 aparecer Ø.

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

Configuração de CODEPAGE

Mensagem por Toledo »

Acabei de fazer um teste com o xHarbour... e deu certo!

Porque será que no Harbour não funciona?

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

Configuração de CODEPAGE

Mensagem por Pablo César »

Isso porque a versão quase que recente do Harbour, teve mudanças sobre a interpretação do CodePage e o LANGSELECT. Veja o exemplo do Ronaldo, deu certo em Harbour.
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

Configuração de CODEPAGE

Mensagem por Toledo »

Amigos, muito obrigado! Harbour atualizado... agora recompilar todas as libs.

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar do usuário
Jairo Maia
Moderador
Moderador
Mensagens: 2785
Registrado em: 16 Ago 2010 13:46
Localização: Campinas-SP

Configuração de CODEPAGE

Mensagem por Jairo Maia »

Olá Toledo,

Sei que já está resolvido, mas apenas respondendo sua pergunta:

Inicialmente compilei com Harbour 3.0.0 e Mingw, e acabei de fazer também os testes com a versão 3.0.0 e Mingw e a versão 3.2 também com Mingw, e em ambos casos usando GT_WVT, e o resultado foi o mesmo.
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
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

Configuração de CODEPAGE

Mensagem por Pablo César »

Mas Jairo o Toledo estaba utilizando Harbour versão 2.1
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Avatar do usuário
Jairo Maia
Moderador
Moderador
Mensagens: 2785
Registrado em: 16 Ago 2010 13:46
Localização: Campinas-SP

Configuração de CODEPAGE

Mensagem por Jairo Maia »

Olá Pablo,

Sim. Mas é que eu estava respondendo o post do Toledo das 13h27m. E quando disse: Sei que já está resolvido, mas apenas respondendo sua pergunta, eu estava me referindo ao post dele das 14h22m, a saber:
Toledo escreveu:Amigos, muito obrigado! Harbour atualizado... agora recompilar todas as libs.
Subentendi que ele atualizou a versão.
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)
alemellado
Usuário Nível 1
Usuário Nível 1
Mensagens: 17
Registrado em: 22 Mar 2005 13:14
Localização: S.B.C.-S.P.

Configuração de CODEPAGE

Mensagem por alemellado »

amigos desculpa pela pergunta amadora, mas eu utilizava xharbour e estou tentando migrar para o harbour 3.2 mas quando tento compilar a rotina do Ronaldo com o hbmk2 aparece o seguinte:

Código: Selecionar todos

G:\prov>HBMK2 PROV
Harbour 3.2.0dev (r1310152129)
Copyright (c) 1999-2013, http://harbour-project.org/
Compiling 'PROV.prg'...
Lines 413, Functions/Procedures 2
Generating C source output to 'C:\DOCUME~1\ALEXAN~1\CONFIG~1\Temp\hbmk_ycl2sw.dir\PROV.c'... Done.
C:/DOCUME~1/ALEXAN~1/CONFIG~1/Temp/hbmk_ycl2sw.dir/PROV.o:PROV.c:(.data+0xd8): undefined reference t
o `HB_FUN_HB_GT_WVG_DEFAULT'
collect2: ld returned 1 exit status
hbmk2: Erro: Executando linkeditor. 1
c:\hb32\comp\mingw\bin\gcc.exe C:/DOCUME~1/ALEXAN~1/CONFIG~1/Temp/hbmk_ycl2sw.dir/PROV.o C:/DOCUME~1
/ALEXAN~1/CONFIG~1/Temp/hbmk_ycl2sw.dir/hbmk_1eh9pw.o    -mconsole -Wl,--start-group -lhbextern -lhb
debug -lhbvm -lhbrtl -lhblang -lhbcpage -lgtcgi -lgtpca -lgtstd -lgtwin -lgtwvt -lgtgui -lhbrdd -lhb
uddall -lhbusrrdd -lrddntx -lrddcdx -lrddnsx -lrddfpt -lhbrdd -lhbhsx -lhbsix -lhbmacro -lhbcplr -lh
bpp -lhbcommon -lhbmainstd -lkernel32 -luser32 -lgdi32 -ladvapi32 -lws2_32 -lwinspool -lcomctl32 -lc
omdlg32 -lshell32 -luuid -lole32 -loleaut32 -lmpr -lwinmm -lmapi32 -limm32 -lmsimg32 -lwininet -lhbp
cre -lhbzlib   -Wl,--end-group -oPROV.exe  -Lc:/hb32/lib/win/mingw

hbmk2: Erro: Referenciado, faltando, mas funções desconhecida(s):
       HB_GT_WVG_DEFAULT()
O que estou fazendo de errado aguem poderia me dizer
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

Configuração de CODEPAGE

Mensagem por Itamar M. Lins Jr. »

Coloque a -gtwvg na linha do hbmk2.

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
alemellado
Usuário Nível 1
Usuário Nível 1
Mensagens: 17
Registrado em: 22 Mar 2005 13:14
Localização: S.B.C.-S.P.

Configuração de CODEPAGE

Mensagem por alemellado »

Muito obrigado Toledo irei tentar. este modo tambem,
uma outra dica que recebi, e funcionou foi usar o seguinte comando

Código: Selecionar todos

REQUEST HB_LANG_PT
REQUEST HB_CODEPAGE_PT850
HB_LANGSELECT("PT")
HB_CDPSELECT("PT850")
microvolution
Usuário Nível 5
Usuário Nível 5
Mensagens: 1231
Registrado em: 02 Set 2011 22:17
Contato:

Configuração de CODEPAGE e LANGSELECT()

Mensagem por microvolution »

Pessoal como vão? tudo bem?
Feliz 2016 pra todos já de uma vez, afinal faltam apenas 3 dias para o velho morrer e dar lugar ao novo.

Bom, minhas acentuações para conversações de MENSAGENS e PERGUNTAS ao usuários que já funcionavam no clipper, estão agora um pouco estranhas. Digamos por exemplo, uma mensagem ao usuário:
"Seja bem vindo! Obrigado pela atenção!"
ou:

Código: Selecionar todos

                         @ 00,00 say 'MVinfo Sistemas & Automação ...'
                         @ 01,00 say 'Obrigado pelo acesso. Volte Sempre !'
Então, o cedilha da palavra "atenção" ou "automação", bem como o "ã" e outras acentuadas não estão aparecendo para o usuário na tela corretamente.
Lembrando que estou já usando o harbour 3.4.0 e usando o editor NOTEPAD++.

Então, apliquei o que em vários lugares daqui deste tão conceituado e essencial fórum oferece, que são as seguintes linhas:

Código: Selecionar todos

func main ()
...
REQUEST HB_CODEPAGE_PTISO     // As requisições de codepage possibilitam
REQUEST HB_CODEPAGE_PT850     //    trabalhar com vários SOs e charsets pt_br
HB_SetCodePage( "PT850" )                      // seleciona a página acima.							// 30/4/15w amigo Ivo da internet
HB_LANGSELECT('PT') 
...
retu // func main()
Acontece que no código acima, apresenta o seguinte erro de run-time:

Código: Selecionar todos

--------------------------------------------------------------------------------
Error on 12/28/15 17:42:43
Error BASE/1303  Argument error: __HB_LANGSELECT
Called from __HB_LANGSELECT(0)  
Called from HB_LANGSELECT(0)  
Called from MAIN(165)  
--------------------------------------------------------------------------------
Lembrando também que compilo usando modo console com as partes gráficas da GTWVW e GTWVG.
e agora pessoal?
PS: o erro Called from MAIN(165) é exatamente na linha acima e que repito abaixo:
HB_LANGSELECT('PT')

já tentei usá-la assim com aspas:
HB_LANGSELECT("PT")
mas o erro é o mesmo:
Error BASE/1303 Argument error: __HB_LANGSELECT
Grato,
MICROVOLUTION - 16 anos Evoluindo Com Você!


Você já leu a Bíblia hoje?
João 3:16 - Porque Deus amou ao mundo de tal maneira que deu seu Único Filho para que todo aquele que nEle crê não pereça mas tenha a Vida Eterna!
Avatar do usuário
Jairo Maia
Moderador
Moderador
Mensagens: 2785
Registrado em: 16 Ago 2010 13:46
Localização: Campinas-SP

Configuração de CODEPAGE

Mensagem por Jairo Maia »

Olá Microvolution,

Acrescente a lib xhb em seu script .hbp:

Código: Selecionar todos

-lxhb
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)
Responder