C# 在C中部署后将文件提取到执行文件夹

C# 在C中部署后将文件提取到执行文件夹,c#,deployment,C#,Deployment,好,, 因此,我想从我的c部署中运行一个媒体文件资源,这样它就可以从项目资源中提取出来,然后通过windows media player播放 这在调试时效果很好 private void button4_Click(object sender, EventArgs e) { string mp4path = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "

好,, 因此,我想从我的c部署中运行一个媒体文件资源,这样它就可以从项目资源中提取出来,然后通过windows media player播放

这在调试时效果很好

    private void button4_Click(object sender, EventArgs e)
    {
        string mp4path = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "Timi.mp4");



        File.WriteAllBytes(mp4path,LearnMedia.Properties.Resources.UNILAD);

    MessageBox.Show(mp4path);


   ProcessStartInfo ps = new ProcessStartInfo("wmplayer.exe", "\""+mp4path+"\"");
    Process.Start(ps);
messagebox显示了它提取到的位置,但是当我部署项目时,文件没有提取到程序文件中,即使messagebox显示了它需要提取到的路径;因此,windows media看不到要播放的文件


请帮帮我,大师

您的应用程序很可能没有对程序文件的写入权限,因为这通常默认为管理员和受信任的安装程序。在ProgramData中为应用程序创建目录并将其用于运行时资源更合适。

我是否可以授予应用程序写入程序文件的权限,或者更好的做法是如何在ProgramData中创建目录?