检测位于计算机中的系统文件夹,而不仅仅是字符串

时间:2014-11-14 16:32:52

标签: c# winforms

我已经部署了我的应用程序(简单的应用程序),并且我在我的计算机上测试了它,结果看起来很好,因为我的计算机上的系统文件夹位于C: Drive,但是当我在我的朋友计算机上测试它时他位于D: Drive的计算机上的系统文件夹,我收到了错误(翻译为我自己的话)The sound cannot be played due to the unspecified system media folder,这是因为我使用了以下代码:

public static void SoundEffect(string _soundLocation)
        {
            _soundPlayer.SoundLocation = _soundLocation;
            _soundPlayer.Play();
        }

SystemManager.SoundEffect("C:/Windows/Media/Speech Off.wav");

SystemManager是SoundEffect函数所在的类。

我的问题是:如何检测用户计算机上声音的Windows系统文件夹?所以,回到上面我的情况,我想只是检测它。

1 个答案:

答案 0 :(得分:3)

尝试查看SpecialFolder枚举。 特别是在其CommonMusic成员上,该成员可从4.0版本的框架中获得。

所以你的代码可能如下:

 var musicFile = System.IO.Path.Combine("Speech  Off.wav", 
                    Environment.GetFolderPath(Environment.SpecialFolder.CommonMusic));

 SystemManager.SoundEffect(musicFile);