sound to play; possible values are ``-1``, ``MB_ICONASTERISK``,
``MB_ICONEXCLAMATION``, ``MB_ICONHAND``, ``MB_ICONQUESTION``, and ``MB_OK``, all
described below. The value ``-1`` produces a "simple beep"; this is the final
- fallback if a sound cannot be played otherwise.
+ fallback if a sound cannot be played otherwise. If the system indicates an
+ error, :exc:`RuntimeError` is raised.
.. data:: SND_FILENAME
winsound_MessageBeep_impl(PyObject *module, int x)
/*[clinic end generated code: output=1ad89e4d8d30a957 input=a776c8a85c9853f6]*/
{
- MessageBeep(x);
+ BOOL ok;
+
+ Py_BEGIN_ALLOW_THREADS
+ ok = MessageBeep(x);
+ Py_END_ALLOW_THREADS
+
+ if (!ok) {
+ PyErr_SetExcFromWindowsErr(PyExc_RuntimeError, 0);
+ return NULL;
+ }
+
Py_RETURN_NONE;
}