Windows 有没有办法制作只能播放一次的音频文件?

Windows 有没有办法制作只能播放一次的音频文件?,windows,batch-file,audio,exe,Windows,Batch File,Audio,Exe,我正在寻找一种方法,使音频文件,只能播放一次。这将是很好的,但如果有一个指南,使一个EXE文件,其中包含一个音频文件,当打开播放,然后删除它本身也将工作。我不太懂编程,所以如果像这样的事情只能用EXE文件来完成,那么我需要一个指南 我知道如何使用BAT文件实现这一点,但这至少需要两个文件(BAT文件和音频文件),对于我的使用,我需要一个文件 有没有一种方法可以让我做这件事,或者做这样一个文件?我已经寻找了大约两个小时的方法来实现这一点,但什么也没有找到。这里有一个控制台JScript.NET示例

我正在寻找一种方法,使音频文件,只能播放一次。这将是很好的,但如果有一个指南,使一个EXE文件,其中包含一个音频文件,当打开播放,然后删除它本身也将工作。我不太懂编程,所以如果像这样的事情只能用EXE文件来完成,那么我需要一个指南

我知道如何使用BAT文件实现这一点,但这至少需要两个文件(BAT文件和音频文件),对于我的使用,我需要一个文件


有没有一种方法可以让我做这件事,或者做这样一个文件?我已经寻找了大约两个小时的方法来实现这一点,但什么也没有找到。

这里有一个控制台JScript.NET示例来帮助您入门。不过,它只能播放base64编码的wav数据。如果你想播放mp3,那就有点麻烦了

导入系统;//皈依
导入系统媒体;//对于PlaySync()
导入System.IO;//记忆流
导入系统诊断;//用于进程()的
var base64EncodedWav:String=“将base64编码的WAV文件粘贴到此处”,
audiobytes:byte[]=Convert.FromBase64String(base64EncodedWav),
流:MemoryStream=新的MemoryStream(音频字节),
播放器:SoundPlayer=新的SoundPlayer(流);
//播放,阻塞直到完成
player.PlaySync();
//删除自己
var self:String=System.Reflection.Assembly.GetExecutionGassembly().Location,
任务:流程=新流程();
打印(“此消息将自毁”);
task.StartInfo.FileName=“cmd.exe”;
task.StartInfo.Arguments=“/c timeout/t1&del/q”+self;
task.StartInfo.WindowStyle=ProcessWindowStyle.Hidden;
task.StartInfo.CreateNoWindow=true;
task.Start();

查看
autoIt
和资源自定义项: