Przejdź do głównej zawartości

Toggle Vibrate & Ring

Toggle VibraOrRing
cab installation for WM 6.0:
XDA Thread...

c# how to toggle Vibra and Ring On ? simple... use this code :)

using System;
using System.Linq;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;

namespace toggleVibrateSound
{
class Program
{
private enum SoundEvent
{
All = 0,
RingLine1,
RingLine2,
KnownCallerLine1,
RoamingLine1,
RingVoip
}

private enum SoundType
{
On = 0,
File = 1,
Vibrate = 2,
None = 3
}

private struct SNDFILEINFO
{
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 260)]
public string szPathNameNative;

[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 260)]
public string szDisplayNameNative;

public SoundType SstType;
}


[DllImport("aygshell.dll", SetLastError = true)]
private static extern uint SndSetSound(SoundEvent seSoundEvent, ref SNDFILEINFO pSoundFileInfo, bool fSuppressUI);

[DllImport("aygshell.dll", SetLastError = true)]
private static extern uint SndGetSound(SoundEvent seSoundEvent, ref SNDFILEINFO pSoundFileInfo);


public static void SetRingerOn()
{
SNDFILEINFO sfi = new SNDFILEINFO();
sfi.SstType = SoundType.On;
uint ret = SndSetSound(SoundEvent.All, ref sfi, true);
}

public static void GetCurrentSoundType()
{
SNDFILEINFO sfi = new SNDFILEINFO();
uint ret = SndGetSound(SoundEvent.All, ref sfi);
SoundType aa = sfi.SstType;
if (aa == 0) Vibra(); else SetRingerOn();
}

public static void Vibra()
{
SNDFILEINFO sfi = new SNDFILEINFO();
sfi.SstType = SoundType.Vibrate;
uint ret = SndSetSound(SoundEvent.All, ref sfi, true);
}
unsafe static void Main(string[] args)
{
//Vibra(); // set vibra mode on
//SetRingerOn(); // set ringer mode on
GetCurrentSoundType(); // in this case we toggle Vibra and Ring...

}
}
}

cheers... :)

Komentarze

Popularne posty z tego bloga

W Moskwie policja zatrzymała niemal trzeźwego kierowcę.

Kilkakrotnie przeprowadzone badanie alkomatem wykazało 3 dziesiędziomiliardowe części promila alkoholu w wydychanym powietrzu. W Moskwie pobito zatem rekord trzeźwości podczas prowadzenia pojazdu. W 1987 zatrzymano rowerzystę, u którego pomiar wykazał 7,4 miliarodowych części promila. Zatrzymany Mikołaj J. tłumaczył się policji, że właśnie wybiera się na spotkanie z kolegami z czasów służby w Marynarce. Nie pomogły jednak tłumaczenia. Mężczyźnie tymczasowo zatrzymano prawo jazdy oraz odwieziono go do najbliższego baru, gdzie obowiązkowo spędzi najbliższą noc. Zatrzymanie było elementem zorganizowanej akcji przeciwko trzeźwości na drodze. Pomimo licznych apeli policji, pod kołami samochodów prowadzonych przez trzeźwych kierowców giną co roku w Rosji setki pieszych. Trzeźwi kierowcy są sprawcami przeszło 90% wszystkich kolizji i wypadków drogowych.