WINDOWS_LEAN_AND_MEAN:  There is no such symbol, although a very few
MSDN sample programs use it, apparently in error.  The correct name
is WIN32_LEAN_AND_MEAN.  After switching to the correct name, in two
cases more was needed because the code actually relied on things that
disappear when WIN32_LEAN_AND_MEAN is defined.
diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c
index 163263f..4d9c93d 100644
--- a/Modules/posixmodule.c
+++ b/Modules/posixmodule.c
@@ -217,7 +217,7 @@
 #include <io.h>
 #include <process.h>
 #include "osdefs.h"
-#define WINDOWS_LEAN_AND_MEAN
+/* We don't want WIN32_LEAN_AND_MEAN here -- we need ShellExecute(). */
 #include <windows.h>
 #define popen	_popen
 #define pclose	_pclose