2
votes

I downloaded "Wave Audio Package" VCL Component from here http://www.delphiarea.com/downloads/, the component package is for Delphi and I need to use it from CBuilder side (I'm using RAD Studio XE), after a setting tweaking the dproj (in C++ output file generation I set to "Generate all C++ Builder files (including package libs)") I managed to get VCL components working in CBuilder side.

But there're still problems, I can't use it's 'global' function (under namespace Waveutils::) such as Waveutils::SetPCMAudioFormatS, Waveutils::GetWaveAudioFormat, etc. The compiling process was fine, but there were link problem said that the linker cannot find reference for that function, even after I added library 'WA2010.lib' (which is generated when I built the component from delphi side). I have dumped the WA2010.lib using TDUMP, it seems that it contains code for the functions.

Are there steps that I'm missing ? Thanks in advance for any help.

1
I had problems some time ago with installing Zeos for the C++ Builder personality of BDS2006, since there was a bug with the installation process. Check the steps 1-5 in stackoverflow.com/questions/1594565/… and see if any of them may help you. Afaik, this happened at least until version 2009, not sure after that.Guillem Vicens

1 Answers

0
votes

If components are opensource use them as Dynamic Instantiate. Keep in mind:

do not install components in C++ Builder!

it is evil. Add component units to your application and instantiate:

TWaveComponent *waveComponent; // in global scope

//in form constructor:
waveComponent = new TWaveComponent(Owner); 
waveComponent->property1 = value1;
waveComponent->property2 = value2;
waveComponent->OnEvent = myEventHandler;
...