Página 1 de 1
Funções HB_OEMTOANSI() e HB_ANSITOOEM() com HB 3.4
Enviado: 18 Nov 2014 13:55
por Jairo Maia
Olá Pessoal,
Foi avisado em Novembro de 2012, e na versão 3.4 as funções HB_OEMTOANSI() e HB_ANSITOOEM() não existem mais, e também não funcionam se compilar os fontes delas. Assim, como resolver isso no HB 3.4? Alguma dica?
2012-11-15 16:07 UTC+0200 Alexey Myronenko (
m.oleksa@ukr.net)
* doc/en/string.txt
+ documentaion for HB_AT(), HB_RAT() added/corrected
! fixed examples for them
- delete allusion for HB_OEMTOANSI(), HB_ANSITOOEM() due to they will
disappear after next stable release
Funções HB_OEMTOANSI() e HB_ANSITOOEM() com HB 3.4
Enviado: 18 Nov 2014 15:05
por Pablo César
Oi Jario,
Eu acho que ainda está vigente essa função, pois eu a uso em HMG. Pode ser que tenha sido desvinculada com o core do Harbour e precise incluíla como uma contrib.
Neste tópico, in dica para utilizar
REQUEST HB_OEMTOANSI
Funções HB_OEMTOANSI() e HB_ANSITOOEM() com HB 3.4
Enviado: 18 Nov 2014 16:27
por Jairo Maia
Olá Pablo,
Obrigado por responder Mestre. Suas dicas são sempre Bem Vindas Neste Fórum. Obrigado.
Coloquei o REQUEST no .PRG principal e compilei com -rebuild usando o HB 3.4 e mesmo assim não foi encontrada. Será que na HMG não foram funções adicionadas pelo Dr. Soto ou o Rathinagiri?
Com os fontes do HB 3.2 não surte efeito. O Harbour da HMG atual é a versão 3.4? Porque na versão 3.2 elas ainda existem.
Funções HB_OEMTOANSI() e HB_ANSITOOEM() com HB 3.4
Enviado: 18 Nov 2014 21:25
por Pablo César
Obrigado Jairo pela suas palavras, é sempre um prazer tratar contigo.
Jairo Maia escreveu:Será que na HMG não foram funções adicionadas pelo Dr. Soto ou o Rathinagiri?
Não, eu já tinha verificado se existiam alguma diretiva, mas não. Depois que você perguntou sobre a atual versão do Harbour no ultimo release da HMG é que me toquei que a versão é a 3.2.0dev (r1407111333). Então continuei procurando e achei isto:
O harbour (3.4.0-1) foi lançado Viktor Szakats em Wed, 1 Jan 2014 14:00:00 +0100
Nesse mesmo ChangeLog que você mostrou, se prestar atenção mais em baixo tem:
Só eu não tenho certeza sobre o significado do LEGACY_LEVEL4 (se alguém com mais conhecimento esclarecer, é bem vindo !)
Ai encontrei este código fonte:
https://github.com/vszakats/harbour-cor ... /oemansi.c
Creio que se forçar disponibilizando estas funções talvez funcionem.
Funções HB_OEMTOANSI() e HB_ANSITOOEM() com HB 3.4
Enviado: 19 Nov 2014 00:07
por Jairo Maia
Olá Amigo Pablo,
Primeiro, quero dizer que a informação do dia 17 me passou batido sim. Obrigado pelo alerta.
Mas o que importa Mestre, é dizer Muito Obrigado Mesmo. Acabei de testar com ambas situações:
E também com:
Código: Selecionar todos
cString := Win_OemToAnsi( cString ) // funcionou...
e
cString := Win_AnsiToOem( cString ) // também funcionou...
Então adotei a função Hb_Translate(), que atende ambas.
Valeu Pablo. Muito Obrigado Mesmo...
:{
Funções HB_OEMTOANSI() e HB_ANSITOOEM() com HB 3.4
Enviado: 19 Nov 2014 12:23
por Nascimento
pelo que entendi esse topico aqui atende o que vc quer
https://pctoledo.org/forum/viewtopic.php?t=4374
Funções HB_OEMTOANSI() e HB_ANSITOOEM() com HB 3.4
Enviado: 19 Nov 2014 16:21
por Jairo Maia
Olá Josivan,
Obrigado pela dica. Mas não! O que eu preciso é ler o conteúdo de um arquivo em ANSI e transformar em OEM, e vice-versa.
Quero aproveitar para fazer um Adendo a minha última Mensagem onde eu disse:
Jairo Maia escreveu:Então adotei a função Hb_Translate(), que atende ambas.
A função Hb_Translate(), altera uma CP (Code Page) para outra. Também dá certo, mas fica mais complicado. Realmente no meu caso foi solucionado com as funções: Win_OemToAnsi() e Win_AnsiToOem().
Obrigado a todos.
Problema resolvido!