diff --git a/dlls/winmm/mci.c b/dlls/winmm/mci.c
index a2cd866ea204227d39c8385c562c426edd272f5d..632c4e8f297db1a7f34adc5bb28dc634d0ae6b50 100644
--- a/dlls/winmm/mci.c
+++ b/dlls/winmm/mci.c
@@ -838,6 +838,13 @@ DWORD WINAPI mciSendStringA(LPCSTR lpstrCommand, LPSTR lpstrRet,
 	    dwFlags |= MCI_OPEN_TYPE;
 	    data[2] = (DWORD)devType;
 	    devType = CharUpperA(HEAP_strdupA(GetProcessHeap(), 0, devType));
+	} else if (strchr(dev, '.') == NULL) {
+	    tmp = strchr(dev,' ');
+	    if (tmp) *tmp = '\0';
+	    data[2] = (DWORD)dev;
+	    devType = CharUpperA(HEAP_strdupA(GetProcessHeap(), 0, dev));
+	    if (tmp) *tmp = ' ';
+	    dwFlags |= MCI_OPEN_TYPE;
 	} else {
 	    if ((devType = strstr(args, "type ")) != NULL) {
 		devType += 5;