+ /*
+ * For MessageBeep style bells, we want to be careful of
+ * timing, because they don't have the nice property of
+ * PlaySound bells that each one cancels the previous
+ * active one. So we limit the rate to one per 50ms or so.
+ */
+ static long lastbeep = 0;
+ long now, beepdiff;
+
+ now = GetTickCount();
+ beepdiff = now - lastbeep;
+ if (beepdiff >= 0 && beepdiff < 50)
+ return;