FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Usando funciones MCI
Hola a todos.
Agradeceria a alguien que me dijera como se usan las función MCIERROR mciSendCommand( MCIDEVICEID IDDevice, UINT uMsg, DWORD fdwCommand, DWORD dwParam ); o la funcion MCIERROR mciSendString( LPCTSTR lpszCommand, LPTSTR lpszReturnString, UINT cchReturn, HANDLE hwndCallback ); Por lo que sé, sirven para reproducir archivos multimedia usando los dispositivos disponibles en el PC, pertenecen a la unidad "mmsystem". Y me interesaría usarlos. Gracias por leer esto. |
#2
|
||||
|
||||
Esta es la definición de una de las funciones que citas:
Código:
{$EXTERNALSYM mciSendString} function mciSendString(lpstrCommand, lpstrReturnString: PChar; uReturnLength: UINT; hWndCallback: HWND): MCIERROR; stdcall; Código:
function mciSendCommand(mciId: MCIDEVICEID; uMessage: UINT; dwParam1, dwParam2: DWORD): MCIERROR; stdcall; Código:
{ general error return values } const {$EXTERNALSYM MMSYSERR_NOERROR} MMSYSERR_NOERROR = 0; { no error } {$EXTERNALSYM MMSYSERR_ERROR} MMSYSERR_ERROR = MMSYSERR_BASE + 1; { unspecified error } {$EXTERNALSYM MMSYSERR_BADDEVICEID} MMSYSERR_BADDEVICEID = MMSYSERR_BASE + 2; { device ID out of range } {$EXTERNALSYM MMSYSERR_NOTENABLED} MMSYSERR_NOTENABLED = MMSYSERR_BASE + 3; { driver failed enable } {$EXTERNALSYM MMSYSERR_ALLOCATED} MMSYSERR_ALLOCATED = MMSYSERR_BASE + 4; { device already allocated } {$EXTERNALSYM MMSYSERR_INVALHANDLE} MMSYSERR_INVALHANDLE = MMSYSERR_BASE + 5; { device handle is invalid } {$EXTERNALSYM MMSYSERR_NODRIVER} MMSYSERR_NODRIVER = MMSYSERR_BASE + 6; { no device driver present } {$EXTERNALSYM MMSYSERR_NOMEM} MMSYSERR_NOMEM = MMSYSERR_BASE + 7; { memory allocation error } {$EXTERNALSYM MMSYSERR_NOTSUPPORTED} MMSYSERR_NOTSUPPORTED = MMSYSERR_BASE + 8; { function isn't supported } {$EXTERNALSYM MMSYSERR_BADERRNUM} MMSYSERR_BADERRNUM = MMSYSERR_BASE + 9; { error value out of range } {$EXTERNALSYM MMSYSERR_INVALFLAG} MMSYSERR_INVALFLAG = MMSYSERR_BASE + 10; { invalid flag passed } {$EXTERNALSYM MMSYSERR_INVALPARAM} MMSYSERR_INVALPARAM = MMSYSERR_BASE + 11; { invalid parameter passed } {$EXTERNALSYM MMSYSERR_HANDLEBUSY} MMSYSERR_HANDLEBUSY = MMSYSERR_BASE + 12; { handle being used simultaneously on another thread (eg callback) } {$EXTERNALSYM MMSYSERR_INVALIDALIAS} MMSYSERR_INVALIDALIAS = MMSYSERR_BASE + 13; { specified alias not found } {$EXTERNALSYM MMSYSERR_BADDB} MMSYSERR_BADDB = MMSYSERR_BASE + 14; { bad registry database } {$EXTERNALSYM MMSYSERR_KEYNOTFOUND} MMSYSERR_KEYNOTFOUND = MMSYSERR_BASE + 15; { registry key not found } {$EXTERNALSYM MMSYSERR_READERROR} MMSYSERR_READERROR = MMSYSERR_BASE + 16; { registry read error } {$EXTERNALSYM MMSYSERR_WRITEERROR} MMSYSERR_WRITEERROR = MMSYSERR_BASE + 17; { registry write error } {$EXTERNALSYM MMSYSERR_DELETEERROR} MMSYSERR_DELETEERROR = MMSYSERR_BASE + 18; { registry delete error } {$EXTERNALSYM MMSYSERR_VALNOTFOUND} MMSYSERR_VALNOTFOUND = MMSYSERR_BASE + 19; { registry value not found } {$EXTERNALSYM MMSYSERR_NODRIVERCB} MMSYSERR_NODRIVERCB = MMSYSERR_BASE + 20; { driver does not call DriverCallback } {$EXTERNALSYM MMSYSERR_LASTERROR} MMSYSERR_LASTERROR = MMSYSERR_BASE + 20; { last error in range } Un Saludo. |
#3
|
|||
|
|||
Pues no me ha servido de mucho, no domino los mensajes ni las funciones API en general.
Pero he encontrado un buen ejemplo para reproducir mp3, y he descubierto que la calidad es muy mala. Lo que voy a hacer es usar alguna libreria shareware para experimentar, ademas se pueden usar los plugins de winamp 2. Hasta otra |
|
|
|