Página 1 de 3
Configuração de CODEPAGE
Enviado: 05 Out 2012 11:27
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,
Configuração de CODEPAGE
Enviado: 05 Out 2012 12:51
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
Configuração de CODEPAGE
Enviado: 05 Out 2012 13:16
por Imatech

- Capturar.PNG (12.73 KiB) Exibido 2673 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
Configuração de CODEPAGE
Enviado: 05 Out 2012 13:27
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,
Configuração de CODEPAGE
Enviado: 05 Out 2012 13:29
por Toledo
Acabei de fazer um teste com o xHarbour... e deu certo!
Porque será que no Harbour não funciona?
Abraços,
Configuração de CODEPAGE
Enviado: 05 Out 2012 13:38
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.
Configuração de CODEPAGE
Enviado: 05 Out 2012 14:22
por Toledo
Amigos, muito obrigado! Harbour atualizado... agora recompilar todas as libs.
Abraços,
Configuração de CODEPAGE
Enviado: 05 Out 2012 15:19
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.
Configuração de CODEPAGE
Enviado: 05 Out 2012 16:08
por Pablo César
Mas Jairo o Toledo estaba utilizando Harbour versão 2.1
Configuração de CODEPAGE
Enviado: 05 Out 2012 19:07
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.
Configuração de CODEPAGE
Enviado: 21 Out 2013 16:28
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
Configuração de CODEPAGE
Enviado: 25 Out 2013 20:21
por Itamar M. Lins Jr.
Coloque a -gtwvg na linha do hbmk2.
Saudações,
Itamar M. Lins Jr.
Configuração de CODEPAGE
Enviado: 25 Out 2013 20:59
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")
Configuração de CODEPAGE e LANGSELECT()
Enviado: 28 Dez 2015 17:53
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
Configuração de CODEPAGE
Enviado: 28 Dez 2015 18:07
por Jairo Maia
Olá Microvolution,
Acrescente a lib
xhb em seu script
.hbp: