0
Этот вопрос касается того, как получить доступ к управлению вибрирующим телефоном Windows 8.1 на каком-либо событии с использованием C++. Я также ответил на этот вопрос.Как вибрировать телефон Windows 8.1
Этот вопрос касается того, как получить доступ к управлению вибрирующим телефоном Windows 8.1 на каком-либо событии с использованием C++. Я также ответил на этот вопрос.Как вибрировать телефон Windows 8.1
первый импорт следующих двух пространств имен:
using namespace Windows::Phone::Devices::Notification;
using namespace Windows::Foundation;
Затем использовать функцию, как это:
void PlatformInterop::vibrateDevice(int duration)
{
VibrationDevice^ vib = VibrationDevice::GetDefault();
if (vib != nullptr)
{
TimeSpan time;
// Convert from milliseconds to 1.0e-7 of a second, and limit to 5 seconds
time.Duration = min(duration*10000, 50000000);
vib->Vibrate(time);
}
}
Это все, что вам нужно сделать.
Ваши единицы не складываются: если 'time.Duration' действительно занимает наносекунды, вам нужно' 5000000000' вместо '50000000' (9 нулей вместо 7); и вам нужно умножить число 'duration' на' 1000000'. – mindriot
Спасибо за упоминание об ошибке, но на самом деле я упомянул об этом неправильно в комментарии. Фактически, функция принимает аргументы в единицах 1.0e-7 секунд. Я тестировал его, и он работает для меня. –