delphi - 在Cbuilder中使用Delphi组件链接错误

标签 delphi audio c++builder vcl

我从这里下载了“Wave Audio Package”VCL组件http://www.delphiarea.com/downloads/ ,组件包适用于 Delphi,我需要从 CBuilder 端使用它(我正在使用 RAD Studio XE),在调整 dproj 的设置之后(在 C++ 输出文件生成中,我设置为“生成所有 C++ Builder 文件(包括包) libs)") 我设法让 VCL 组件在 CBuilder 端工作。

但仍然存在问题,我无法使用它的“全局”函数(在命名空间 Waveutils::下),例如 Waveutils::SetPCMAudioFormatS、Waveutils::GetWaveAudioFormat 等。编译过程很好,但有链接问题表示链接器无法找到该函数的引用,即使在我添加了库“WA2010.lib”(这是我从delphi端构建组件时生成的)之后也是如此。我已经使用 TDUMP 转储了 WA2010.lib,它似乎包含函数的代码。

我是否遗漏了哪些步骤?预先感谢您的帮助。

最佳答案

如果组件是开源的,请将它们用作动态实例化。 请记住:

do not install components in C++ Builder!

这是邪恶的。 将组件单元添加到您的应用程序并实例化:

TWaveComponent *waveComponent; // in global scope

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

关于delphi - 在Cbuilder中使用Delphi组件链接错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8116747/

相关文章:

c++ - 优化估计 Pi 函数 C++

delphi - 如何在 C++Builder 中使用 VCL 组件转换接口(interface)

Delphi:将记录参数分解为字段

delphi - Peter 下面的代码是否存在内存泄漏?

javascript - 如何在不附加到 DOM 的情况下正确删除 html5 音频?

java - 在主屏幕上播放音乐

c++ - 如何在 C++ Builder 4.0 中创建 BPL 文件?

java - 如何使用 JNI 在 Delphi 中设置日期

delphi - Delphi 7 中 FreeAndNil 的替代品是什么?

objective-c - 独立的实时输入音频可视化器应用程序使用哪种语言/API?