diff --git a/reactos/lib/winmm/driver.c b/reactos/lib/winmm/driver.c index 4a43469049a..4de49faadea 100644 --- a/reactos/lib/winmm/driver.c +++ b/reactos/lib/winmm/driver.c @@ -29,12 +29,15 @@ #include "wingdi.h" #include "winuser.h" #include "winnls.h" +#include "winreg.h" #include "mmddk.h" #include "winemm.h" #include "wine/debug.h" WINE_DEFAULT_DEBUG_CHANNEL(driver); +#define HKLM_BASE "Software\\Microsoft\\Windows NT\\CurrentVersion" + static LPWINE_DRIVER lpDrvItemList /* = NULL */; WINE_MMTHREAD* (*pFnGetMMThread16)(UINT16 h) /* = NULL */; @@ -206,7 +209,21 @@ static BOOL DRIVER_AddToList(LPWINE_DRIVER lpNewDrv, LPARAM lParam1, LPARAM lPar */ BOOL DRIVER_GetLibName(LPCSTR keyName, LPCSTR sectName, LPSTR buf, int sz) { - /* should also do some registry diving */ + HKEY hKey, hSecKey; + DWORD bufLen, lRet; + + lRet = RegOpenKeyExA(HKEY_LOCAL_MACHINE, HKLM_BASE, 0, KEY_QUERY_VALUE, &hKey); + if (lRet == ERROR_SUCCESS) { + lRet = RegOpenKeyExA(hKey, sectName, 0, KEY_QUERY_VALUE, &hSecKey); + if (lRet == ERROR_SUCCESS) { + lRet = RegQueryValueExA(hSecKey, keyName, 0, 0, buf, &bufLen); + RegCloseKey( hSecKey ); + } + RegCloseKey( hKey ); + } + if (lRet == ERROR_SUCCESS) return TRUE; + /* default to system.ini if we can't find it in the registry, + * to support native installations where system.ini is still used */ return GetPrivateProfileStringA(sectName, keyName, "", buf, sz, "SYSTEM.INI"); } diff --git a/reactos/lib/winmm/mci.c b/reactos/lib/winmm/mci.c index 978eb8e0a18..353bb225167 100644 --- a/reactos/lib/winmm/mci.c +++ b/reactos/lib/winmm/mci.c @@ -57,9 +57,6 @@ WINE_DEFAULT_DEBUG_CHANNEL(mci); -static int MCI_InstalledCount; -static LPSTR MCI_lpInstallNames /* = NULL */; - WINMM_MapType (*pFnMciMapMsg16To32A) (WORD,WORD,DWORD*) /* = NULL */; WINMM_MapType (*pFnMciUnMapMsg16To32A)(WORD,WORD,DWORD) /* = NULL */; WINMM_MapType (*pFnMciMapMsg32ATo16) (WORD,WORD,DWORD,DWORD*) /* = NULL */; @@ -68,6 +65,9 @@ WINMM_MapType (*pFnMciUnMapMsg32ATo16)(WORD,WORD,DWORD,DWORD) /* = NULL */; /* First MCI valid device ID (0 means error) */ #define MCI_MAGIC 0x0001 +/* MCI settings */ +#define HKLM_MCI "Software\\Microsoft\\Windows NT\\CurrentVersion\\MCI" + /* dup a string and uppercase it */ inline static LPSTR str_dup_upper( LPCSTR str ) { @@ -1435,8 +1435,10 @@ DWORD MCI_WriteString(LPSTR lpDstStr, DWORD dstSize, LPCSTR lpSrcStr) */ static DWORD MCI_SysInfo(UINT uDevID, DWORD dwFlags, LPMCI_SYSINFO_PARMSA lpParms) { - DWORD ret = MCIERR_INVALID_DEVICE_ID; + DWORD ret = MCIERR_INVALID_DEVICE_ID, cnt = 0; + CHAR buf[2048], *s = buf, *p; LPWINE_MCIDRIVER wmd; + HKEY hKey; if (lpParms == NULL) return MCIERR_NULL_PARAMETER_BLOCK; @@ -1445,41 +1447,39 @@ static DWORD MCI_SysInfo(UINT uDevID, DWORD dwFlags, LPMCI_SYSINFO_PARMSA lpParm switch (dwFlags & ~MCI_SYSINFO_OPEN) { case MCI_SYSINFO_QUANTITY: - { - DWORD cnt = 0; - - if (lpParms->wDeviceType < MCI_DEVTYPE_FIRST || - lpParms->wDeviceType > MCI_DEVTYPE_LAST) { - if (dwFlags & MCI_SYSINFO_OPEN) { - TRACE("MCI_SYSINFO_QUANTITY: # of open MCI drivers\n"); - EnterCriticalSection(&WINMM_IData->cs); - for (wmd = WINMM_IData->lpMciDrvs; wmd; wmd = wmd->lpNext) { - cnt++; - } - LeaveCriticalSection(&WINMM_IData->cs); - } else { - TRACE("MCI_SYSINFO_QUANTITY: # of installed MCI drivers\n"); - cnt = MCI_InstalledCount; + if (lpParms->wDeviceType < MCI_DEVTYPE_FIRST || lpParms->wDeviceType > MCI_DEVTYPE_LAST) { + if (dwFlags & MCI_SYSINFO_OPEN) { + TRACE("MCI_SYSINFO_QUANTITY: # of open MCI drivers\n"); + EnterCriticalSection(&WINMM_IData->cs); + for (wmd = WINMM_IData->lpMciDrvs; wmd; wmd = wmd->lpNext) { + cnt++; } + LeaveCriticalSection(&WINMM_IData->cs); } else { - if (dwFlags & MCI_SYSINFO_OPEN) { - TRACE("MCI_SYSINFO_QUANTITY: # of open MCI drivers of type %u\n", - lpParms->wDeviceType); - EnterCriticalSection(&WINMM_IData->cs); - for (wmd = WINMM_IData->lpMciDrvs; wmd; wmd = wmd->lpNext) { - if (wmd->wType == lpParms->wDeviceType) - cnt++; - } - LeaveCriticalSection(&WINMM_IData->cs); - } else { - TRACE("MCI_SYSINFO_QUANTITY: # of installed MCI drivers of type %u\n", - lpParms->wDeviceType); - FIXME("Don't know how to get # of MCI devices of a given type\n"); - cnt = 1; + TRACE("MCI_SYSINFO_QUANTITY: # of installed MCI drivers\n"); + if (RegOpenKeyExA( HKEY_LOCAL_MACHINE, HKLM_MCI, + 0, KEY_QUERY_VALUE, &hKey ) == ERROR_SUCCESS) { + RegQueryInfoKeyA( hKey, 0, 0, 0, &cnt, 0, 0, 0, 0, 0, 0, 0); + RegCloseKey( hKey ); } + if (GetPrivateProfileStringA("mci", 0, "", buf, sizeof(buf), "system.ini")) + for(s = buf; *s; s += strlen(s) + 1) cnt++; + } + } else { + if (dwFlags & MCI_SYSINFO_OPEN) { + TRACE("MCI_SYSINFO_QUANTITY: # of open MCI drivers of type %u\n", lpParms->wDeviceType); + EnterCriticalSection(&WINMM_IData->cs); + for (wmd = WINMM_IData->lpMciDrvs; wmd; wmd = wmd->lpNext) { + if (wmd->wType == lpParms->wDeviceType) cnt++; + } + LeaveCriticalSection(&WINMM_IData->cs); + } else { + TRACE("MCI_SYSINFO_QUANTITY: # of installed MCI drivers of type %u\n", lpParms->wDeviceType); + FIXME("Don't know how to get # of MCI devices of a given type\n"); + cnt = 1; } - *(DWORD*)lpParms->lpstrReturn = cnt; } + *(DWORD*)lpParms->lpstrReturn = cnt; TRACE("(%ld) => '%ld'\n", lpParms->dwNumber, *(DWORD*)lpParms->lpstrReturn); ret = MCI_INTEGER_RETURNED; break; @@ -1499,14 +1499,30 @@ static DWORD MCI_SysInfo(UINT uDevID, DWORD dwFlags, LPMCI_SYSINFO_PARMSA lpParm if (dwFlags & MCI_SYSINFO_OPEN) { FIXME("Don't handle MCI_SYSINFO_NAME|MCI_SYSINFO_OPEN (yet)\n"); ret = MCIERR_UNRECOGNIZED_COMMAND; - } else if (lpParms->dwNumber > MCI_InstalledCount) { - ret = MCIERR_OUTOFRANGE; } else { - DWORD count = lpParms->dwNumber; - LPSTR ptr = MCI_lpInstallNames; - - while (--count > 0) ptr += strlen(ptr) + 1; - ret = MCI_WriteString(lpParms->lpstrReturn, lpParms->dwRetSize, ptr); + DWORD lRet; + s = 0; + lRet = RegOpenKeyExA( HKEY_LOCAL_MACHINE, HKLM_MCI, 0, KEY_QUERY_VALUE, &hKey ); + if (lRet == ERROR_SUCCESS) { + lRet = RegQueryInfoKeyA( hKey, 0, 0, 0, &cnt, 0, 0, 0, 0, 0, 0, 0); + if (lRet == ERROR_SUCCESS && lpParms->dwNumber <= cnt) { + DWORD bufLen = sizeof(buf); + lRet = RegEnumKeyExA(hKey, lpParms->dwNumber - 1, buf, &bufLen, 0, 0, 0, 0); + if (lRet == ERROR_SUCCESS) s = buf; + } + RegCloseKey( hKey ); + } + if (!s) { + if (GetPrivateProfileStringA("mci", 0, "", buf, sizeof(buf), "system.ini")) { + for(p = buf; *p; p += strlen(s) + 1, cnt++) { + if (cnt == lpParms->dwNumber - 1) { + s = p; + break; + } + } + } + } + ret = s ? MCI_WriteString(lpParms->lpstrReturn, lpParms->dwRetSize, s) : MCIERR_OUTOFRANGE; } TRACE("(%ld) => '%s'\n", lpParms->dwNumber, lpParms->lpstrReturn); break; @@ -1724,54 +1740,3 @@ LRESULT MCI_CleanUp(LRESULT dwRet, UINT wMsg, DWORD dwParam2) } return LOWORD(dwRet); } - -/************************************************************************** - * MCI_Init [internal] - * - * Initializes the MCI internal variables. - * - */ -BOOL MCI_Init(void) -{ - LPSTR ptr1, ptr2; - HKEY hWineConf; - HKEY hkey; - DWORD err; - DWORD type; - DWORD count = 2048; - - MCI_InstalledCount = 0; - ptr1 = MCI_lpInstallNames = HeapAlloc(GetProcessHeap(), 0, count); - - if (!MCI_lpInstallNames) - return FALSE; - - /* FIXME: should do also some registry diving here ? */ - if (!(err = RegOpenKeyA(HKEY_LOCAL_MACHINE, "Software\\Wine\\Wine\\Config", &hWineConf)) && - !(err = RegOpenKeyA(hWineConf, "options", &hkey))) { - err = RegQueryValueExA(hkey, "mci", 0, &type, MCI_lpInstallNames, &count); - RegCloseKey(hkey); - - } - if (!err) { - TRACE("Wine => '%s' \n", ptr1); - while ((ptr2 = strchr(ptr1, ':')) != 0) { - *ptr2++ = 0; - TRACE("---> '%s' \n", ptr1); - MCI_InstalledCount++; - ptr1 = ptr2; - } - MCI_InstalledCount++; - TRACE("---> '%s' \n", ptr1); - ptr1 += strlen(ptr1) + 1; - } else { - GetPrivateProfileStringA("mci", NULL, "", MCI_lpInstallNames, count, "SYSTEM.INI"); - while (strlen(ptr1) > 0) { - TRACE("---> '%s' \n", ptr1); - ptr1 += strlen(ptr1) + 1; - MCI_InstalledCount++; - } - } - RegCloseKey(hWineConf); - return TRUE; -} diff --git a/reactos/lib/winmm/winehq2ros.patch b/reactos/lib/winmm/winehq2ros.patch index dc0589e3d0e..c61fa60ee81 100644 --- a/reactos/lib/winmm/winehq2ros.patch +++ b/reactos/lib/winmm/winehq2ros.patch @@ -4,7 +4,7 @@ RCS file: /home/wine/wine/dlls/winmm/lolvldrv.c,v retrieving revision 1.58 diff -u -r1.58 lolvldrv.c --- lolvldrv.c 1 Jun 2004 19:40:48 -0000 1.58 -+++ lolvldrv.c 16 Jun 2004 18:56:14 -0000 ++++ lolvldrv.c 8 Aug 2004 21:46:41 -0000 @@ -510,10 +510,12 @@ case DRV_QUERYDEVICEINTERFACESIZE: return MMDRV_Message(mld, uMsg, dwParam1, dwParam2, TRUE); @@ -45,7 +45,7 @@ RCS file: /home/wine/wine/dlls/winmm/time.c,v retrieving revision 1.26 diff -u -r1.26 time.c --- time.c 12 Jan 2004 21:03:10 -0000 1.26 -+++ time.c 16 Jun 2004 18:56:14 -0000 ++++ time.c 8 Aug 2004 21:46:42 -0000 @@ -175,14 +175,19 @@ volatile HANDLE *pActive = (volatile HANDLE *)&TIME_hMMTimer; DWORD last_time, cur_time; @@ -69,11 +69,22 @@ diff -u -r1.26 time.c Index: winmm.c =================================================================== RCS file: /home/wine/wine/dlls/winmm/winmm.c,v -retrieving revision 1.37 -diff -u -r1.37 winmm.c ---- winmm.c 14 Jun 2004 16:53:59 -0000 1.37 -+++ winmm.c 16 Jun 2004 18:56:15 -0000 -@@ -126,10 +126,12 @@ +retrieving revision 1.38 +diff -u -r1.38 winmm.c +--- winmm.c 30 Jun 2004 18:12:20 -0000 1.38 ++++ winmm.c 8 Aug 2004 21:46:43 -0000 +@@ -102,8 +102,9 @@ + * inside WINMM_IData */ + CloseHandle(WINMM_IData->psStopEvent); + CloseHandle(WINMM_IData->psLastEvent); ++ WINMM_IData->cs.DebugInfo = NULL; + DeleteCriticalSection(&WINMM_IData->cs); +- HeapFree(GetProcessHeap(), 0, WINMM_IData); ++ HeapFree(GetProcessHeap(), 0, WINMM_IData); + WINMM_IData = NULL; + } + } +@@ -126,10 +127,12 @@ loaded = -1; if (h) { @@ -86,3 +97,139 @@ diff -u -r1.37 winmm.c loaded = 1; } } +@@ -2658,6 +2661,7 @@ + WAVEHDR* lpWaveOutHdr, UINT uSize) + { + LPWINE_MLD wmld; ++ UINT result; + + TRACE("(%p, %p, %u);\n", hWaveOut, lpWaveOutHdr, uSize); + +@@ -2667,7 +2671,17 @@ + if ((wmld = MMDRV_Get(hWaveOut, MMDRV_WAVEOUT, FALSE)) == NULL) + return MMSYSERR_INVALHANDLE; + +- return MMDRV_Message(wmld, WODM_PREPARE, (DWORD_PTR)lpWaveOutHdr, uSize, TRUE); ++ if ((result = MMDRV_Message(wmld, WODM_PREPARE, (DWORD_PTR)lpWaveOutHdr, ++ uSize, TRUE)) != MMSYSERR_NOTSUPPORTED) ++ return result; ++ ++ if (lpWaveOutHdr->dwFlags & WHDR_INQUEUE) ++ return WAVERR_STILLPLAYING; ++ ++ lpWaveOutHdr->dwFlags |= WHDR_PREPARED; ++ lpWaveOutHdr->dwFlags &= ~WHDR_DONE; ++ ++ return MMSYSERR_NOERROR; + } + + /************************************************************************** +@@ -2677,6 +2691,7 @@ + LPWAVEHDR lpWaveOutHdr, UINT uSize) + { + LPWINE_MLD wmld; ++ UINT result; + + TRACE("(%p, %p, %u);\n", hWaveOut, lpWaveOutHdr, uSize); + +@@ -2690,7 +2705,17 @@ + if ((wmld = MMDRV_Get(hWaveOut, MMDRV_WAVEOUT, FALSE)) == NULL) + return MMSYSERR_INVALHANDLE; + +- return MMDRV_Message(wmld, WODM_UNPREPARE, (DWORD_PTR)lpWaveOutHdr, uSize, TRUE); ++ if ((result = MMDRV_Message(wmld, WODM_UNPREPARE, (DWORD_PTR)lpWaveOutHdr, ++ uSize, TRUE)) != MMSYSERR_NOTSUPPORTED) ++ return result; ++ ++ if (lpWaveOutHdr->dwFlags & WHDR_INQUEUE) ++ return WAVERR_STILLPLAYING; ++ ++ lpWaveOutHdr->dwFlags &= ~WHDR_PREPARED; ++ lpWaveOutHdr->dwFlags |= WHDR_DONE; ++ ++ return MMSYSERR_NOERROR; + } + + /************************************************************************** +@@ -3173,4 +3198,50 @@ + + + return MMDRV_Message(wmld, uMessage, dwParam1, dwParam2, TRUE); ++} ++ ++struct mm_starter ++{ ++ LPTASKCALLBACK cb; ++ DWORD client; ++ HANDLE event; ++}; ++ ++DWORD WINAPI mmTaskRun(void* pmt) ++{ ++ struct mm_starter mms; ++ ++ memcpy(&mms, pmt, sizeof(struct mm_starter)); ++ HeapFree(GetProcessHeap(), 0, pmt); ++ mms.cb(mms.client); ++ if (mms.event) SetEvent(mms.event); ++ return 0; ++} ++ ++MMRESULT WINAPI mmTaskCreate(LPTASKCALLBACK cb, HANDLE* ph, DWORD client) ++{ ++ HANDLE hThread; ++ HANDLE hEvent; ++ struct mm_starter *mms; ++ ++ mms = HeapAlloc(GetProcessHeap(), 0, sizeof(struct mm_starter)); ++ if (mms == NULL) { return TASKERR_OUTOFMEMORY; } ++ ++ mms->cb = cb; ++ mms->client = client; ++ if (ph) { ++ mms->event = hEvent = CreateEvent(NULL, FALSE, FALSE, NULL); ++ } else { ++ mms->event = NULL; ++ } ++ ++ hThread = CreateThread(0, 0, mmTaskRun, (LPVOID)mms, 0, NULL); ++ if (!hThread) { ++ HeapFree(GetProcessHeap(), 0, mms); ++ CloseHandle(hEvent); ++ return TASKERR_OUTOFMEMORY; ++ } ++ if (ph) *ph = hEvent; ++ CloseHandle(hThread); ++ return 0; + } +Index: winmm.spec +=================================================================== +RCS file: /home/wine/wine/dlls/winmm/winmm.spec,v +retrieving revision 1.20 +diff -u -r1.20 winmm.spec +--- winmm.spec 15 Sep 2003 20:13:30 -0000 1.20 ++++ winmm.spec 8 Aug 2004 21:46:43 -0000 +@@ -135,6 +135,7 @@ + @ stdcall mmioStringToFOURCCW(wstr long) + @ stdcall mmioWrite(long ptr long) + @ stdcall mmsystemGetVersion() ++@ stdcall mmTaskCreate(ptr ptr long) + @ stdcall sndPlaySoundA(ptr long) + @ stdcall sndPlaySoundW(ptr long) + @ stdcall timeBeginPeriod(long) +Index: winmm_res.rc +=================================================================== +RCS file: /home/wine/wine/dlls/winmm/winmm_res.rc,v +retrieving revision 1.15 +diff -u -r1.15 winmm_res.rc +--- winmm_res.rc 13 Jul 2004 23:36:37 -0000 1.15 ++++ winmm_res.rc 8 Aug 2004 21:46:43 -0000 +@@ -33,7 +33,7 @@ + #include "winmm_Es.rc" + #include "winmm_Fr.rc" + #include "winmm_It.rc" +-#include "winmm_Ja.rc" ++/* #include "winmm_Ja.rc" */ /* Gives error during ReactOS build */ + #include "winmm_Nl.rc" + #include "winmm_Pt.rc" + #include "winmm_Ru.rc" diff --git a/reactos/lib/winmm/winemm.h b/reactos/lib/winmm/winemm.h index 4f42b0ec562..cdd93522771 100644 --- a/reactos/lib/winmm/winemm.h +++ b/reactos/lib/winmm/winemm.h @@ -243,7 +243,6 @@ BOOL MMDRV_Is32(unsigned int); void MMDRV_InstallMap(unsigned int, MMDRV_MAPFUNC, MMDRV_UNMAPFUNC, MMDRV_MAPFUNC, MMDRV_UNMAPFUNC, LPDRVCALLBACK); -BOOL MCI_Init(void); WINE_MCIDRIVER* MCI_GetDriver(UINT16 uDevID); UINT MCI_GetDriverFromString(LPCSTR str); DWORD MCI_WriteString(LPSTR lpDstStr, DWORD dstSize, LPCSTR lpSrcStr); diff --git a/reactos/lib/winmm/winmm.c b/reactos/lib/winmm/winmm.c index f1d3da37b5c..1236d80e59c 100644 --- a/reactos/lib/winmm/winmm.c +++ b/reactos/lib/winmm/winmm.c @@ -185,7 +185,7 @@ BOOL WINAPI DllMain(HINSTANCE hInstDLL, DWORD fdwReason, LPVOID fImpLoad) if (!WINMM_CreateIData(hInstDLL)) return FALSE; - if (!MCI_Init() || !MMDRV_Init()) { + if (!MMDRV_Init()) { WINMM_DeleteIData(); return FALSE; } diff --git a/reactos/lib/winmm/winmm_De.rc b/reactos/lib/winmm/winmm_De.rc new file mode 100644 index 00000000000..170029e584d --- /dev/null +++ b/reactos/lib/winmm/winmm_De.rc @@ -0,0 +1,126 @@ +/* + * Copyright 2004 Henning Gerhardt + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +STRINGTABLE LANGUAGE LANG_GERMAN, SUBLANG_DEFAULT +BEGIN + +/* MMSYS errors */ +MMSYSERR_NOERROR, "Der angeforderte Befehl wurde ausgeführt." +MMSYSERR_ERROR, "Unbekannter externer Fehler." +MMSYSERR_BADDEVICEID, "Die derzeit verwendete Gerätekennung ist außerhalb des zulässigen Bereichs für Ihr System." +MMSYSERR_NOTENABLED, "Der Treiber konnte nicht gestartet werden." +MMSYSERR_ALLOCATED, "Das Gerät wird bereits verwendet. Warten Sie, bis es freigegeben ist, und versuchen Sie es erneut." +MMSYSERR_INVALHANDLE, "Das angegebende Gerätehandle ist ungültig." +MMSYSERR_NODRIVER, "Es ist kein Treiber auf Ihrem System installiert !\n" +MMSYSERR_NOMEM, "Nicht genügend Speicher für diesen Befehl. Beenden Sie eine oder mehrere Anwendungen, und versuchen Sie es erneut." +MMSYSERR_NOTSUPPORTED, "Diese Funktion wird nicht unterstützt. Benutzen Sie die Funktion 'Capabilities', um zu ermitteln, welche Funktion dieser Treiber unterstützt." +MMSYSERR_BADERRNUM, "Die angegebene Fehlernummer ist für dieses System nicht definiert." +MMSYSERR_INVALFLAG, "Ein ungültiges Flag wurde an eine Systemfunktion übergeben." +MMSYSERR_INVALPARAM, "Ein ungültiger Parameter wurde an eine Systemfunktion übergeben." + +/* WAVE errors */ +WAVERR_BADFORMAT, "Dieses Format wird nicht unterstützt oder kann nicht übersetzt werden. Benutzen Sie die Funktion 'Capabilities', um die unterstützten Formate zu ermitteln." +WAVERR_STILLPLAYING, "Die Funktion kann nicht durchgeführt werden, wenn noch Mediendateien wiedergegeben werden. Starten Sie das Gerät neu, oder warten Sie bis keine Daten mehr wiedergegeben werden." +WAVERR_UNPREPARED, "Der WAVE - Header wurde nicht vorbereitet. Benutzen Sie die Funktion 'Prepare' zum Vorbereiten des Headers und versuchen Sie es erneut." +WAVERR_SYNC, "Das Gerät kann nicht ohne das WAVE_ALLOWSYNC - Flag geöffnet werden. Benutzen Sie dieses Flag und versuchen Sie es erneut." + +/* MIDI errors */ +MIDIERR_UNPREPARED, "Der MIDI - Header wurde nicht vorbereitet. Benutzen Sie die Funktion 'Prepare' zum Vorbereiten des Headers und versuchen Sie es erneut." +MIDIERR_STILLPLAYING, "Die Funktion kann nicht durchgeführt werden, wenn noch Mediendateien wiedergegeben werden. Starten Sie das Gerät neu, oder warten Sie bis keine Daten mehr wiedergegeben werden." +MIDIERR_NOMAP, "Es wurde keine MIDI - Map gefunden. Es könnte ein Problem mit dem Treiber geben oder die Datei MIDIMAP.CFG fehlt oder ist beschädigt." +MIDIERR_NOTREADY, "Der Anschluss ist mit der Datenausgabe belegt. Warten Sie, bis die Daten übertragen wurden und versuchen Sie es erneut." +MIDIERR_NODEVICE, "Das gegenwärtige MIDI - Mapper Setup benutzt ein MIDI - Gerät, das nicht installiert ist. Benutzen Sie den MIDI - Mapper, um das Setup zu ändern." +MIDIERR_INVALIDSETUP, "Das aktuelle MIDI Setup ist beschädigt. Kopieren sie die ursprüngliche Datei MIDIMAP.CFG ind das Windows - Systemverzeichnis und versuchen Sie es erneut." + +/* MCI errors */ +MCIERR_INVALID_DEVICE_ID, "Ungültige MCI - Gerätekennung. Benutzen Sie die zurückgegebene ID, wenn Sie das MCI - Gerät öffnen." +MCIERR_UNRECOGNIZED_KEYWORD, "Der Treiber kann den angegebenen Befehlsparameter nicht anerkennen." +MCIERR_UNRECOGNIZED_COMMAND, "Der Treiber kann den angegebenen Befehl nicht anerkennen." +MCIERR_HARDWARE, "Es gibt ein Problem mit Ihrem Media - Gerät. Stellen Sie sicher, dass es richtig arbeitet oder fragen Sie den Gerätehersteller." +MCIERR_INVALID_DEVICE_NAME, "Das angegebene Gerät ist nicht geöffnet oder wird vom MCI nicht erkannt." +MCIERR_OUT_OF_MEMORY, "Nicht genügend Speicher für den angeforderten Vorgang. \nBeenden Sie eine oder mehrere Anwendungen, und versuchen Sie es erneut." +MCIERR_DEVICE_OPEN, "Der Gerätename wird von dieser Anwendung bereits als Alias benutzt. Benutzen Sie einen eindeutigen Alias" +MCIERR_CANNOT_LOAD_DRIVER, "Es gibt ein unbekanntes Problem beim Laden des angegebenen Gerätetreibers." +MCIERR_MISSING_COMMAND_STRING, "Kein Befehl wurde angegeben." +MCIERR_PARAM_OVERFLOW, "Die Ausgabezeichenkennte war zu lang für den Rückgabepuffer. Erhöhen Sie die Puffergröße." +MCIERR_MISSING_STRING_ARGUMENT, "Der Befehl erfordert einen Zeichenkettenparameter. Bitte stellen Sie einen bereit." +MCIERR_BAD_INTEGER, "Die Angabe einer ganzen Zahl ist für diesen Befehl ungültig." +MCIERR_PARSER_INTERNAL, "Der Gerätetreiber hat einen ungültigen Rückgabewert geliefert. Fragen Sie den Gerätehersteller nach einem neuen Treiber." +MCIERR_DRIVER_INTERNAL, "Ein Treiberfehler ist aufgetreten. Fragen Sie den Gerätehersteller nach einem neuen Treiber." +MCIERR_MISSING_PARAMETER, "Der angegebene Befehl erfordert einen Parameter. Bitte geben Sie einen an." +MCIERR_UNSUPPORTED_FUNCTION, "Das verwendete MCI - Gerät unterstützt diesen Befehl nicht." +MCIERR_FILE_NOT_FOUND, "Die angeforderte Datei wurde nicht gefunden. Stellen Sie sicher, dass Pfad- und Dateiname richtig sind." +MCIERR_DEVICE_NOT_READY, "Der Gerätetreiber ist nicht bereit." +MCIERR_INTERNAL, "Ein Fehler ereignete sich beim Starten von MCI. Versuche Windows neu zu starten." +MCIERR_DRIVER, "Es gibt ein Problem mit dem Gerätetreiber. Der Treiber wird geschlossen. Ein Fehler kann nicht gemeldet werden." +MCIERR_CANNOT_USE_ALL, "Der Gerätename 'all' ist nicht in diesem Befehl erlaubt." +MCIERR_MULTIPLE, "Es traten Fehler in mehr als einem Gerät auf. Geben Sie jeden Befehl für jedes Gerät einzeln an, um zu bestimmen, welches Gerät die Fehler verursachte." +MCIERR_EXTENSION_NOT_FOUND, "Kann keinen Gerätetyp aus der angegebenen Dateinamenerweiterung ermitteln." +MCIERR_OUTOFRANGE, "Der angegebene Paramter liegt außerhalb des zulässigen Bereichs für diesen Befehl." +MCIERR_FLAGS_NOT_COMPATIBLE, "Die Paramter können nicht zusammen verwendet werden." +MCIERR_FILE_NOT_SAVED, "Die Datei kann nicht gespeichert werden. Stellen Sie sicher, dass genügend Platz auf dem Datenträger verfügbar ist oder Ihre Netzwerkverbindung noch besteht." +MCIERR_DEVICE_TYPE_REQUIRED, "Das angegebene Gerät wurde nicht gefunden. Stellen Sie sicher, dass es installiert ist oder der Gerätename richtig geschrieben ist." +MCIERR_DEVICE_LOCKED, "Das angegebene Gerät wird geschlossen. Warten Sie einige Sekunden, und versuchen Sie es erneut." +MCIERR_DUPLICATE_ALIAS, "Der angegebene Alias wird von dieser Anwendung bereits verwendet. Wählen Sie einen eindeutigen Alias." +MCIERR_BAD_CONSTANT, "Der angegebene Parameter für diesen Befehl ungültig." +MCIERR_MUST_USE_SHAREABLE, "Das Gerät ist bereits geöffnet. Benutzen Sie den 'shareable' - Parameter bei jedem 'open' - Befehl." +MCIERR_MISSING_DEVICE_NAME, "Der angegebene Befehl erfordert einen Alias-, Datei-, Treiber- oder Gerätenamen. Bitte geben Sie einen an." +MCIERR_BAD_TIME_FORMAT, "Der angegebene Wert für das Zeitformat ist ungültig. Lesen Sie in der MCI - Dokumentation nach gültigen Formaten nach." +MCIERR_NO_CLOSING_QUOTE, "Ein abschließendes Anführungszeichen fehlt im Parameter. Bitte geben Sie eins an." +MCIERR_DUPLICATE_FLAGS, "Ein Parameter oder Wert wurde zweimal angegeben. Geben Sie in nur einzeln an." +MCIERR_INVALID_FILE, "Die angegebene Datei kann auf dem MCI - Gerät nicht wiedergegeben werden. Die Datei ist wahrscheinlich beschädigt oder in einem ungültigen Format." +MCIERR_NULL_PARAMETER_BLOCK, "Der Parameterblock, der zu MCI übergeben wurde, war NULL." +MCIERR_UNNAMED_RESOURCE, "Es kann keine unbenannte Datei gespeichert werden. Geben Sie einen Dateinamen an." +MCIERR_NEW_REQUIRES_ALIAS, "Sie müssen einen Alias mit dem 'new' - Parameter angeben." +MCIERR_NOTIFY_ON_AUTO_OPEN, "Das 'notify' Flag ist unzulässig für selbstöffnende Geräte." +MCIERR_NO_ELEMENT_ALLOWED, "Ein Dateiname kann mit diesem Gerät nicht verwendet werden." +MCIERR_NONAPPLICABLE_FUNCTION, "Die Befehle sind in der angegebenen Reihenfolge nicht ausführbar. Ändern Sie die Reihenfolge, und versuchen Sie es erneut." +MCIERR_ILLEGAL_FOR_AUTO_OPEN, "Der Befehl kann nicht auf ein selbstöffnedes Gerät angewandt werden. Warten Sie, bis das Gerät geschlossen wurde und versuchen Sie es erneut." +MCIERR_FILENAME_REQUIRED, "Der Dateiname ist ungültig. Der Dateiname muss aus maximal 8 Zeichen, gefolgt von einem Punkt und einer Dateinamenerweiterung bestehen." +MCIERR_EXTRA_CHARACTERS, "Zusätzliche Zeichen nach einer Zeichenkette mit Anführungszeichen sind nicht erlaubt." +MCIERR_DEVICE_NOT_INSTALLED, "Das angegebene Gerät ist nicht auf Ihren System installiert. Benutzen Sie die Hardwareerkennung in der Systemsteuerung, um das Gerät zu installieren." +MCIERR_GET_CD, "Auf die angegebene Datei oder das MCI - Gerät kann nicht zugegriffen werden. Versuchen Sie, das Verzeichnis zu wechseln oder das System neu zu starten." +MCIERR_SET_CD, "Auf die angegebene Datei oder das MCI - Gerät kann nicht zugegriffen werden, weil die Anwendung nicht das Verzeichnis wechseln kann." +MCIERR_SET_DRIVE, "Auf die angegebene Datei oder das MCI - Gerät kann nicht zugegriffen werden, weil die Anwendung nicht das Laufwerk wechseln kann." +MCIERR_DEVICE_LENGTH, "Geben Sie einen Geräte- oder Treibernamen mit weniger als 79 Zeichen an." +MCIERR_DEVICE_ORD_LENGTH, "Geben Sie einen Geräte- oder Treibernamen mit weniger als 69 Zeichen an." +MCIERR_NO_INTEGER, "Der angegebene Befehl erfordert einen ganzzahligen Parameter. Bitte geben Sie einen an." +MCIERR_WAVE_OUTPUTSINUSE, "Alle Waveformgeräte, die diese Dateien in dem gegenwärtigen Format wiedergeben könnten, sind in Benutzung. Warten Sie, bis ein Waveformgerät frei ist, und wiederholen Sie den Vorgang." +MCIERR_WAVE_SETOUTPUTINUSE, "Das gegenwärtige Waveformgerät kann nicht wiedergeben, weil es gerade benutzt wird. Warten Sie, bis das Gerät frei ist, und wiederholen Sie den Vorgang." +MCIERR_WAVE_INPUTSINUSE, "Es ist kein Waveformgerät frei, das das gegenwärtige Format aufzeichnen könnte. Warten Sie, bis ein Waveformgerät frei ist, und wiederholen Sie den Vorgang." +MCIERR_WAVE_SETINPUTINUSE, "Das gegenwärtige Waveformgerät kann nicht aufzeichnen, weil es gerade verwendet wird. Warten Sie, bis das Gerät frei ist, und wiederholen Sie den Vorgang." +MCIERR_WAVE_OUTPUTUNSPECIFIED, "Jedes kompatible Waveform - Wiedergabegerät kann verwendet werden." +MCIERR_WAVE_INPUTUNSPECIFIED, "Jedes kompatible Waveform - Aufnahmegerät kann verwendet werden." +MCIERR_WAVE_OUTPUTSUNSUITABLE, "Es ist kein Waveformgerät installiert, das Dateien im aktuellen Format wiedergeben kann. Benutzen Sie die Hardwareerkennung in der Systemsteuerung, um ein Waveformgerät zu installieren." +MCIERR_WAVE_SETOUTPUTUNSUITABLE,"Das Wiedergabegerät erkennt das gegenwärtige Dateiformat nicht." +MCIERR_WAVE_INPUTSUNSUITABLE, "Es ist kein Waveformgerät installiert, das Dateien im aktuellen Format aufnehmen kann. Benutzen Sie die Hardwareerkennung in der Systemsteuerung, um ein Waveformgerät zu installieren." +MCIERR_WAVE_SETINPUTUNSUITABLE, "Das Gerät, mit dem Sie aufzeichnen möchten, erkennt das gegenwärtige Dateiformat nicht." +MCIERR_NO_WINDOW, "Es gibt kein Anzeigefenster." +MCIERR_CREATEWINDOW, "Fenster konnte nicht erzeugt oder verwendet werden." +MCIERR_FILE_READ, "Die Datei konnte nicht gelesen werden. Stellen Sie sicher, dass die Datei existiert oder Ihre Netzwerkverbindung noch besteht." +MCIERR_FILE_WRITE, "Die Datei konnte nicht geschrieben werden. Stellen Sie sicher, dass genügend Platz auf dem Datenträger verfügbar ist, oder dass die Netzwerkverbindung noch besteht." +MCIERR_SEQ_DIV_INCOMPATIBLE, "Die Zeitformate von ""song pointer"" und SMPTE schliessen sich gegenseitig aus. Sie können sie nicht zusammen verwenden." +MCIERR_SEQ_NOMIDIPRESENT, "Es sind keine MIDI - Geräte auf dem System installiert. Benutzen Sie die Hardwareerkennung in der Systemsteuerung, um einen MIDI - Treiber zu installieren." +MCIERR_SEQ_PORT_INUSE, "Der angegebene MIDI - Anschluss wird bereits verwendet. Warten Sie bis der Anschluss frei ist, und versuchen Sie es erneut." +MCIERR_SEQ_PORT_MAPNODEVICE, "Das gegenwärtige MIDI - Mapper Setup benutzt ein MIDI - Gerät, dass nicht auf Ihren System installiert ist. Benutzen Sie den MIDI - Mapper in der Systemsteuerung, um das Setup zu ändern." +MCIERR_SEQ_PORT_MISCERROR, "Beim Benutzen des angegebenen Anschlusses trat ein Fehler auf." +MCIERR_SEQ_PORT_NONEXISTENT, "Es sind keine angegebnen MIDI - Geräte auf dem System installiert. Benutzen Sie die Hardwareerkennung in der Systemsteuerung, um ein MIDI - Gerät zu installieren." +MCIERR_SEQ_PORTUNSPECIFIED, "Es gibt keinen aktuellen MIDI - Anschluss auf dem System." +MCIERR_SEQ_TIMER, "Alle Multimediazeitgeber werden von anderen Anwendungen verwendet. Beenden Sie eine dieser Anwendungen, und versuchen Sie es erneut." + +END diff --git a/reactos/lib/winmm/winmm_Ja.rc b/reactos/lib/winmm/winmm_Ja.rc new file mode 100644 index 00000000000..591674a5aa3 --- /dev/null +++ b/reactos/lib/winmm/winmm_Ja.rc @@ -0,0 +1,126 @@ +/* + * Copyright 2004 Hajime Segawa + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +STRINGTABLE LANGUAGE LANG_JAPANESE, SUBLANG_NEUTRAL +BEGIN + +/* MMSYS errors */ +MMSYSERR_NOERROR, "Žw’肳‚ꂽƒRƒ}ƒ“ƒh‚ðŽÀs‚Å‚«‚Ü‚¹‚ñ‚Å‚µ‚½B" +MMSYSERR_ERROR, "•s–¾‚ÈŠO•”ƒGƒ‰[‚Å‚·B" +MMSYSERR_BADDEVICEID, "–³Œø‚ȃfƒoƒCƒXID‚Å‚·B" +MMSYSERR_NOTENABLED, "ƒhƒ‰ƒCƒo‚ª—LŒø‚ɂȂÁ‚Ä‚¢‚Ü‚¹‚ñB" +MMSYSERR_ALLOCATED, "Žw’肳‚ꂽƒfƒoƒCƒX‚ÍŽg—p’†‚Å‚·BƒfƒoƒCƒX‚ª‰ð•ú‚³‚ê‚é‚܂ő҂Á‚Ä‚©‚ç‚â‚è’¼‚µ‚ĉº‚³‚¢B" +MMSYSERR_INVALHANDLE, "–³Œø‚ȃfƒoƒCƒXƒnƒ“ƒhƒ‹‚Å‚·B" +MMSYSERR_NODRIVER, "ƒVƒXƒeƒ€‚Ƀhƒ‰ƒCƒo‚ªƒCƒ“ƒXƒg[ƒ‹‚³‚ê‚Ä‚¢‚Ü‚¹‚ñ!\n" +MMSYSERR_NOMEM, "‚±‚Ì‘€ì‚ðŽÀs‚·‚邽‚߂̃ƒ‚ƒŠ‚ª•s‘«‚µ‚Ä‚¢‚Ü‚·B‚¢‚­‚‚©‚̃AƒvƒŠƒP[ƒVƒ‡ƒ“‚ðI—¹‚µ‚ċ󂫃ƒ‚ƒŠ‚ð‘‚₵‚Ä‚â‚è’¼‚µ‚ĉº‚³‚¢B" +MMSYSERR_NOTSUPPORTED, "‚±‚Ì‹@”\‚̓Tƒ|[ƒg‚³‚ê‚Ä‚¢‚Ü‚¹‚ñBCapabilitiesŠÖ”‚ðŽg—p‚µ‚ăhƒ‰ƒCƒo‚ªƒTƒ|[ƒg‚·‚é‹@”\‚ƃƒbƒZ[ƒW‚ðŠm”F‚µ‚ĉº‚³‚¢B" +MMSYSERR_BADERRNUM, "Žw’肳‚ꂽƒGƒ‰[”Ô†‚Í’è‹`‚³‚ê‚Ä‚¢‚Ü‚¹‚ñB" +MMSYSERR_INVALFLAG, "ƒVƒXƒeƒ€ŠÖ”‚É–³Œø‚ȃtƒ‰ƒO‚ª“n‚³‚ê‚Ü‚µ‚½B" +MMSYSERR_INVALPARAM, "ƒVƒXƒeƒ€ŠÖ”‚É–³Œø‚ȃpƒ‰ƒ[ƒ^‚ª“n‚³‚ê‚Ü‚µ‚½B" + +/* WAVE errors */ +WAVERR_BADFORMAT, "Žw’肳‚ꂽƒtƒH[ƒ}ƒbƒg‚̓Tƒ|[ƒg‚³‚ê‚Ä‚¢‚È‚¢‚©A‰ðŽß‚Å‚«‚Ü‚¹‚ñBCapabilitiesŠÖ”‚ðŽg—p‚µ‚ăTƒ|[ƒg‚³‚ê‚Ä‚¢‚éƒtƒH[ƒ}ƒbƒg‚ðŠm”F‚µ‚ĉº‚³‚¢B" +WAVERR_STILLPLAYING, "ƒƒfƒBƒAĶ’†‚ɂ͂±‚Ì‘€ì‚ðŽÀs‚Å‚«‚Ü‚¹‚ñBƒfƒoƒCƒX‚ðƒŠƒZƒbƒg‚·‚邩Ķ‚ªI‚í‚é‚܂ő҂Á‚ĉº‚³‚¢B" +WAVERR_UNPREPARED, "waveƒwƒbƒ_‚ª€”õ‚³‚ê‚Ä‚¢‚Ü‚¹‚ñBPrepareŠÖ”‚ðŽg—p‚µ‚ăwƒbƒ_‚ð€”õ‚µ‚Ä‚â‚è’¼‚µ‚ĉº‚³‚¢B" +WAVERR_SYNC, "WAVE_ALLOWSYNCƒtƒ‰ƒO‚È‚µ‚ł̓fƒoƒCƒX‚ðƒI[ƒvƒ“‚Å‚«‚Ü‚¹‚ñBƒtƒ‰ƒO‚ðŽw’肵‚Ä‚â‚è’¼‚µ‚ĉº‚³‚¢B" + +/* MIDI errors */ +MIDIERR_UNPREPARED, "MIDIƒwƒbƒ_‚ª€”õ‚³‚ê‚Ä‚¢‚Ü‚¹‚ñBPrepareŠÖ”‚ðŽg—p‚µ‚ăwƒbƒ_‚ð€”õ‚µ‚Ä‚â‚è’¼‚µ‚ĉº‚³‚¢B" +MIDIERR_STILLPLAYING, "ƒƒfƒBƒAĶ’†‚ɂ͂±‚Ì‘€ì‚ðŽÀs‚Å‚«‚Ü‚¹‚ñBƒfƒoƒCƒX‚ðƒŠƒZƒbƒg‚·‚邩Ķ‚ªI‚í‚é‚܂ő҂Á‚ĉº‚³‚¢B" +MIDIERR_NOMAP, "MIDIƒ}ƒbƒv‚ªŒ©‚‚©‚è‚Ü‚¹‚ñBƒhƒ‰ƒCƒo‚Ì–â‘è‚©AMIDIMAP.CFGƒtƒ@ƒCƒ‹‚ª”j‘¹‚µ‚Ä‚¢‚é‚©‘¶Ý‚µ‚È‚¢‰Â”\«‚ª‚ ‚è‚Ü‚·B" +MIDIERR_NOTREADY, "ƒ|[ƒg‚̓fƒoƒCƒX‚Ƀf[ƒ^‚ð‘—M’†‚Å‚·Bƒf[ƒ^‚Ì‘—M‚ªI‚í‚é‚܂ő҂Á‚Ä‚©‚ç‚â‚è’¼‚µ‚ĉº‚³‚¢B" +MIDIERR_NODEVICE, "MIDIƒ}ƒbƒp‚Ìݒ肪ƒVƒXƒeƒ€‚É‘•’…‚³‚ê‚Ä‚¢‚È‚¢ƒfƒoƒCƒX‚ðŽQÆ‚µ‚Ä‚¢‚Ü‚·BÝ’è‚ð•ÏX‚·‚é‚ɂ̓Rƒ“ƒgƒ[ƒ‹ƒpƒlƒ‹‚ÌuMIDIƒ}ƒbƒpvƒAƒvƒŒƒbƒg‚ðŽg—p‚µ‚ĉº‚³‚¢B" +MIDIERR_INVALIDSETUP, "MIDI‚Ìݒ肪”j‘¹‚µ‚Ä‚¢‚Ü‚·BƒIƒŠƒWƒiƒ‹‚ÌMIDIMAP.CFGƒtƒ@ƒCƒ‹‚ðWindows‚ÌSYSTEMƒfƒBƒŒƒNƒgƒŠ‚©‚çƒRƒs[‚µ‚Ä‚â‚è’¼‚µ‚ĉº‚³‚¢B" + +/* MCI errors */ +MCIERR_INVALID_DEVICE_ID, "–³Œø‚ÈMCIƒfƒoƒCƒXID‚Å‚·BMCIƒfƒoƒCƒX‚ðƒI[ƒvƒ“‚µ‚½‚Æ‚«‚ɕԂ³‚ꂽID‚ðŽg—p‚µ‚ĉº‚³‚¢B" +MCIERR_UNRECOGNIZED_KEYWORD, "ƒhƒ‰ƒCƒo‚ÍŽw’肳‚ꂽƒRƒ}ƒ“ƒh‚̃pƒ‰ƒ[ƒ^‚ð”Fޝ‚Å‚«‚Ü‚¹‚ñ‚Å‚µ‚½B" +MCIERR_UNRECOGNIZED_COMMAND, "ƒhƒ‰ƒCƒo‚ÍŽw’肳‚ꂽƒRƒ}ƒ“ƒh‚ð”Fޝ‚Å‚«‚Ü‚¹‚ñ‚Å‚µ‚½B" +MCIERR_HARDWARE, "ƒƒfƒBƒAƒfƒoƒCƒX‚É–â‘肪”­¶‚µ‚Ü‚µ‚½BƒfƒoƒCƒX‚ª³í‚É“®ì‚µ‚Ä‚¢‚é‚©Šm”F‚·‚é‚©A»‘¢Œ³‚É–â‚¢‡‚킹‚ĉº‚³‚¢B" +MCIERR_INVALID_DEVICE_NAME, "Žw’肳‚ꂽƒfƒoƒCƒX‚̓I[ƒvƒ“‚³‚ê‚Ä‚¢‚È‚¢‚©AMCI‚É”Fޝ‚³‚ê‚Ä‚¢‚Ü‚¹‚ñB" +MCIERR_OUT_OF_MEMORY, "‚±‚Ì‘€ì‚ðŽÀs‚·‚邽‚߂̃ƒ‚ƒŠ‚ª•s‘«‚µ‚Ä‚¢‚Ü‚·B\n‚¢‚­‚‚©‚̃AƒvƒŠƒP[ƒVƒ‡ƒ“‚ðI—¹‚µ‚ċ󂫃ƒ‚ƒŠ‚ð‘‚₵‚Ä‚â‚è’¼‚µ‚ĉº‚³‚¢B" +MCIERR_DEVICE_OPEN, "ƒfƒoƒCƒX–¼‚Í‚±‚̃AƒvƒŠƒP[ƒVƒ‡ƒ“‚É‚æ‚Á‚ăGƒCƒŠƒAƒX‚Æ‚µ‚ÄŽg—p‚³‚ê‚Ä‚¢‚Ü‚·B“ÆŽ©‚̃GƒCƒŠƒAƒX‚ðŽg—p‚µ‚ĉº‚³‚¢B" +MCIERR_CANNOT_LOAD_DRIVER, "Žw’肳‚ꂽƒfƒoƒCƒXƒhƒ‰ƒCƒo‚̃[ƒh’†‚É•s–¾‚ȃGƒ‰[‚ª”­¶‚µ‚Ü‚µ‚½B" +MCIERR_MISSING_COMMAND_STRING, "ƒRƒ}ƒ“ƒh‚ªŽw’肳‚ê‚Ä‚¢‚Ü‚¹‚ñB" +MCIERR_PARAM_OVERFLOW, "o—Í‚³‚ꂽ•¶Žš—ñ‚ªƒoƒbƒtƒ@‚É“ü‚èØ‚è‚Ü‚¹‚ñBƒoƒbƒtƒ@‚̃TƒCƒY‚ð‘‚₵‚ĉº‚³‚¢B" +MCIERR_MISSING_STRING_ARGUMENT, "Žw’肳‚ꂽƒRƒ}ƒ“ƒh‚ɂ͕¶Žš—ñ‚̃pƒ‰ƒ[ƒ^‚ª•K—v‚Å‚·B" +MCIERR_BAD_INTEGER, "Žw’肳‚ꂽ®”’l‚Í‚±‚̃Rƒ}ƒ“ƒh‚ɂ͖³Œø‚Å‚·B" +MCIERR_PARSER_INTERNAL, "ƒfƒoƒCƒXƒhƒ‰ƒCƒo‚ª–³Œø‚ÈŒ`Ž®‚Ì’l‚ð•Ô‚µ‚Ü‚µ‚½B»‘¢Œ³‚ÉV‚µ‚¢ƒhƒ‰ƒCƒo‚ª–³‚¢‚©–â‚¢‡‚킹‚ĉº‚³‚¢B" +MCIERR_DRIVER_INTERNAL, "ƒfƒoƒCƒXƒhƒ‰ƒCƒo‚É–â‘肪”­¶‚µ‚Ü‚µ‚½B»‘¢Œ³‚ÉV‚µ‚¢ƒhƒ‰ƒCƒo‚ª–³‚¢‚©–â‚¢‡‚킹‚ĉº‚³‚¢B" +MCIERR_MISSING_PARAMETER, "Žw’肳‚ꂽƒRƒ}ƒ“ƒh‚ɂ̓pƒ‰ƒ[ƒ^‚ª•K—v‚Å‚·B" +MCIERR_UNSUPPORTED_FUNCTION, "Žg—p‚µ‚Ä‚¢‚éMCIƒfƒoƒCƒX‚ÍŽw’肳‚ꂽƒRƒ}ƒ“ƒh‚ðƒTƒ|[ƒg‚µ‚Ä‚¢‚Ü‚¹‚ñB" +MCIERR_FILE_NOT_FOUND, "Žw’肳‚ꂽƒtƒ@ƒCƒ‹‚ÍŒ©‚‚©‚è‚Ü‚¹‚ñBƒtƒ@ƒCƒ‹–¼‚ƃpƒX‚ðŠm”F‚µ‚ĉº‚³‚¢B" +MCIERR_DEVICE_NOT_READY, "ƒfƒoƒCƒXƒhƒ‰ƒCƒo‚Ì€”õ‚ª‚Å‚«‚Ä‚¢‚Ü‚¹‚ñB" +MCIERR_INTERNAL, "MCI‚̉Šú‰»’†‚É–â‘肪”­¶‚µ‚Ü‚µ‚½BWindows‚ðÄ‹N“®‚µ‚ĉº‚³‚¢B" +MCIERR_DRIVER, "ƒfƒoƒCƒXƒhƒ‰ƒCƒo‚É–â‘肪”­¶‚µ‚Ü‚µ‚½Bƒhƒ‰ƒCƒo‚̓Nƒ[ƒY‚³‚ê‚Ä‚¢‚Ü‚·BƒGƒ‰[‚ɃAƒNƒZƒX‚Å‚«‚Ü‚¹‚ñB" +MCIERR_CANNOT_USE_ALL, "Žw’肳‚ꂽƒRƒ}ƒ“ƒh‚Íuallv‚ðƒfƒoƒCƒX–¼‚Æ‚µ‚ÄŽg—p‚·‚邱‚Æ‚ª‚Å‚«‚Ü‚¹‚ñB" +MCIERR_MULTIPLE, "•¡”‚̃fƒoƒCƒX‚ŃGƒ‰[‚ª”­¶‚µ‚Ü‚µ‚½B‚ǂ̃fƒoƒCƒX‚ŃGƒ‰[‚ª”­¶‚µ‚½‚©Šm”F‚·‚é‚É‚ÍAƒRƒ}ƒ“ƒh‚ƃfƒoƒCƒX‚ð•ʌ‚Ɏw’肵‚ĉº‚³‚¢B" +MCIERR_EXTENSION_NOT_FOUND, "Žw’肳‚ꂽƒtƒ@ƒCƒ‹‚ÌŠg’£Žq‚©‚çƒfƒoƒCƒX‚ÌŽí—Þ‚ð“Á’è‚Å‚«‚Ü‚¹‚ñB" +MCIERR_OUTOFRANGE, "Žw’肳‚ꂽƒRƒ}ƒ“ƒh‚ɑ΂µ‚ÄŽw’肳‚ꂽƒpƒ‰ƒ[ƒ^‚͔͈͊O‚Å‚·B" +MCIERR_FLAGS_NOT_COMPATIBLE, "Žw’肳‚ꂽƒpƒ‰ƒ[ƒ^‚Í“¯Žž‚ÉŽg—p‚Å‚«‚Ü‚¹‚ñB" +MCIERR_FILE_NOT_SAVED, "Žw’肳‚ꂽƒtƒ@ƒCƒ‹‚͕ۑ¶‚Å‚«‚Ü‚¹‚ñ‚Å‚µ‚½BƒfƒBƒXƒN‚É\•ª‚ȋ󂫗e—Ê‚ª‚ ‚é‚©A‚ ‚é‚¢‚̓lƒbƒgƒ[ƒN‚ÉÚ‘±‚³‚ê‚Ä‚¢‚é‚©Šm”F‚µ‚ĉº‚³‚¢B" +MCIERR_DEVICE_TYPE_REQUIRED, "Žw’肳‚ꂽƒfƒoƒCƒX‚ÍŒ©‚‚©‚è‚Ü‚¹‚ñ‚Å‚µ‚½BƒfƒoƒCƒX‚ª‘•’…‚³‚ê‚Ä‚¢‚ÄAƒfƒoƒCƒX–¼‚̂‚Â肪³‚µ‚¢‚©Šm”F‚µ‚ĉº‚³‚¢B" +MCIERR_DEVICE_LOCKED, "Žw’肳‚ꂽƒfƒoƒCƒX‚̓Nƒ[ƒYˆ—’†‚Å‚·B”•b‘Ò‚Á‚Ä‚©‚ç‚â‚è’¼‚µ‚ĉº‚³‚¢B" +MCIERR_DUPLICATE_ALIAS, "Žw’肳‚ꂽƒGƒCƒŠƒAƒX‚Í‚±‚̃AƒvƒŠƒP[ƒVƒ‡ƒ“‚É‚æ‚Á‚ăGƒCƒŠƒAƒX‚Æ‚µ‚ÄŽg—p‚³‚ê‚Ä‚¢‚Ü‚·B“ÆŽ©‚̃GƒCƒŠƒAƒX‚ðŽg—p‚µ‚ĉº‚³‚¢B" +MCIERR_BAD_CONSTANT, "Žw’肳‚ꂽƒpƒ‰ƒ[ƒ^‚Í‚±‚̃Rƒ}ƒ“ƒh‚ɂ͖³Œø‚Å‚·B" +MCIERR_MUST_USE_SHAREABLE, "ƒfƒoƒCƒXƒhƒ‰ƒCƒo‚ÍŽg—p’†‚Å‚·BƒfƒoƒCƒX‚ð‹¤—L‚·‚é‚É‚ÍuopenvƒRƒ}ƒ“ƒh‚²‚Æ‚Éushareablevƒpƒ‰ƒ[ƒ^‚ðŽw’肵‚ĉº‚³‚¢B" +MCIERR_MISSING_DEVICE_NAME, "Žw’肳‚ꂽƒRƒ}ƒ“ƒh‚ɂ̓GƒCƒŠƒAƒXAƒtƒ@ƒCƒ‹Aƒhƒ‰ƒCƒo‚Ü‚½‚̓fƒoƒCƒX–¼‚ðŽw’è‚·‚é•K—v‚ª‚ ‚è‚Ü‚·B" +MCIERR_BAD_TIME_FORMAT, "Žw’肳‚ê‚½ŽžŠÔ‚̃tƒH[ƒ}ƒbƒg‚ª–³Œø‚Å‚·BŽg—p‚Å‚«‚éƒtƒH[ƒ}ƒbƒg‚ÉŠÖ‚µ‚Ä‚ÍMCI‚̃hƒLƒ…ƒƒ“ƒg‚ðŽQÆ‚µ‚ĉº‚³‚¢B" +MCIERR_NO_CLOSING_QUOTE, "ƒ_ƒuƒ‹ƒNƒI[ƒe[ƒVƒ‡ƒ“‚ª•‚¶‚Ä‚¢‚Ü‚¹‚ñB" +MCIERR_DUPLICATE_FLAGS, "ƒpƒ‰ƒ[ƒ^‚ª“ñd‚ÉŽw’肳‚ê‚Ä‚¢‚Ü‚·B" +MCIERR_INVALID_FILE, "Žw’肳‚ꂽƒtƒ@ƒCƒ‹‚ÍŽw’肳‚ꂽMCIƒfƒoƒCƒX‚Å‚Í͂ł«‚Ü‚¹‚ñBƒtƒ@ƒCƒ‹‚ª”j‘¹‚µ‚Ä‚¢‚é‚©AƒtƒH[ƒ}ƒbƒg‚ª•s³‚Å‚·B" +MCIERR_NULL_PARAMETER_BLOCK, "ƒkƒ‹ƒpƒ‰ƒ[ƒ^‚ªMCI‚É“n‚³‚ê‚Ü‚µ‚½B" +MCIERR_UNNAMED_RESOURCE, "ƒtƒ@ƒCƒ‹–¼‚ªŽw’肳‚ê‚Ä‚¢‚È‚¢‚½‚ߕۑ¶‚Å‚«‚Ü‚¹‚ñBƒtƒ@ƒCƒ‹–¼‚ðŽw’肵‚ĉº‚³‚¢B" +MCIERR_NEW_REQUIRES_ALIAS, "unewvƒpƒ‰ƒ[ƒ^‚ðŽg—p‚·‚éꇂ̓GƒCƒŠƒAƒX‚ðŽw’è‚·‚é•K—v‚ª‚ ‚è‚Ü‚·B" +MCIERR_NOTIFY_ON_AUTO_OPEN, "ƒI[ƒgƒI[ƒvƒ“‚³‚ꂽƒfƒoƒCƒX‚Éunotifyvƒtƒ‰ƒO‚ðŽg—p‚·‚邱‚Ƃ͂ł«‚Ü‚¹‚ñB" +MCIERR_NO_ELEMENT_ALLOWED, "Žw’肳‚ꂽƒfƒoƒCƒX‚ɑ΂µ‚ătƒ@ƒCƒ‹–¼‚ðŽg—p‚·‚邱‚Ƃ͂ł«‚Ü‚¹‚ñB" +MCIERR_NONAPPLICABLE_FUNCTION, "Žw’肳‚ꂽ‡˜‚ŃRƒ}ƒ“ƒh‚ðŽÀs‚Å‚«‚Ü‚¹‚ñBƒRƒ}ƒ“ƒhƒV[ƒPƒ“ƒX‚ðC³‚µ‚Ä‚â‚è’¼‚µ‚ĉº‚³‚¢B" +MCIERR_ILLEGAL_FOR_AUTO_OPEN, "ƒI[ƒgƒI[ƒvƒ“‚³‚ꂽƒfƒoƒCƒX‚ɑ΂µ‚ÄŽw’肳‚ꂽƒRƒ}ƒ“ƒh‚ðŽÀs‚Å‚«‚Ü‚¹‚ñBƒfƒoƒCƒX‚ªƒNƒ[ƒY‚·‚é‚܂ő҂Á‚Ä‚©‚ç‚â‚è’¼‚µ‚ĉº‚³‚¢B" +MCIERR_FILENAME_REQUIRED, "ƒtƒ@ƒCƒ‹–¼‚ª–³Œø‚Å‚·Bƒtƒ@ƒCƒ‹–¼‚ª”¼Šp8•¶ŽšˆÈ“à‚ÅAƒsƒŠƒIƒh‚É‘±‚¢‚ÄŠg’£Žq‚ª•t‚¢‚Ä‚¢‚邱‚Æ‚ðŠm”F‚µ‚ĉº‚³‚¢B" +MCIERR_EXTRA_CHARACTERS, "ƒNƒI[ƒe[ƒVƒ‡ƒ“ƒ}[ƒN‚Ɉ͂í‚ꂽ•¶Žš—ñ‚É‘±‚­—]•ª‚È•¶Žš‚ð“Á’è‚Å‚«‚Ü‚¹‚ñB" +MCIERR_DEVICE_NOT_INSTALLED, "Žw’肳‚ꂽƒfƒoƒCƒX‚̓Cƒ“ƒXƒg[ƒ‹‚³‚ê‚Ä‚¢‚Ü‚¹‚ñBƒfƒoƒCƒX‚ðƒCƒ“ƒXƒg[ƒ‹‚·‚é‚ɂ̓Rƒ“ƒgƒ[ƒ‹ƒpƒlƒ‹“à‚Ìuƒn[ƒhƒEƒFƒA‚̒ljÁ‚ÆíœvƒAƒvƒŒƒbƒg‚ðŽg—p‚µ‚ĉº‚³‚¢B" +MCIERR_GET_CD, "Žw’肳‚ꂽƒtƒ@ƒCƒ‹‚Ü‚½‚ÍMCIƒfƒoƒCƒX‚ɃAƒNƒZƒX‚Å‚«‚Ü‚¹‚ñBƒfƒBƒŒƒNƒgƒŠ‚ð•ÏX‚·‚é‚©AƒRƒ“ƒsƒ…[ƒ^‚ðÄ‹N“®‚µ‚ĉº‚³‚¢B" +MCIERR_SET_CD, "ƒAƒvƒŠƒP[ƒVƒ‡ƒ“‚ªƒfƒBƒŒƒNƒgƒŠ‚ð•ÏX‚Å‚«‚È‚¢‚½‚ßAŽw’肳‚ꂽƒtƒ@ƒCƒ‹‚Ü‚½‚ÍMCIƒfƒoƒCƒX‚ɃAƒNƒZƒX‚Å‚«‚Ü‚¹‚ñB" +MCIERR_SET_DRIVE, "ƒAƒvƒŠƒP[ƒVƒ‡ƒ“‚ªƒhƒ‰ƒCƒu‚ð•ÏX‚Å‚«‚È‚¢‚½‚ßAŽw’肳‚ꂽƒtƒ@ƒCƒ‹‚Ü‚½‚ÍMCIƒfƒoƒCƒX‚ɃAƒNƒZƒX‚Å‚«‚Ü‚¹‚ñB" +MCIERR_DEVICE_LENGTH, "ƒfƒoƒCƒX–¼‚Ü‚½‚̓hƒ‰ƒCƒo–¼‚Í”¼Šp79•¶ŽšˆÈ“à‚ÅŽw’肵‚ĉº‚³‚¢B" +MCIERR_DEVICE_ORD_LENGTH, "ƒfƒoƒCƒX–¼‚Ü‚½‚̓hƒ‰ƒCƒo–¼‚Í”¼Šp69•¶ŽšˆÈ“à‚ÅŽw’肵‚ĉº‚³‚¢B" +MCIERR_NO_INTEGER, "Žw’肳‚ꂽƒRƒ}ƒ“ƒh‚ɂͮ”’l‚̃pƒ‰ƒ[ƒ^‚ª•K—v‚Å‚·B" +MCIERR_WAVE_OUTPUTSINUSE, "ƒtƒ@ƒCƒ‹‚ðŒ»Ý‚̃tƒH[ƒ}ƒbƒg‚Å͂ł«‚éwaveƒfƒoƒCƒX‚Í‘S‚ÄŽg—p’†‚Å‚·BƒfƒoƒCƒX‚ª‰ð•ú‚³‚ê‚é‚܂ő҂Á‚Ä‚©‚ç‚â‚è’¼‚µ‚ĉº‚³‚¢B" +MCIERR_WAVE_SETOUTPUTINUSE, "Œ»Ý‚ÌwaveƒfƒoƒCƒX‚ÍŽg—p’†‚Ȃ̂ÅĶƒ‚[ƒh‚ÉÝ’è‚Å‚«‚Ü‚¹‚ñBƒfƒoƒCƒX‚ª‰ð•ú‚³‚ê‚é‚܂ő҂Á‚Ä‚©‚ç‚â‚è’¼‚µ‚ĉº‚³‚¢B" +MCIERR_WAVE_INPUTSINUSE, "Œ»Ý‚̃tƒH[ƒ}ƒbƒg‚Ř^‰¹‚ª‰Â”\‚È‘S‚Ä‚ÌwaveƒfƒoƒCƒX‚ÍŽg—p’†‚Å‚·BƒfƒoƒCƒX‚ª‰ð•ú‚³‚ê‚é‚܂ő҂Á‚Ä‚©‚ç‚â‚è’¼‚µ‚ĉº‚³‚¢B" +MCIERR_WAVE_SETINPUTINUSE, "Œ»Ý‚ÌwaveƒfƒoƒCƒX‚ÍŽg—p’†‚Ȃ̂Ř^‰¹ƒ‚[ƒh‚ÉÝ’è‚Å‚«‚Ü‚¹‚ñBƒfƒoƒCƒX‚ª‰ð•ú‚³‚ê‚é‚܂ő҂Á‚Ä‚©‚ç‚â‚è’¼‚µ‚ĉº‚³‚¢B" +MCIERR_WAVE_OUTPUTUNSPECIFIED, "ŒÝŠ·«‚Ì‚ ‚éĶƒfƒoƒCƒX‚̂ǂꂩ‚ªŽg—p‚³‚ê‚Ü‚·B" +MCIERR_WAVE_INPUTUNSPECIFIED, "ŒÝŠ·«‚Ì‚ ‚é˜^‰¹ƒfƒoƒCƒX‚̂ǂꂩ‚ªŽg—p‚³‚ê‚Ü‚·B" +MCIERR_WAVE_OUTPUTSUNSUITABLE, "Œ»Ý‚̃tƒH[ƒ}ƒbƒg‚Ńtƒ@ƒCƒ‹‚ð͂ł«‚éwaveƒfƒoƒCƒX‚̓Cƒ“ƒXƒg[ƒ‹‚³‚ê‚Ä‚¢‚Ü‚¹‚ñBwaveƒfƒoƒCƒX‚ðƒCƒ“ƒXƒg[ƒ‹‚·‚é‚ɂ̓Rƒ“ƒgƒ[ƒ‹ƒpƒlƒ‹“à‚Ìuƒn[ƒhƒEƒFƒA‚̒ljÁ‚ÆíœvƒAƒvƒŒƒbƒg‚ðŽg—p‚µ‚ĉº‚³‚¢B" +MCIERR_WAVE_SETOUTPUTUNSUITABLE,"Ķ‚µ‚悤‚Æ‚µ‚Ä‚¢‚éƒfƒoƒCƒX‚ÍŒ»Ý‚̃tƒ@ƒCƒ‹ƒtƒH[ƒ}ƒbƒg‚ð”Fޝ‚Å‚«‚Ü‚¹‚ñB" +MCIERR_WAVE_INPUTSUNSUITABLE, "Œ»Ý‚̃tƒH[ƒ}ƒbƒg‚Ńtƒ@ƒCƒ‹‚ð˜^‰¹‚Å‚«‚éwaveƒfƒoƒCƒX‚̓Cƒ“ƒXƒg[ƒ‹‚³‚ê‚Ä‚¢‚Ü‚¹‚ñBwaveƒfƒoƒCƒX‚ðƒCƒ“ƒXƒg[ƒ‹‚·‚é‚ɂ̓Rƒ“ƒgƒ[ƒ‹ƒpƒlƒ‹“à‚Ìuƒn[ƒhƒEƒFƒA‚̒ljÁ‚ÆíœvƒAƒvƒŒƒbƒg‚ðŽg—p‚µ‚ĉº‚³‚¢B" +MCIERR_WAVE_SETINPUTUNSUITABLE, "˜^‰¹‚µ‚悤‚Æ‚µ‚Ä‚¢‚éƒfƒoƒCƒX‚ÍŒ»Ý‚̃tƒ@ƒCƒ‹ƒtƒH[ƒ}ƒbƒg‚ð”Fޝ‚Å‚«‚Ü‚¹‚ñB" +MCIERR_NO_WINDOW, "•\ަƒEƒBƒ“ƒhƒE‚ª‚ ‚è‚Ü‚¹‚ñB" +MCIERR_CREATEWINDOW, "ƒEƒBƒ“ƒhƒE‚Ì쬂܂½‚ÍŽg—p‚ª‚Å‚«‚Ü‚¹‚ñB" +MCIERR_FILE_READ, "Žw’肵‚½ƒtƒ@ƒCƒ‹‚ð“ǂݞ‚߂܂¹‚ñBƒtƒ@ƒCƒ‹‚ª‘¶Ý‚·‚é‚©Šm”F‚µ‚ĉº‚³‚¢A‚ ‚é‚¢‚̓fƒBƒXƒN‚©ƒlƒbƒgƒ[ƒNÚ‘±‚ðŠm”F‚µ‚ĉº‚³‚¢B" +MCIERR_FILE_WRITE, "Žw’肳‚ꂽƒtƒ@ƒCƒ‹‚É‘‚«ž‚߂܂¹‚ñBƒfƒBƒXƒN‚É\•ª‚ȋ󂫗e—Ê‚ª‚ ‚é‚©A‚ ‚é‚¢‚̓lƒbƒgƒ[ƒN‚ÉÚ‘±‚³‚ê‚Ä‚¢‚é‚©Šm”F‚µ‚ĉº‚³‚¢B" +MCIERR_SEQ_DIV_INCOMPATIBLE, "uƒ\ƒ“ƒOƒ|ƒCƒ“ƒ^v‚ÆSMPTE‚ÌŽžŠÔƒtƒH[ƒ}ƒbƒg‚𓯎ž‚ÉŽg—p‚·‚邱‚Ƃ͂ł«‚Ü‚¹‚ñB" +MCIERR_SEQ_NOMIDIPRESENT, "MIDIƒfƒoƒCƒX‚̓Cƒ“ƒXƒg[ƒ‹‚³‚ê‚Ä‚¢‚Ü‚¹‚ñBMIDIƒhƒ‰ƒCƒo‚ðƒCƒ“ƒXƒg[ƒ‹‚·‚é‚ɂ̓Rƒ“ƒgƒ[ƒ‹ƒpƒlƒ‹“à‚Ìuƒn[ƒhƒEƒFƒA‚̒ljÁ‚ÆíœvƒAƒvƒŒƒbƒg‚ðŽg—p‚µ‚ĉº‚³‚¢B" +MCIERR_SEQ_PORT_INUSE, "Žw’肳‚ꂽMIDIƒ|[ƒg‚ÍŽg—p’†‚Å‚·BMIDIƒ|[ƒg‚ªŠJ•ú‚³‚ê‚é‚܂ő҂Á‚Ä‚©‚ç‚â‚è’¼‚µ‚ĉº‚³‚¢B" +MCIERR_SEQ_PORT_MAPNODEVICE, "MIDIƒ}ƒbƒp‚Ìݒ肪ƒVƒXƒeƒ€‚É‘•’…‚³‚ê‚Ä‚¢‚È‚¢ƒfƒoƒCƒX‚ðŽQÆ‚µ‚Ä‚¢‚Ü‚·BÝ’è‚ð•ÏX‚·‚é‚ɂ̓Rƒ“ƒgƒ[ƒ‹ƒpƒlƒ‹‚ÌuMIDIƒ}ƒbƒpvƒAƒvƒŒƒbƒg‚ðŽg—p‚µ‚ĉº‚³‚¢B" +MCIERR_SEQ_PORT_MISCERROR, "Žw’肳‚ꂽƒ|[ƒg‚ŃGƒ‰[‚ª”­¶‚µ‚Ü‚µ‚½B" +MCIERR_SEQ_PORT_NONEXISTENT, "Žw’肳‚ꂽMIDIƒfƒoƒCƒX‚̓VƒXƒeƒ€‚É‘•’…‚³‚ê‚Ä‚¢‚Ü‚¹‚ñBMIDIƒfƒoƒCƒX‚ðƒCƒ“ƒXƒg[ƒ‹‚·‚é‚ɂ̓Rƒ“ƒgƒ[ƒ‹ƒpƒlƒ‹“à‚Ìuƒn[ƒhƒEƒFƒA‚̒ljÁ‚ÆíœvƒAƒvƒŒƒbƒg‚ðŽg—p‚µ‚ĉº‚³‚¢B" +MCIERR_SEQ_PORTUNSPECIFIED, "ƒVƒXƒeƒ€‚ÉŒ»Ý‚ÌMIDIƒ|[ƒg‚ªŽw’肳‚ê‚Ä‚¢‚Ü‚¹‚ñB" +MCIERR_SEQ_TIMER, "‘S‚Ẵ}ƒ‹ƒ`ƒƒfƒBƒAƒ^ƒCƒ}‚Í‘¼‚̃AƒvƒŠƒP[ƒVƒ‡ƒ“‚É‚æ‚Á‚ÄŽg—p‚³‚ê‚Ä‚¢‚Ü‚·Bƒ^ƒCƒ}‚ðŽg—p‚µ‚Ä‚¢‚éƒAƒvƒŠƒP[ƒVƒ‡ƒ“‚ðˆê‚ÂI—¹‚µ‚Ä‚©‚ç‚â‚è’¼‚µ‚ĉº‚³‚¢B" + +END diff --git a/reactos/lib/winmm/winmm_res.rc b/reactos/lib/winmm/winmm_res.rc index dc30d98fd05..372f12aa38e 100644 --- a/reactos/lib/winmm/winmm_res.rc +++ b/reactos/lib/winmm/winmm_res.rc @@ -28,12 +28,14 @@ #include "winnls.h" /* Add your language specific defines here */ +#include "winmm_De.rc" #include "winmm_En.rc" +#include "winmm_Es.rc" #include "winmm_Fr.rc" #include "winmm_It.rc" +/* #include "winmm_Ja.rc" */ /* Gives error during ReactOS build */ #include "winmm_Nl.rc" #include "winmm_Pt.rc" -#include "winmm_Es.rc" #include "winmm_Ru.rc" #include "winmm_Si.rc" #include "winmm_Sk.rc"