Question

I'm trying to compile an old program with the new Borland C++-Builder (Embarcadero Studio XE2).

I thought it would be easy, but I get a lot of errors. e.g. using something like somefunction(TPoint(0,0)) won't work when it's expecting a reference, so I had to write TPoint t=TPoint(0,0);somefunction(t)... also some errors like math.log could work with double of float but got uint, so it can't decide...

But the main Problem seems to regard OWL. I have a codeline there that says something about mismatching function parameter types:

DEFINE_RESPONSE_TABLE1(TTSCalibDialog, TDialog) EV_LVN_ENDLABELEDIT(IDC_CALIBMASSES, MassCol_EndLableEditResp), EV_COMMAND(IDC_CALIBRATEBUT, CalibrateResp), EV_COMMAND(IDC_CALIBSAVEBUT, CalibSaveResp), EV_COMMAND(IDC_CALIBLOADBUT, CalibLoadResp), EV_COMMAND(IDC_CALIBRESTORE, CalibRestoreResp), EV_COMMAND(IDC_CALIBSETNUMMASSES, CalibSetNumMassesResp), EV_WM_DESTROY, // Ev_WM_Destroy END_RESPONSE_TABLE;

The line

EV_LVN_ENDLABELEDIT(IDC_CALIBMASSES, MassCol_EndLableEditResp)

gives the error

[BCC32 Fehler] AcMode_TS_Dial.CPP(13): E2285 Keine Übereinstimmung für 'b_LV_DISPINFO_NOTIFY_Sig(void (TTSCalibDialog::*)(TLvDispInfoNotify &))' gefunden while the second argument is declared void MassCol_EndLableEditResp(TLwDispInfoNotify& nmHdr)
{MassCol->EndLableEditResp(nmHdr);};

The first argument seems also legit to use here...

Later there is a line used

EV_LVN_ENDLABELEDIT(IDC_SIMWEIGHTCOL,AddCol0_EndLableEditResp),

with the same error, so I think there might be an include or namespace missing...

Does anyone know this function or what could cause the error?

Était-ce utile?

La solution

After some time I asked in the OWLNext-Forum, too, recieving the right answer there:

http://sourceforge.net/p/owlnext/discussion/97175/thread/a0cc4131/

void TTSCalibDialog::MassCol_EndLableEditResp(TLwDispInfoNotify& nmHdr) 
{MassCol->EndLableEditResp(nmHdr);}

This function returns void, however, bool is required. Changing the type and returning true inside solved this issue.

There were a few other issues as well, but now the program is happily compiling on the XE2-Studio.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top