.Net Compact Framework — добавить вибрацию к событию нажатия кнопки

Мне интересно, может ли кто-нибудь дать мне подсказку для добавления вибрации к событию нажатия кнопки. Я искал вокруг, но нашел только похожие примеры с использованием реестра окон, однако я бы предпочел по возможности не трогать реестр.

Любой, кто мог бы предоставить мне пример кода для достижения этой цели (С# или VB.Net)?

Спасибо.

ОБНОВЛЕНИЕ: код, предоставленный jball, работает как шарм. Я назвал код следующим образом, чтобы добиться короткой вибрации:

Private Sub btnMute_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _  
handles btnMute.Click
            SetVibrate(1)
            Thread.Sleep(50) 'how long should the vibration last
            SetVibrate(0)
end sub

Работает действительно здорово!


person moster67    schedule 16.01.2010    source источник


Ответы (1)


Доступ к нему осуществляется через LED API. Из здесь:

На большинстве устройств вибрация настроена на светодиодное устройство 1.

Вот пример кода из того же источника.

Private Structure NLED_SETTINGS_INFO
    Public LedNum As Integer
    Public OffOnBlink As Integer
    Public TotalCycleTime As Integer
    Public OnTime As Integer
    Public OffTime As Integer
    Public MetaCycleOn As Integer
    Public MetaCycleOff As Integer
End Structure

<DllImport("Coredll")> _
Private Shared Function NLedSetDevice(ByVal deviceId As Integer, ByRef info 
                                            As NLED_SETTINGS_INFO) As Boolean
End Function

Private Shared Sub SetVibrate(ByVal state As Boolean)
    Dim info As New NLED_SETTINGS_INFO()
    info.LedNum = 1
    info.OffOnBlink = If(state, 1, 0)
    NLedSetDevice(1, info)
End Sub
person jball    schedule 16.01.2010