Problema con cmd y algunos carácteres

Tus preguntas. Algoritmos o Grupos de Comandos formando Programas Escripts.
Responder
Jonny
Profesional del Autoit
Mensajes: 1042
Registrado: 30 Jun 2008, 20:08

Problema con cmd y algunos carácteres

Mensaje por Jonny »

Hola

Imagino, que esto lo habreis observado desde hace mucho tiempo y seguro que teneis también una solución desde hace tiempo para esto.

Resulta, que al introducir ciertos carácteres en el cmd aparecen símbolos extraños.
Por ejemplo, al poner la ó aparece el símbolo ¢ y así con algunos acentos, la ñ y algunos carácteres especiales.

Amí, se me ocurrió así al pronto reemplazar (con mucha paciencia) cada símbolo de estos por su equivalente, como en el ejemplo que he puesto (¢) reemplazarlo por la ó.
Pero probando a que símbolo corresponde cada acento y carácter especial me he encontrado, que la solución de reemplazar los símbolos por sus equivalentes no es válida, pues hay carácteres que equivalen otros carácteres que podrían introducirse intencionadamente.
Por ejemplo la í, equivale a ¡, que perfectamente podría estar en el resultado de la ejecución de un programa:
> "¡la operaci¢n se realiz¢ correctamente!".
En éste caso, no podríamos saber si el carácter ¡ lo ha generado la respuesta del programa intencionadamente o es una í.

¿Problema?
Que el carácter ¡ si lo introducimos en el cmd aparece igualmente como ¡.

Entonces ¿Como puedo solucionar ésto, para que cuando el programa que estoy haciendo recoja resultados de la ejecución de un comando de consola o realice una sentencia mysql no aparezcan estos símbolos y aparezcan todos los carácteres tal y como se introdujeron?

Gracias de antemano a quien tenga una idea.

Salu2!
Avatar de Usuario
Rupert.25
Hacker del Foro
Mensajes: 247
Registrado: 17 Jul 2007, 18:27

Re: Problema con cmd y algunos carácteres

Mensaje por Rupert.25 »

Saludos. Una pregunta.

¿Necesitas usar la consola de windows para ejecutar una consulta de MySQL?

Otra:

¿Lees lo que te aroja el cmd con STDOutRead?

es probable que haya otra manera para ejecutar una consulta para MySQL

Por ejemplo: Antes hice un ejemplo de un script que adjuntaba una base de datos al SQL Server, y esto lo hacia mediante la consola de windows utilizando el archivo OSQL, pero despues encontré una UDF que se llama _SQL la cual trae las Funciones para ejecutar cualquier tipo de consulta.

Ademas he visto en el foro de ingles una libreria de MySQL, tal vez terminemos solucionando esto de la consola de otra manera.

Si tienes que hacerlo necesariamente desde la consola de windows, tal vez quieras poner el ejemplo para tratar de ayudarte.

gracias...
Jonny
Profesional del Autoit
Mensajes: 1042
Registrado: 30 Jun 2008, 20:08

Re: Problema con cmd y algunos carácteres

Mensaje por Jonny »

Hola

bueno, el problema realmente lo tengo con las consultas mysql, aunque enfoqué el problema orientado a la consola porque parece que mysql depende de la consola para devolver los resultados, pues los carácteres que mencionaba, los representa exactamente igual.

No, no utilizo la consola para hacer consultas a mysql, tengo una librería descargada del foro inglés para gestionar las bases de datos (quizá hablemos de ma misma) que para nada utiliza la consola, lo hace todo mediante objetos. Pensé que decirlo así sería más enrredado, pero en realidad éste es el problema.
que al recuperar información de la base de datos mediante la libraría que tengo para mysql aparecen algunos carácteres modificados. No se, si el problema se solucionaría de la misma forma en el caso de la consola, que como digo, ocurre exactamente lo mismo.

Gracias,

Salu2!
Avatar de Usuario
BasicOs
Site Admin
Mensajes: 2085
Registrado: 21 Nov 2006, 19:24
Ubicación: El Internet - (Canarias, España)
Contactar:

Re: Problema con cmd y algunos carácteres

Mensaje por BasicOs »

Buenas,
tienes en el foro muchos ejemplos de mysql, y que yo sepa esto de que cambie los caracteres no pasa, de hecho autoit+mysql es la perfección en base de datos, no problema.
Revisa si te coincide lo que has hechoi con estos links que te envio, y después busca el script en otro PC diferente.

Algunos links:
Un ejemplo operativo:
http://www.emesn.com/autoitforum/viewto ... =101&p=305

Una búsqueda:
http://www.emesn.com/autoitforum/search ... l&start=20

Salu2:) :smt020
Jonny
Profesional del Autoit
Mensajes: 1042
Registrado: 30 Jun 2008, 20:08

Re: Problema con cmd y algunos carácteres

Mensaje por Jonny »

Hola

Gracias,

Verás, yo utilizo ésta librería que adjunto en el post para gestionar mysql. No se si habrá otra mejor (creo que en los enlaces que me indicas hay una), que no se si es la misma. En cualquier caso, si se trata de una librería diferente, no podría usarla, pues el programa en el que estoy trabajando está bastante abanzado y llevo ya miles de líneas (sí, es un programa bastante complejo) ¡y no me gustaría tener que reescribirlo! jejeje.

Por otro lado, no creo que el problema radique en la librería utilizada, pues el código de la que yo utilizo no lo termino de entender (es demasiado abanzado) utilizando objetos etc, pero parece, que se limita únicamente a devolver los resultados de mysql tal cual están... Lo curioso es, que me los devuelve exactamente igual que aparecen en la consola (es decir si accedo a mysql mediante el cmd y consulto directamente las bases de datos).

Salu2!
Avatar de Usuario
BasicOs
Site Admin
Mensajes: 2085
Registrado: 21 Nov 2006, 19:24
Ubicación: El Internet - (Canarias, España)
Contactar:

Re: Problema con cmd y algunos carácteres

Mensaje por BasicOs »

Si, es la libería estandar, puedes mirarla y ver para que es cada función del mysql en autoit.
de todas maneras la librería estaba en http://www.emesn.com/mas/mysql.au3

Es realmente sencillo si piensas en bases de datos( o tablas) o si tienes experiencia con php o similares.., o siguiendo los ejemplos

Salu2:) :smt020
Avatar de Usuario
Chefito
Profesional del Autoit
Mensajes: 2035
Registrado: 21 Feb 2008, 18:42
Ubicación: Albacete/Cuenca (España)

Re: Problema con cmd y algunos carácteres

Mensaje por Chefito »

Busca busca...que puede que el problema esté en alguna configuración :smt017 .
Te pongo una de la 1º web que he encontrado:

http://avlprogrammer.blogspot.com/2008/ ... os-en.html

Y si eso...ya sabes....google :smt003 :

http://www.google.es/search?hl=es&q=mys ... ntos&meta=

Ya puedes leer y probar :smt005 .

Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
Jonny
Profesional del Autoit
Mensajes: 1042
Registrado: 30 Jun 2008, 20:08

Re: Problema con cmd y algunos carácteres

Mensaje por Jonny »

Hola

según he visto en las páginas que me pasó chefito:

En la primera, habla de incluir ésto en el código html:

< meta http-equiv="content-type" content="text/html; charset=es-iso-8859-1" />
(claro, en caso de tratarse de estar trabajando con código html).

La cosa, es que incluyendo esa línea el efecto es el mismo, porque ésto ocurre tanto trabajando con código html, como mostrando el resultado de la consulta de una base de datos en un msgbox().

En una de las páginas del link de los resultados de Google que puso Chefito, ví que a alguien le ocurría lo mismo y al parecer lo solucionó con las funciones utf8_encode() y utf8_decode() de php.
He buscado funciones para codificar/decodificar utf8 en autoit pero ni en éste foro ni en el inglés he encontrado nada...

Por cierto, el tema de configurar Mysql para esto ya ló intenté hace tiempo por el mismo problema con php, pero no hubo forma.

Salu2!
Responder