c#中添加报警音

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#中添加报警音相关的知识,希望对你有一定的参考价值。

我用c#在winform中添加报警音。。。应该怎么写。。。谢谢各位大虾

调用 Beep() API 来发出声音
Beep() 是在 kernel32.lib 中定义的,在MSDN 中的定义,Beep具有以下原型:
BOOL Beep(DWORD dwFreq, // 声音频率
DWORD dwDuration // 声音持续时间);
用 C# 编写以下原型:
[DllImport("kernel32.dll")]
public static extern bool Beep(int frequency, int duration);
然后就可以调用Beep了。
参考技术A 哇咧,用得着那么麻烦吗,还要用API -_-.....

引用程序集:Microsoft.VisualBasic

测试代码如下:---------------------------------------

Microsoft.VisualBasic.Devices.Audio audio = new Microsoft.VisualBasic.Devices.Audio();

//播放WAV文件
audio.Play("WAV地址");
//播放内存数组
audio.Play(new byte[]
//声音数据...
, Microsoft.VisualBasic.AudioPlayMode.Background);
//播放系统声音
audio.PlaySystemSound(System.Media.SystemSounds.Beep);
参考技术B 报警音有两种方式,一种是调用语音文件报警,再有一种方式就是让服务器内存报警。当然调用语音文件报警的前提是必须有音箱。就不用说了。让内存报警主要就是C#调用windows的API函数,让内存报警。具体代码不给你写了,告诉了你思路,那就需要自己去摸索了。总是复制粘贴被人的代码,自己最后还是什么都不会的。关键是自己要动脑。

C#上位机自动获取机器人日志与报警


转载请先后台留言,大家一起支持原创,推动机器人使用和发展

点击阅读原文,获取完整机器人工作站和C#自动获取机器人日志报警上位机源代码

1.ABB机器人PCSDK提供了丰富的日志接口,比如可以方便的实现如下的自动读取机器人日志功能(即机器人有新日志产生,上位机即可自动获取并更新日志显示)


2. 要读取日志信息,可以创建如下代码

 private void button8_Click(object sender, EventArgs e) { EventLog log = controller.EventLog; EventLogCategory cat; cat = log.GetCategory(0);            //0表示读取所有日志,具体见CategoryType this.textBox4.Text = "";            { foreach (EventLogMessage emsg in cat.Messages) { this.textBox4.Text = this.textBox4.Text+emsg.Timestamp+" "+emsg.Title+" "+"\r\n";                   //讲每一条日志的时间戳和日志标题写入并显示                } } }

3. 以上方法需要人为触发获取,也可通过Subscribe方法进行订阅,即事件触发


  private void subscribe_msg() { log = controller.EventLog; log.MessageWritten += new EventHandler<MessageWrittenEventArgs>(msg_WritenChanged); //添加日志事件触发 }
private void msg_WritenChanged(object sender, MessageWrittenEventArgs e) { this.Invoke(new EventHandler(UpdateGUI5), sender, e); //为了避免界面线程和主线程冲突,采用委托方式 } private void UpdateGUI5(object sender, System.EventArgs e) {            this.textBox4.Text = ""; {                  cat = log.GetCategory(0); foreach (EventLogMessage emsg in cat.Messages) { this.textBox4.Text = this.textBox4.Text + emsg.Timestamp + " " + emsg.Number+emsg.SequenceNumber+" "+emsg.Title + " " + "\r\n"; //将日志的时间戳,日志代码和日志标题写入 } }        }


********************************

点击阅读原文,获取完整机器人工作站和C#自动获取机器人日志报警上位机源代码

更多内容








searchL仿真工作站

pathoffset轨迹实时修正功能

撤销处理程序















更多大牛讲解视频,可以前往https://www.aiimooc.com 搜索ABB观看或者扫描以下二维码



以上是关于c#中添加报警音的主要内容,如果未能解决你的问题,请参考以下文章

VM中linux 怎样关闭vi报警音

蜂鸣器怎么才能发出连续不断的报警音

C#开发WinCC语音报警插件

C#开发WinCC语音报警插件

C# Winform 程序 使用电脑自带的喇叭,输出报警声?

C#关于软件界面无响应BUG报警程序异常退出等情况的监控和报警