Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

Problema con AnsiString y WideString en 2006

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Consultas
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: Problema con AnsiString y WideString en 2006 Responder citando

Hola

Recien he instalado el Builder 2006, tengo un proyecto que estoy desarrollando en BCB6 y al compilarlo en el 2006 me dá el siguiente error:

[C++ Error] Exportacion.cpp(1369): E2015 Ambiguity between '_fastcall Strutils::MidStr(const System::AnsiString,const int,const int)' and '_fastcall Strutils::MidStr(const System::WideString,const int,const int)'

en la línea de código:

Con[I]=MidStr("C.C. IVA ISAN IEPS IGI/IGEITV ",Y*7-13,7);

El problema es que la función MidStr esta sobrecargada y existe una versión para AnsiString y otra para WideString y por lo tanto existe ambiguedad y Builder no lo permite al no saber cual usar.

Sé que la solución es un moldeo, pero este error me aparece en muchas líneas de código y no quiero modificar una por una hasta compilar.

Deseo saber si existe en builder alguna opción para que asuma siempre AnsiString y evitarme los moldeos.

He estado buscando esta opción sin resultado alguno, agradeceré cualquier ayuda.
_________________
Saludos
Roger Ruiz
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

holas

yo respondi sin querer hehehe a tu pregunta en un comentario en el post de "Error Ambiguity con GdiPlus"


mi comentario dice asi :

" eso sale cuando hay funciones sobrecargadas ( function overload) ..y el compiler no sabe a que funcion llamar.. y requiere que de alguna forma le especifiques de manera explicita cual funcion exactamente es la que quieres llamar

ami me ha salido un par de veces cuando me piden una string y pongo "blabla" y hay 2 funciones sobrecargadas una que pide WideString y otra AnsiString y le tengo que poner (WideString)"blabla" para que sepa cual exactamente "


espero esto haya sido de tu ayuda

Saludos!! Very Happy
_________________
Hermes David Montes de oca Segovia
dodongoxp@yahoo.com
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email Visitar sitio web del autor MSN Messenger
Mensaje    Asunto: Responder citando

Hola dodongoxp

Agradezco tu respuesta, lo que me comentas ya lo sabía, de hecho lo explico claramente en mi propio mensaje, la pregunta es:

¿Existe alguna directiva u opción del compilador, para que asuma que todas las cadenas y funciones a cadenas, sean del tipo AnsiString?

Si no existe, ni modo, tendré que modificar todas las líneas que me dan este error.

Por cierto también leí el mensaje de un par de compañeros que dicen haber pasado del BCB6 a 2006 sin ningun problema, cosa que me extraña, pues no sé si sea cosa de la forma de programar que tengo, pero a mi me dá un montón de errores un proyecto que compila y se ejecuta perfectamente en BCB 6.

Será cosa de ir buscando la sintaxis o el equivalente en 2006 de cada línea de código erronea.

Esto lo comento para los que se vayan a actualizar esten enterados.
_________________
Saludos
Roger Ruiz
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

Hola foristas

He hecho la prueba haciendo el moldeo a la dichosa línea con error y como por arte de magia el buider dejo de dar error en las demas líneas, tal pareciera que solo necesita una línea donde se indicara el tipo AnsiString y automaticamente asume que lo demas es igual.

El caso es que ahora compila pero al parecer no puede enlazar, ya que da el error de:

[Linker Fatal Error] Fatal: Access violation. Link terminated.

Hice una prueba con una aplicación pequeña (un botón que despliega un mensaje) y no hay ningun problema, al parecer al haber importado mi proyecto desde BCB 6 causa algun problema en algun lado.

Si alguien ha resuelto algo similar agradeceré su respuesta.
_________________
Saludos
Roger Ruiz
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

Hola

Caso resuelto, hice un nuevo proyecto e importe todas las unidades al nuevo proyecto y listo.


Gracias a todos los que se tomaron la molestia de leer mis mensajes.
_________________
Saludos
Roger Ruiz
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.