2009-06-11 58 views
1

使用外殼的開箱即用WinCE(5.0和6.0)圖像似乎在每次擊鍵時都會有鍵擊聲音。 如何關閉此聲音,同時讓音頻系統保持獨立? (我仍然需要聽到來自我的應用程序的音頻)。它似乎不是我可以設置的系統聲音(如窗口最小化或最大化)。我沒有看到SystemParameters API中的任何內容。任何幫助,將不勝感激。如何禁用windows ce中的按鍵聲音?

在此先感謝!

回答

2

試試這個

菜單>設置>聲音

向右滾動到它說: 「鍵盤控制」

集末尾爲 「無」

您是點擊免費!

here

+0

死鏈接pocketpcjunkies.com – Baccata 2018-01-05 13:27:51

0
; This registry setting controls the checkboxes dsiplayed in the Sounds CPL 
; under "enable clicks & taps". Set bit0 if you have a keyboard, set bit1 if 
; you have a touch screen. Set bit2 if you have HW buttons (NOTE: for now 
; HW buttons are mutually exclusive with the keyboard) 

[HKEY_LOCAL_MACHINE\ControlPanel] 
    "InputConfig"=dword:2 

我覺得這個刪除的水龍頭,從礦山(使用硬件按鈕),我發現它在某些時候隨機論壇...

3

我找到了答案,這個組合如下:(http://msdn.microsoft.com/en-us/library/aa913008.aspx)和一些源代碼挖掘,發現了無證的'AudioUpdateFromRegistry'API。

所以這個代碼位的伎倆:

using Microsoft.Win32; 

namespace CEAudio 
{ 
    public enum KeyClickVolume 
    { 
     Off, 
     Soft, 
     Loud 
    }; 
    public class Utility 
    { 
     [DllImport("coredll.dll")] 
     public static extern void AudioUpdateFromRegistry(); 

     static readonly string KeyVolRegKey = @"HKEY_CURRENT_USER\ControlPanel\Volume"; 
     public static KeyClickVolume KeyClickVolume 
     { 
      set 
      { 
       uint[] vals = new uint[] { 0, 1, 0x10002 }; 
       Registry.SetValue(KeyVolRegKey, "Key", vals[(int)value], RegistryValueKind.DWord); 
       AudioUpdateFromRegistry(); 
      } 
      get 
      { 
       switch((uint)Registry.GetValue(KeyVolRegKey, "Key", (uint)0x10002)) 
       { 
        case 0: return KeyClickVolume.Off; 
        case 1: return KeyClickVolume.Soft; 
        case 0x10002: 
        default: return KeyClickVolume.Loud; 
       } 
      } 
     } 
    } 
} 
1

我實際使用此註冊表值,類似於亞當的以上: [HKEY_LOCAL_MACHINE \ ControlPanel控制] 「InputConfig」= DWORD:3

值'3'使聲音控制面板上的「Screen Taps」選項可以關閉。 。