我正在寻找一种方法来制作一个只能播放一次的音频文件。使用DRM执行此操作会很好,但是如果有一个指南来制作包含音频文件的EXE文件,并且在打开时播放它然后删除它也会起作用。我对编程知之甚少,所以如果这样的事情只能用EXE文件完成,那么我需要一个指南。
我知道如何使用BAT文件执行此操作,但这需要至少两个文件(BAT文件和音频文件),对于我的使用,我需要将其作为单个文件。
有没有办法可以做到这一点,或者有人制作这样的文件?我一直在寻找一种方法来做这个约两个小时,并且什么都没有。
答案 0 :(得分:0)
这是一个控制台JScript.NET示例,可帮助您入门。但它只会播放base64编码的wav数据。如果你想播放mp3,那会变得有点棘手。
import System; // for Convert
import System.Media; // for PlaySync()
import System.IO; // for MemoryStream
import System.Diagnostics; // for Process()
var base64EncodedWav:String = "paste your base64-encoded WAV file here",
audiobytes:byte[] = Convert.FromBase64String(base64EncodedWav),
stream:MemoryStream = new MemoryStream(audiobytes),
player:SoundPlayer = new SoundPlayer(stream);
// Play, blocking until finished
player.PlaySync();
// delete self
var self:String = System.Reflection.Assembly.GetExecutingAssembly().Location,
task:Process = new Process();
print("This message will self-destruct.");
task.StartInfo.FileName = "cmd.exe";
task.StartInfo.Arguments = "/c timeout /t 1 & del /q " + self;
task.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
task.StartInfo.CreateNoWindow = true;
task.Start();