在 Delphi XE5/Android 平台上播放声音警报/蜂鸣声

2023-11-30

有没有办法在Delphi XE5/Android平台上播放声音警报/蜂鸣声?

我想要实现的是如何使用 Beep 功能像 Windows 应用程序一样播放系统警报/蜂鸣声,或者至少找到系统音频文件的路径,以便我可以根据事件运行特定的音频文件。


我最终使用资源文件来播放我的自定义音频文件。

Steps:

  1. 从 Delphi IDE 单击“项目”。
  2. 然后选择“资源和图像...”。
  3. 选择您的媒体文件并将其设置为 RCDATA。
  4. 记住您的资源标识符。

Note:确保 TMediaPlayer 支持该媒体类型,否则将无法工作。

德尔菲程序:

procedure PlayAudio(ResourceID: string);
var
  ResStream: TResourceStream;
  TmpFile: string;
begin
  ResStream := TResourceStream.Create(HInstance, ResourceID, RT_RCDATA);
  try
    TmpFile := TPath.Combine(TPath.GetTempPath, 'tmp.mp3');

    ResStream.Position := 0;
    ResStream.SaveToFile(TmpFile);
    MediaPlayer1.FileName := TmpFile;

    MediaPlayer1.Play;

  finally
    ResStream.Free;
  end;
end;

Usage:

PlayAudio('Resource_1');
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Delphi XE5/Android 平台上播放声音警报/蜂鸣声 的相关文章

随机推荐

  • 使用 Include 进行 EF Core 联接,但外键不是另一个表上的主键

    我试图将我的表与另一端的外键和主键关联起来 但现在我将使用外键 它不是所述表的主键 我正在使用 逆性质 但我认为它有一个错误 因为我已经环顾四周几个小时了 而且所有人都说同样的事情 文件表 public class Document Key
  • 为什么我的节点服务器处理请求两次?

    我有以下简单的节点服务器 const http require http http createServer function req resp console log request arrived resp writeHead 200
  • 分离度

    有没有一种方法 有效或无效 来找到给定 facebook 上的两个人 X 和 Y 像这样定义的数字 如果 X 和 Y 是朋友 则 1 否则 如果 X 有一个朋友 而该朋友也是 Y 的朋友 则 2 否则 如果 X 是朋友 Y 的朋友的朋友 则
  • Angular 2 中的 XML 数据解析

    我是 angularjs2 和 typescript 的新手 在我的项目中 我有一个包含 xml 作为字符串的字符串变量 我需要处理该字符串并根据 XML 中的节点访问字符串中的数据 我在谷歌搜索方面遇到了困难 请帮助我出去
  • 在 Spring Boot 中动态更改 application.properties 值

    目前我正在 Spring Boot 中开发一个基于 REST 的项目 我已在 application properties 文件中添加了 api url i e 应用程序属性 api base url http localhost 8080
  • 等k子集算法

    有谁知道相等 k 子集算法的良好且有效的算法吗 最好是 c 或 c 可以处理 100 个元素向量 可能具有复杂性和时间估计 前任 9元向量 x 2 4 5 6 8 9 11 13 14 我需要生成所有 k 3 不相交子集 总和 24 该算法
  • toString() Java 中的泛型类型

    如何打印通用 java 类型的类型 反射 有什么技巧吗 public class Foo
  • OpenSSL 和 OpenMP 的多线程程序段错误

    我在 C 多线程程序中使用 OpenSSL 并遇到问题 所以我写了一个小程序来尝试缩小问题的范围 除了主函数之外的函数都是从https github com plenluno openssl blob master openssl cryp
  • Linux 下 C++ Promise.set_value 失败并出现未知错误

    我正在尝试让我的模拟在我们的高性能服务器上运行 它 不幸的是 使用 CentOS Linux 版本 7 7 1908 核心 而不是我正在开发程序的 Win10 随之而来的是大量错误 其中一个我无法修复 include
  • 如何使用 Python 写入 Excel 电子表格?

    我需要将程序中的一些数据写入 Excel 电子表格 我在网上搜索过 似乎有很多可用的软件包 xlwt XlsXcessive openpyxl 其他人建议写入 csv 文件 从未使用过 CSV 也不太明白它是什么 该程序非常简单 我有两个列
  • 使用 grep 提取 html 文件的标题

    cat 1 html grep
  • 如何在 Android Studio 中覆盖/更新 Jama Matrix 而不会出现任何错误?

    Jama 矩阵在我的代码中定义 矩阵计算类 如下 private Matrix A private Matrix B private Matrix C 矩阵A初始化如下 A new Matrix 2 2 A set 0 0 1 5 A se
  • 使用部分显式排序然后再进行另一个排序?

    我需要的是以自定义方式订购列表 我正在研究正确的方式并找到了 guava 的订购 api 但问题是我订购的列表并不总是相同的 我只需要2 个字段位于列表顶部 例如我有这个 List
  • 如何绕过 gitlab-runner 要求输入 sudo 命令的密码或 gitlab-runners 的默认密码是什么

    我是 gitlab runner 的新手 并尝试自动化我的项目 以便每当发布新标签时 它都应该构建一个新的 deb 包 PS 我用的是mac 下列的thisgitlab 的官方链接来完成我的任务 我的第一个 gitlab ci yml 文件
  • jquery连续运动动画

    连续运动 我想在上面的网站中重新创建卡车时刻 这是在 mootools 中完成的 我该如何编码 是否有 jQuery 插件可以做到这一点 因此 从屏幕的开始到结束为对象设置动画 然后重新开始 我该如何做这个 jQuery 任何帮助将不胜感激
  • Sparkr 将 DF 写入文件 csv/txt

    你好 我正在纱线模式下开发 SparkR 我需要将 Sparkr df 写入 csv txt 文件 我看到有write df但它会写入镶木地板文件 我尝试做这些事情 RdataFrame lt collect SparkRDF write
  • CircleCI 中的 Terraform 销毁失败

    我目前使用 CircleCI 作为我的 CI 工具来使用 Terraform 构建 AWS 基础设施 我的流程是 使用 Terraform 创建 AWS 实例 安装 Docker 并在其上运行 Nginx 镜像 破坏基础设施 我的 Circ
  • '' 的错误冲突类型是什么意思?

    我收到一条错误消息 错误 的类型冲突 这是什么意思 快速解决 确保您的函数在调用之前声明一次且仅声明一次 例如 更改 main myfun 3 4 double myfun double x return x To double myfun
  • 使用 netcat 和 grep 有条件地运行命令

    我需要 netcat 来侦听传入的 HTTP 请求 并且根据请求 我需要运行一个脚本 到目前为止我有这个 netcat lk 12345 grep Keep Alive 因此 每次 netcat 收到包含 keep alive 的包时 我都
  • 在 Delphi XE5/Android 平台上播放声音警报/蜂鸣声

    有没有办法在Delphi XE5 Android平台上播放声音警报 蜂鸣声 我想要实现的是如何使用 Beep 功能像 Windows 应用程序一样播放系统警报 蜂鸣声 或者至少找到系统音频文件的路径 以便我可以根据事件运行特定的音频文件 我