faulthandler: improve_sigabrt() on Visual Studio

Use _set_abort_behavior() + abort() instead of raise(SIGABRT) which may write
an error message and/or open a popup asking to report the fault.
diff --git a/Modules/faulthandler.c b/Modules/faulthandler.c
index 6cf06ad..3549af5 100644
--- a/Modules/faulthandler.c
+++ b/Modules/faulthandler.c
@@ -816,14 +816,12 @@
 static PyObject *
 faulthandler_sigabrt(PyObject *self, PyObject *args)
 {
-#if _MSC_VER
-    /* If Python is compiled in debug mode with Visual Studio, abort() opens
-       a popup asking the user how to handle the assertion. Use raise(SIGABRT)
-       instead. */
-    raise(SIGABRT);
-#else
-    abort();
+#ifdef _MSC_VER
+    /* Visual Studio: configure abort() to not display an error message nor
+       open a popup asking to report the fault. */
+    _set_abort_behavior(0, _WRITE_ABORT_MSG | _CALL_REPORTFAULT);
 #endif
+    abort();
     Py_RETURN_NONE;
 }