none
无法在windows服务中播放声音 RRS feed

  • 问题

  • 我使用C#.net framework2.0开发一个windows服务,想在windows服务中播放一个声音,以做提示,

    第一个方法:

            [DllImport("kernel32.dll")]

            public static extern bool Beep(int frequency, int duration);

     Beep(0x7FF, 1000);

    第二个方法,使用Microsoft.VisualBasic.Interaction.Beep()

    这二个方法,都无法在windows服务中播放声音

    在普通的wimndows程序中,这二种方法,播放声音都正常

    windows服务的帐户已设置为本地系统帐户。
    • 已编辑 蒋雷军 2010年6月29日 13:43
    2010年6月29日 13:00

答案

  • Beep在Vista或者之后的版本里面的确不行,因为服务不再可以和桌面用户交互。你看看那core audio service行不行。



    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP
    2010年6月29日 18:42
    版主
  • 你好!

         你试试这个方法:

         System.Media.SystemSounds.Beep.Play()


    周雪峰
    2010年7月1日 9:48
    版主

全部回复

  • Beep在Vista或者之后的版本里面的确不行,因为服务不再可以和桌面用户交互。你看看那core audio service行不行。



    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP
    2010年6月29日 18:42
    版主
  • 你好!

         你试试这个方法:

         System.Media.SystemSounds.Beep.Play()


    周雪峰
    2010年7月1日 9:48
    版主