| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
JesúsGandia Master


Registrado: 17 Jul 2004Mensajes: 403Ubicación: Gandia, Valencia
|
Publicado: Mar 16 Feb, 2010 9:36 pm Asunto: MAS portabilidad 2007 a 2010 Builder |
|
|
OTRO PROBLEMA QUE NO ENTIENDO:
Antes ponia este codigo para que en ejecución dependiendo de si el usuario activaba la opcion de RED o no.
| Código: | if(MDatos->Tag)
{
IBEventos->OnEventAlert = IBEventosEventAlert;//ERROR EN ESTA LINEA
Avisa_Eventos(1);
}
else
{
IBEventos->OnEventAlert = NULL;
Avisa_Eventos(0);
} |
Pero me da el siguiente error en compilacion:
[BCC32 Error] ModuloDatos.cpp(138): E2034 Cannot convert 'void (_fastcall * (_closure )(TObject *,AnsiString,int,bool &))(TObject *,AnsiString,int,bool &)' to 'TEventAlert'
Full parser context
ModuloDatos.cpp(27): parsing: void _fastcall TMDatos::DataModuleCreate(TObject *) _________________ Muchos hombres no se equivocan jamás porque no se proponen nada razonable. |
|
| Volver arriba |
|
 |
_Leo Site Admin

Registrado: 11 Ago 2002Mensajes: 1875Ubicación: Lanzarote - Islas Canarias (España)
|
Publicado: Mar 16 Feb, 2010 9:40 pm Asunto: |
|
|
Fijate que tengas los argumentos correctos en tu función "IBEventosEventAlert":
Los argumentos en las versiones anteriores a la 2009:
(TObject* Sender, AnsiString EventName, int EventCount, bool& CancelAlerts)
La nueva declaración:
(TObject* Sender, UnicodeString EventName, int EventCount, bool& CancelAlerts)
El cambio más importante en estas versiones es que son UNICODE, y si no tenías experiencia en esto en otros compiladores de C++ quizás te líes un poco. |
|
| Volver arriba |
|
 |
JesúsGandia Master


Registrado: 17 Jul 2004Mensajes: 403Ubicación: Gandia, Valencia
|
Publicado: Mar 16 Feb, 2010 9:47 pm Asunto: |
|
|
GRACIAS _Leo funciona perfecto.
¿En todo mis proyectos utilizo el tipo AnsiString
Tengo que cambiar todos los valores por UnicodeString? _________________ Muchos hombres no se equivocan jamás porque no se proponen nada razonable. |
|
| Volver arriba |
|
 |
_Leo Site Admin

Registrado: 11 Ago 2002Mensajes: 1875Ubicación: Lanzarote - Islas Canarias (España)
|
Publicado: Mar 16 Feb, 2010 9:57 pm Asunto: |
|
|
| JesúsGandia escribió: | ¿En todo mis proyectos utilizo el tipo AnsiString
Tengo que cambiar todos los valores por UnicodeString? |
O eso, o bien usas "String", que en las versiones viejas está definido como 'AnsiString' y en las nuevas como 'UnicodeString'. Yo llevo haciéndolo así desde la versión 1.
Aunque te aconsejo que le eches un vistazo en la ayuda del C++Builder a todo lo referente a UNICODE y también al apartado "What's new...". Y en general en internet a todo lo referente a este tema... yo la ventaja es que ya conocía estos temas por otros compiladores de C++ y realmente no me ha costado mucho adaptarme a los nuevos cambios. |
|
| Volver arriba |
|
 |
|