我試圖在Windows 7或8上爲我的WPF繪圖應用程序啓用/禁用觸摸功能。使用C更新WISP(Windows墨水服務平臺)的註冊表更改
據我搜索,鏈接How to turn off all touch input at application, window or control level?給出了觸摸功能狀態的註冊表的正確位置。
但是,它並沒有受到影響,因爲Windows系統可能沒有被確認的變化。
在我的設想中,User32.dll刷新與SystemParametersInfo需要進行更改而不重新啓動。 但很難弄清楚如何做到這一點,因爲我不知道哪一個SPI_something與WISP有關。
有沒有其他的方法,或者你能幫我做到這一點?
的代碼示例是如下(非常相似於上述的StackOverflow引用鏈路)
RegistryKey regKey = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Wisp\Touch", true);
if (regKey != null)
{
regKey.SetValue("TouchGate", 0x00000000); // Turn off touch.
regKey.Close();
// NOTIFY REGISTRY CHANGES TO WINDOWS
}
感謝您的回答。我沒有意識到Notify_SettingChange是由interop提供的。奇怪的是,它不適用於我(Win8),但它在我手動編輯註冊表值時起作用。 – Youngjae