首页 > 编程语言 >C# SoundPlayer播放资源文件中嵌入的.wav文件

C# SoundPlayer播放资源文件中嵌入的.wav文件

时间:2024-05-18 16:31:18浏览次数:22  
标签:文件 failbyte SoundPlayer C# passbyte static pass fail null

using System.IO;
using System.Media;
using System.Windows.Forms;
using Namespce.Properties;

public static class SpeakerStream {

    static Stream pass= Resources.pass;
    static Stream fail= Resources.fail;

    static byte[] passbyte = null;
    static byte[] failbyte = null;

    public static void Pass() {
        if (passbyte == null) {
            passbyte = new byte[pass.Length];
            pass.Read(passbyte, 0, (int)pass.Length);
        }
        Play(passbyte);
    }

    public static void Fail() {
        if (failbyte == null) {
            failbyte = new byte[fail.Length];
            fail.Read(failbyte, 0, (int)fail.Length);
        }
        Play(failbyte);
    }
    static void Play(byte[] filebyte) {
        if (filebyte!=null) {
            SoundPlayer player = new SoundPlayer(new MemoryStream(filebyte));
            player.Play();
            player.Dispose();
        } else {
            MessageBox.Show($"未找到指定资源:\n无法播放!");
        }
    }
}

 

标签:文件,failbyte,SoundPlayer,C#,passbyte,static,pass,fail,null
From: https://www.cnblogs.com/leavind/p/18199441

相关文章

  • Reflective Journal III
    1)Tomakeadigitalstory,youmustfirstwriteagoodscriptandstoryboard,sothatyouhaveaclearunderstandingandgraspofthedigitalstoryyouwanttotell.Posteriorly,IfoundanillustrationofthestoryfromtheInternetanduseditasaback......
  • 关于cmd运行javac提示'javac' 不是内部或外部命令,也不是可运行的程序的问题
     大家可以看到我这边cmd运行javac命令,它对我进行了错误的提示,提示javac不是可运行命令和程序。这个问题的根本在于环境变量的配置出现了错误。接下来就要进行jdk的环境配置了。  注意点:这里要定位到自身存放jdk的bin目录才会生效。  点击确定即可,然后打开cmd窗口......
  • Codeforces Round 945 (Div. 2) A-D
    A.ChessForThree模拟。首先可以发现每一次对局三人的得分总和加\(2\),所以若干次对局后得分总和也一定是\(2\)的倍数,然后为了使和棋数量尽可能多,一直让得分最高的两人和棋且得分数各减\(1\)直到无法做出和棋为止。#include<bits/stdc++.h>usingnamespacestd;#def......
  • 在 JavaScript 中保留小数点后两位的方法
    From: https://www.jb51.net/javascript/301602kuw.htm在 JavaScript 中,有多种方法可以保留小数点后两位,本文给大家分享比较常用的方法,文末给大家介绍了实现数据格式化保留两位小数的多种方法,感兴趣的朋友一起看看吧 在JavaScript中,保留小数点后两位的方法在JavaS......
  • HTML 15 - CSS IDs
     HTML"id"isanattributeusedtouniquelyidentifyanelementwithinawebpage.ItservesasalabelforthatelementandenablesJavaScriptandCSStotargetitspecifically.Thisidentificationhelpsinapplyingcustomstyles,makinginter......
  • CTFshow pwn075
    CTFshowpwn075题目描述:栈空间不够怎么办?首先检查保护:32位开启NX保护,部分开启RELRO,放入ida中看有两次输入点,输入只能到返回地址,所以考虑用到栈迁移exp:frompwnimport*p=remote("pwn.challenge.ctf.show",28276)elf=ELF("./pwn75")#p=process([elf.path])#l......
  • [SWPUCTF 2016]Web7 利用ssrf攻击redis
    今天做了一道攻击redis的相关题目,以前没接触过。初始界面有输入框,随便输入看看。是urllib2相关库报错,去搜了搜发现是Python2的Urllib2头部注入(CVE-2016-5699)。那就看看这个cve。说是Python2.x3.x的urllib/urllib2从数据解析到发包的整个流程中,均未对URL提供安全性过滤或检查......
  • uniapp 文件管理器(文件选择)
    仅app//#ifdefAPP-PLUSexportfunctionopenFileManager(){returnnewPromise(async(resolve,reject)=>{try{awaitrequestPermission();//获取应用主Activity实例对象constmain=plus.android.runtimeMainActivity();//c......
  • HTML 14 - CSS Classes
    InHTML,aclassisanattributethatcanbeappliedtooneormoreelementsandisusedtostyleandcategorizeelementsbasedoncommoncharacteristicsorpurpose.Classesallowsmultipleelementstosharethesamestylingrules.Byassigningthesamec......
  • P2938 [USACO09FEB] Stock Market G
    原题链接题解1.每一天只有二种决策,第一是不买,第二是当天买过几天抛第二种决策等价于当天买入第二天抛,原理如下对于一只股票,我们在第\(i\)天买第\(j\)天卖,其效果可以被看为在第\(i\)天买,第\(k\)天卖\((......