No funciona AnsiToOem() OemToAnsi()

Post Reply
tsales
Posts: 186
Joined: Sat Oct 08, 2005 7:32 am

No funciona AnsiToOem() OemToAnsi()

Post by tsales »

Antonio
Si realizo esta prueba en FWPPC el resultado no cambia:

MemoWrit( "PRUEBAS.TXT", "Nº" + AnsiToOem( "Nº" ) + OemToAnsi("Nº") )

Pero si realizo lo mismo en FWH el resultado es correcto.

Esto está provocando que al imprimir no se impriman correctamente los caracteres especiales.

¿Que ocurre con estas funciones?

Saludos
Toni Sales
tsales
Posts: 186
Joined: Sat Oct 08, 2005 7:32 am

Re: No funciona AnsiToOem() OemToAnsi()

Post by tsales »

Me respondo a mi mismo.
Parece que estas funciones no están soportadas por WINCE. En la carpeta Classes está el fichero oemansip.prg. En el se definen estas funciones.

He ampliado un poco los caracteres que se convierten. Por si le sirven a alguien:
// OemToAnsi() and AnsiToOem() for Pocket PC
// Please change cOem and cAnsi for your specific language values

function OemToAnsi( cText )

//local cOem := "¤¥ ‚¡¢£"
//local cAnsi := "ñÑáéíóúü"
local cOem := "¥¦AEIOUΰµº¿ÅÆÃÃ'¿"
local cAnsi := "ªºÁÉÍÓÚáéíóúÑñçÇ´¨"
local n

for n = 1 to Len( cOem )
cText = StrTran( cText, SubStr( cOem, n, 1 ), SubStr( cAnsi, n, 1 ) )
next

return cText

function AnsiToOem( cText )

// local cOem := "¤¥ ‚¡¢£"
// local cAnsi := "ñÑáéíóúü"
local cOem := "¥¦AEIOUΰµº¿ÅÆÃÃ'¿"
local cAnsi := "ªºÁÉÍÓÚáéíóúÑñçÇ´¨"
local n

for n = 1 to Len( cOem )
cText = StrTran( cText, SubStr( cAnsi, n, 1 ), SubStr( cOem, n, 1 ) )
next

return cText
Saludos
Toni Sales
User avatar
Antonio Linares
Site Admin
Posts: 42422
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Has thanked: 15 times
Been thanked: 48 times
Contact:

Re: No funciona AnsiToOem() OemToAnsi()

Post by Antonio Linares »

Toni,

>
Parece que estas funciones no están soportadas por WINCE. En la carpeta Classes está el fichero oemansip.prg. En el se definen estas funciones.
>

Si, asi es. Windows Mobile no las soporta.

> He ampliado un poco los caracteres que se convierten.

gracias! :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
Post Reply