Я получил следующий код, чтобы имитировать volumemute нажатие:C# Simulate VolumeMute нажмите
[DllImport("coredll.dll", SetLastError = true)]
static extern void keybd_event(byte bVk, byte bScan, int dwFlags, int dwExtraInfo);
byte VK_VOLUME_MUTE = 0xAD;
const int KEYEVENTF_KEYUP = 0x2;
const int KEYEVENTF_KEYDOWN = 0x0;
private void button1_Click(object sender, EventArgs e)
{
keybd_event(VK_VOLUME_MUTE, 0, KEYEVENTF_KEYDOWN, 0);
keybd_event(VK_VOLUME_MUTE, 0, KEYEVENTF_KEYUP, 0);
}
Этот код не работает. Я знаю, что есть другой способ отключить звук/включить звук с помощью SendMessageW, но я не хочу использовать SendMessageW, потому что я использую KeyState для обнаружения того, что мне нужно отключить звук или включить звук (если пользователь хочет включить звук и его уже отключен то мне не нужно переключаться - вот почему мне нужно имитировать нажатие VolumeMute)
Спасибо.
Когда вы говорите, что это не сработает, вы получаете исключение из своего p-invoke доброты? – dexter
Ошибка. он просто не заглушает звук. – Ron
Являются ли эти окна мобильными? – fardjad