Ver Mensaje Individual
  #1  
Antiguo 09-05-2017
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Posts: 1.350
Reputación: 19
Angel.Matilla Va por buen camino
Unhappy Función no existe (Call of nonfunction)

Tengo un formulario en un proyecto en BCB 6 con esto:
Código:
#include <vcl.h>
#pragma hdrstop

#include "MenInt.h"
#include "Persona.h"
//---------------------------------------------------------------------------

#pragma package(smart_init)
#pragma resource "*.dfm"
TfMenInt *fMenInt;

extern AnsiString cAux, NombreUser;
extern bool lPrueba;
extern int LinEje;
extern TDateTime dFecha;
extern TListItem *pItem;
extern TReplaceFlags oReplace;

extern void ColorForm(TForm *Form);
extern int Mensaje(int Icono, AnsiString Mensaje, AnsiString Botones);
He destacado una función, que uso absolutamente en todos los formularios del proyecto (58 en total) y en todos ellos está declarada exactamente igual como es lógico.

También en todos la uso exactamente de la misma forma; en este formulario la primera vez que la llamo lo hecho así:
Código:
fPersona->Query->Close();
fPersona->Query->SQL->Text = "INSERT INTO Correo (Remite, Destino, Hora, Asunto, Mensaje, Leido) VALUES (:Remite, :Destino, :Hora, :Asunto, :Mensaje, 0)";
fPersona->Query->ParamByName("Remite")->AsString  = NombreUser;
fPersona->Query->ParamByName("Hora")->AsDateTime  = Now();
fPersona->Query->ParamByName("Asunto")->AsString  = Asunto->Text;
fPersona->Query->ParamByName("Mensaje")->AsString = Mensaje->Text;

if (Usuarios->Visible)
{
     lPrueba = false;
     for (nItem = 0; nItem < Usuarios->Items->Count; nItem ++)
          if (Usuarios->Items->Item[nItem]->Checked)
          {
               lPrueba = true;
               try
               {
                    fPersona->Query->Close();
                    fPersona->Query->ParamByName("Destino")->AsString  = Usuarios->Items->Item[nItem]->SubItems->Strings[0];
                    fPersona->Query->ExecSQL();
                    fPersona->Query->Transaction->Commit();
               }
               catch(...)
               {
                    fPersona->Query->Transaction->Rollback();
               }
          }

     if (!lPrueba)
     {
          Mensaje(3, "No ha seleccionado ningún destinatario.", "Volver");     // <---- AQUÍ DA EL ERROR EL COMPILADOR
          return;
     }
}
Pero a la hora de compilar me está dando un error E2314 Call of nonfunction en esa llamada. Y estoy totalmente perdido sobre los motivos ya que SIEMPRE lo hago igual.
Responder Con Cita