diff --git a/audio/dsoundaudio.c b/audio/dsoundaudio.c
index a955cf4dc1..41ddf4a18c 100644
--- a/audio/dsoundaudio.c
+++ b/audio/dsoundaudio.c
@@ -32,7 +32,9 @@
 #define AUDIO_CAP "dsound"
 #include "audio_int.h"
 
+#define WIN32_LEAN_AND_MEAN
 #include <windows.h>
+#include <mmsystem.h>
 #include <objbase.h>
 #include <dsound.h>
 
diff --git a/exec.c b/exec.c
index 07d5de04ae..a4333dd7a4 100644
--- a/exec.c
+++ b/exec.c
@@ -19,6 +19,7 @@
  */
 #include "config.h"
 #ifdef _WIN32
+#define WIN32_LEAN_AND_MEAN
 #include <windows.h>
 #else
 #include <sys/types.h>
diff --git a/kqemu.c b/kqemu.c
index 9e2d1d627b..148a52f1cc 100644
--- a/kqemu.c
+++ b/kqemu.c
@@ -19,6 +19,7 @@
  */
 #include "config.h"
 #ifdef _WIN32
+#define WIN32_LEAN_AND_MEAN
 #include <windows.h>
 #include <winioctl.h>
 #else
diff --git a/osdep.c b/osdep.c
index 00c19ce6e1..8191b1f717 100644
--- a/osdep.c
+++ b/osdep.c
@@ -37,6 +37,7 @@
 #include "sysemu.h"
 
 #ifdef _WIN32
+#define WIN32_LEAN_AND_MEAN
 #include <windows.h>
 #elif defined(_BSD)
 #include <stdlib.h>
diff --git a/qemu-common.h b/qemu-common.h
index 2c955219da..e8ea68735b 100644
--- a/qemu-common.h
+++ b/qemu-common.h
@@ -28,6 +28,7 @@
 #endif
 
 #ifdef _WIN32
+#define WIN32_LEAN_AND_MEAN
 #include <windows.h>
 #define fsync _commit
 #define lseek _lseeki64
diff --git a/qemu-img.c b/qemu-img.c
index 2dffe8e3a4..0857993945 100644
--- a/qemu-img.c
+++ b/qemu-img.c
@@ -26,6 +26,7 @@
 #include <assert.h>
 
 #ifdef _WIN32
+#define WIN32_LEAN_AND_MEAN
 #include <windows.h>
 #endif
 
diff --git a/qemu_socket.h b/qemu_socket.h
index 6e8bcce6cf..5229c24faa 100644
--- a/qemu_socket.h
+++ b/qemu_socket.h
@@ -3,7 +3,7 @@
 #define QEMU_SOCKET_H
 
 #ifdef _WIN32
-
+#define WIN32_LEAN_AND_MEAN
 #include <windows.h>
 #include <winsock2.h>
 #include <ws2tcpip.h>
diff --git a/slirp/slirp.h b/slirp/slirp.h
index 1809ba73cc..b8d756e555 100644
--- a/slirp/slirp.h
+++ b/slirp/slirp.h
@@ -29,6 +29,7 @@ typedef uint32_t u_int32_t;
 typedef uint64_t u_int64_t;
 typedef char *caddr_t;
 
+#define WIN32_LEAN_AND_MEAN
 # include <windows.h>
 # include <winsock2.h>
 # include <sys/timeb.h>
diff --git a/tap-win32.c b/tap-win32.c
index 694441eee9..bfec14578a 100644
--- a/tap-win32.c
+++ b/tap-win32.c
@@ -30,6 +30,7 @@
 #include "net.h"
 #include "sysemu.h"
 #include <stdio.h>
+#define WIN32_LEAN_AND_MEAN
 #include <windows.h>
 
 /* NOTE: PCIBus is redefined in winddk.h */
diff --git a/vl.c b/vl.c
index d914cb40e2..e5b4e06cfe 100644
--- a/vl.c
+++ b/vl.c
@@ -109,7 +109,7 @@ int inet_aton(const char *cp, struct in_addr *ia);
 #ifdef _WIN32
 #include <malloc.h>
 #include <sys/timeb.h>
-#include <windows.h>
+#include <mmsystem.h>
 #define getopt_long_only getopt_long
 #define memalign(align, size) malloc(size)
 #endif
@@ -8966,7 +8966,7 @@ int main(int argc, char **argv)
                     s->down_script[0])
                     launch_script(s->down_script, ifname, s->fd);
             }
-    }
+        }
     }
 #endif
     return 0;