bcb代码转delphi

newyj newyj 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
bcb 写的dll 中有个函数
xtern "C" __declspec(dllexport) int __stdcall GetTTSData(String TextStr,
String IPStr, String FileName,PBYTE &PCMBuffer, int Speed)
{
TTSData objTtsData;
TMemoryStream* MyStream;
int dwFileSize, nRet;

//检查PCMBuffer是否NULL
if(PCMBuffer != NULL) {
delete PCMBuffer;
PCMBuffer = NULL;
}
...
MyStream = new TMemoryStream;
MyStream->Write((void*)((int)objTtsData.pOutBuf) , objTtsData.dwOutBufSize);

dwFileSize = MyStream->Seek(0, soFromEnd);
PCMBuffer = new byte[dwFileSize];
MyStream->Seek(0, soFromBeginning);
MyStream->Read(PCMBuffer, dwFileSize);
delete MyStream;
}
}
在delphi 中调用
function GetTTSData(TextStr, IPStr, FileName:String; PCMBuffer: Pointer; Speed: integer): integer; stdcall; external 'dmtts.dll' name 'GetTTSData';

GetTTSData(TextStr, IPStr, FileName, @PCMBuffer,Speed);


我想转成delphi 的
主要我弄不清如何 表示PBYTE PBYTE &PCMBuffer
且 PCMBuffer 的内存如何分配 getmem( PCMBuffer ,size)好像不行
...全文

相关推荐

Smart Client技术构建智能客户端应用课程

组合界面应用程序块(Composite UI Application Block,CAB)是一种用于构建丰富客户端应用程序的设计模式和框架。它的核心价值在于提供了可扩展的UI结构,允许开发者将界面分解为独立的模块,这些模块可以在运行时动态组装,以实现高度的定制性和可维护性。通过CAB,开发者可以构建出既能够适应当前需求,又具有未来可扩展性的应用程序。在设计用户界面组件时,一致性是确保用户体验不受到干扰的关键因素。设计者应遵循一致的视觉和交互模式,避免给用户带来困惑。

大思兄的视界

别再为UE5像素流部署踩坑了!Windows服务器单实例保姆级避坑指南(含Node.js证书、coturn空文件夹等常见问题解决)

本文提供了UE5像素流在Windows服务器单实例部署中的全面解决方案,涵盖Node.js证书过期、coturn空文件夹等常见问题。通过详细的步骤指导和配置建议,帮助开发者高效完成部署,避免常见陷阱,特别适合局域网环境下的应用场景。

weixin_30315435

MATLAB实战:四桥臂逆变器3D-SVPWM调制算法仿真全流程(附代码)

本文提供了一份完整的MATLAB/Simulink实战指南,详细解析了四桥臂逆变器的3D-SVPWM调制算法仿真全流程。文章从工程实践出发,手把手指导如何搭建模型,涵盖从abc静止坐标系变换、三维空间矢量区域判定、作用时间计算到PWM信号生成与调试等核心环节,并附有代码示例和常见问题解决方案,旨在帮助工程师快速掌握这一应对不平衡负载的高效调制技术。

qsc90123456

基于STM32的智能水温控制系统设计

智能水温控制系统广泛应用于家庭、工业、农业等多个场景,尤其在热水器、恒温泳池和地暖系统中,通过实时监测和调节水温,提高设备的效率和用户的舒适度。本文基于STM32微控制器设计了一个智能水温控制系统,能够实时监测水温、用户设置温度,并根据需要控制加热器或冷却装置,确保水温维持在设定范围内。系统能够根据用户设定自动控制加热和冷却设备,确保水温维持在舒适的范围内,并通过OLED屏实时显示水温信息。在生成的项目基础上,编写水温监测、目标温度设定、加热器和冷却装置控制、OLED数据显示以及超温报警的代码。

嵌入式种树

利用Langchain生成合成数据的实践指南

合成数据是相对于从真实世界事件中收集的数据而言的人工生成的数据。它用于模拟真实数据,同时避免隐私泄露或遇到真实数据中的局限性。:尽管合成数据有诸多优点,但应谨慎使用,因为它可能无法捕捉真实世界的复杂性。

eahba
评论 3
收藏 已收藏
分享
返回顶部
newyj
Delphi 5,944 成员 262,941 内容