elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  Codigo Ascii??
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Codigo Ascii??  (Leído 5,951 veces)
Wolverine

Desconectado Desconectado

Mensajes: 19



Ver Perfil
Codigo Ascii??
« en: 10 Agosto 2005, 08:31 am »

Hola estoy haciendo una pequeña aplicación que tiene que ver con los códigos ascii.
El problema es que caundo con la funcion chr(), ingreso como argumento cualquier número, este, me devuelve un caracter al perteneciente para dicho numero en el ascii.
Alguien sabe porque pasa esto??

Por Ej. El ascii de á es 160, en mi aplicación es algo asi como 225..


En línea

el conocimiento es poder........
Slasher-K


Desconectado Desconectado

Mensajes: 1.477


Ver Perfil
Re: Codigo Ascii??
« Respuesta #1 en: 10 Agosto 2005, 08:58 am »

No entiendo el problema, la función hace lo que tiene que hacer xD.

Si te referís a los caracteres mayores a 127 entonces es diferente, porque usa los caracteres de la página de código actual. Pero si decis lo que necesitás un poco más claro sería mejor.

Saludos.


En línea



A la reina de las profundidades que cuida los pasos de una sombra en la noche :*
Xpeed


Desconectado Desconectado

Mensajes: 472


Res Publica Non Dominetur


Ver Perfil
Re: Codigo Ascii??
« Respuesta #2 en: 10 Agosto 2005, 09:11 am »

lo que he entendido, es, que necesitas sacar el caracter "á" que en cod ascii es iwal al caracter 160, pero visual basic no lo toma como este caracter, lo toma como ninguno lamento no poder ayudarte, pues no tengo idea porque sucede, talvez, vb no acepte los acentos

un saludo.
En línea

{_The_Alwar_}


Desconectado Desconectado

Mensajes: 711

Who dares win


Ver Perfil WWW
Re: Codigo Ascii??
« Respuesta #3 en: 13 Agosto 2005, 14:15 pm »

que yo sepa la funcion chr hace eso, le metes un numero y te devuelve una letra, solo que a partir del 127 o 128 hay problemas... no se xk, dicen q xq es distinto del 128 hacia el 255 en diferentes sitios
En línea

Wolverine

Desconectado Desconectado

Mensajes: 19



Ver Perfil
Re: Codigo Ascii??
« Respuesta #4 en: 13 Agosto 2005, 20:03 pm »

Yo se que a partir del código 128 varian los caracteres, pero no entiendo respecto a que varian.

Hice un programa en lenguaje Fox Pro 2.5 para DOS, corriendo el DOS en windows y funciona perfectamente.

Igualmente aunque varien los caracteres yo en windows en un editor de texto con las teclas ALT 160 me retorna la letra "á" y cuando corro mi programa realizado en VB los códigos cambian totalmente...

Yo creo que es algun tema interno de VB, ya que creo que los lenguajes de programación (en la mayoria) se usan los CodePoint (UNICODE), ¿puede ser que con CHR() me retorne un codepoint y no un ASCII?
En línea

el conocimiento es poder........
Xpeed


Desconectado Desconectado

Mensajes: 472


Res Publica Non Dominetur


Ver Perfil
Re: Codigo Ascii??
« Respuesta #5 en: 13 Agosto 2005, 20:13 pm »

puede ser, pero de todas maneras para solucionar eso parcialmente se puede recurrir ala instruccion Asc() para saber el numero ascii valido en VBasic para el caracter que necesitamos....


un saludo.
En línea

Slasher-K


Desconectado Desconectado

Mensajes: 1.477


Ver Perfil
Re: Codigo Ascii??
« Respuesta #6 en: 14 Agosto 2005, 01:05 am »

El problema es que VB usa la serie de caracteres Unicode, y lo que devuelve lo hace en Unicode. Para solucionar esto existe una función que se llama MultiByteToWideChar, que convierte el caracter desde la página de códigos del teclado a su equivalente ANSI.

La siguiente función devuelve el caracter ANSI del código de tecla especificado.

Código:
Private Declare Function MultiByteToWideChar Lib "kernel32" (ByVal CodePage As Long, ByVal dwFlags As Long, ByVal lpMultiByteStr As String, ByVal cchMultiByte As Long, ByVal lpWideCharStr As String, ByVal cchWideChar As Long) As Integer

Const CP_OEMCP = 1

Function TranslateChar(KeyCode As Integer) As String
        Dim r&, sMultiByte$, sWideChar$

  sWideChar = String$(1, 0)
  sMultiByte = Chr$(KeyCode)
 
  r = MultiByteToWideChar(CP_OEMCP, 0&, sMultiByte, Len(sMultiByte), ByVal sWideChar, LenB(sWideChar))
 
  TranslateChar = sWideChar
End Function

Saludos.
En línea



A la reina de las profundidades que cuida los pasos de una sombra en la noche :*
Yikis

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Re: Codigo Ascii??
« Respuesta #7 en: 18 Agosto 2005, 17:33 pm »

Anhur muy buen apunte precisamente eso era lo que tanto estab buscando. Pues necesito imprimir desde VB una formato o planilla para una nomina como lo hace DOS y necesitaba caracteres  para hacer el cuadro. Y con esta solucion es suficientes. Gracias mi hermano.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
IMPOSIBLE convertir de Hex a ASCII este código « 1 2 »
Hacking Wireless
guillegf84 11 8,644 Último mensaje 20 Octubre 2011, 15:32 pm
por ChimoC
codigo letras en ascii
Programación C/C++
mrstriker 4 3,771 Último mensaje 24 Noviembre 2012, 09:21 am
por ecfisa
c++ necesito su ayuda, una dudo del codigo ascii
Programación C/C++
josehebu 2 2,912 Último mensaje 9 Enero 2013, 02:14 am
por zonahurbana
codigo ascii
Java
fyleerj 1 1,915 Último mensaje 22 Mayo 2014, 00:20 am
por engel lex
Software permite hacer videollamadas renderizadas en código ASCII por el ....
Noticias
wolfbcn 0 1,519 Último mensaje 10 Febrero 2015, 02:18 am
por wolfbcn
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines