Ver Mensaje Individual
  #5  
Antiguo 07-05-2007
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Reputación: 22
cHackAll Va por buen camino
Cool Solución

Tengo entendido que no solo tendrás problemas pues no todos las lectoras leen la UPC, si no que no todos los CDs de audio tienen dicho código; te aconsejo usar "Identity", que (si no me equivovo) retorna solo la serie del disco pero en teoría es unica.

Lo que necesitas para UPC es:

Código Delphi [-]
uses MMSystem;
 
var
 Buffer: array [0..31] of Char;
 Open: TMCI_Open_Parms = (lpstrDeviceType: 'CDAudio');
 Info: TMCI_Info_Parms = (lpstrReturn: @Buffer; dwRetSize: SizeOf(Buffer));
 
function GetUPC(Drive: Char): string;
begin
 Result := '';
 Open.lpstrElementName := PChar(string(Drive + ':'));
 if mciSendCommand(0, MCI_OPEN, MCI_OPEN_TYPE or MCI_OPEN_ELEMENT, Longint(@Open)) <> 0 then Exit;
 mciSendCommand(Open.wDeviceID, MCI_INFO, MCI_INFO_MEDIA_UPC, Longint(@Info));
 mciSendCommand(Open.wDeviceID, MCI_CLOSE, MCI_OPEN_TYPE or MCI_OPEN_ELEMENT, Longint(@Open));
 Result := Buffer;
end;

Por si te sirva te dejo http://msdn2.microsoft.com/en-us/library/ms712580.aspx

PD: No se si se puede con cadenas MCI, pero si te gusta revisa http://msdn2.microsoft.com/en-us/library/ms712587.aspx

Suerte!
Responder Con Cita