msiexec: Build with -mwindows.
diff --git a/programs/msiexec/Makefile.in b/programs/msiexec/Makefile.in
index ef0af91..f9cb570 100644
--- a/programs/msiexec/Makefile.in
+++ b/programs/msiexec/Makefile.in
@@ -4,7 +4,7 @@
 SRCDIR    = @srcdir@
 VPATH     = @srcdir@
 MODULE    = msiexec.exe
-APPMODE   = -mconsole
+APPMODE   = -mwindows
 IMPORTS   = msi ole32 advapi32 user32 kernel32
 
 C_SRCS = \
diff --git a/programs/msiexec/msiexec.c b/programs/msiexec/msiexec.c
index 7b00eb7..9221fa2 100644
--- a/programs/msiexec/msiexec.c
+++ b/programs/msiexec/msiexec.c
@@ -493,7 +493,7 @@
 	return ret;
 }
 
-int main(int argc, char **argv)
+int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
 {
 	int i;
 	BOOL FunctionInstall = FALSE;
@@ -529,9 +529,10 @@
 
 	LPWSTR DllName = NULL;
 	DWORD ReturnCode;
+	int argc;
 	LPWSTR *argvW = NULL;
 
-	/* overwrite the command line */
+	/* parse the command line */
 	process_args( GetCommandLineW(), &argc, &argvW );
 
 	/*