Omorphia Productions Homepage
Project Omorphia Foren-Übersicht  >  Links
Autor Nachricht
<  Ã?ffnen und SchlieÃ?en beliebiger CD-Laufwerke
BenBE
BeitragVerfasst am: Fr Mai 26, 2006 13:01  Antworten mit Zitat
Hauptcoder


Anmeldungsdatum: 21.08.2004
Beiträge: 838
Wohnort: Jahnsdorf (Chemnitz)

Hi, hab im DF zufällig folgenden Thread gefunden:

http://www.delphi-forum.de/viewtopic.php?t=60577
_________________
Das Problem ist die Entscheidung!
Delphi-Code:
  1. Matrix.System.HLT;

Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen AIM-Name Yahoo Messenger MSN Messenger
matze.de
BeitragVerfasst am: Sa Mai 27, 2006 09:42  Antworten mit Zitat
Site Admin


Anmeldungsdatum: 21.08.2004
Beiträge: 266
Wohnort: Bell

Ja is nix besonderes:
Delphi-Code:
  1. uses MMSystem;
  2. //Simple Way:
  3.   mciSendstring('SET CDAUDIO DOOR OPEN WAIT', nil, 0, Self.Handle);
  4. //More complex way:
  5. function OpenCD(Drive: Char): Boolean;
  6. var
  7.   Res: MciError;
  8.   OpenParm: TMCI_Open_Parms;
  9.   Flags: DWORD;
  10.   S: string;
  11.   DeviceID: Word;
  12. begin
  13.   Result := False;
  14.   S := Drive + ':';
  15.   Flags  := MCI_OPEN_TYPE or MCI_OPEN_ELEMENT;
  16.   with OpenParm do
  17.   begin
  18.     dwCallback := 0;
  19.     lpstrDeviceType := 'CDAudio';
  20.     lpstrElementName := PChar(S);  
  21.   end;
  22.   Res := mciSendCommand(0, MCI_OPEN, Flags, Longint(@OpenParm));  
  23.   if Res &lt;&gt; 0 then Exit;
  24.   DeviceID := OpenParm.wDeviceID;  
  25.   try  
  26.     Res := mciSendCommand(DeviceID, MCI_SET, MCI_SET_DOOR_OPEN, 0);
  27.     if Res = 0 then Exit;  
  28.     Result := True;  
  29.   finally
  30.     mciSendCommand(DeviceID, MCI_CLOSE, Flags, Longint(@OpenParm));  
  31.   end;  
  32. end;
  33.  
  34.  
  35. //Close, Schliessen
  36. //Simple Way:
  37.   mciSendstring('SET CDAUDIO DOOR CLOSED WAIT', nil, 0, Self.Handle);
  38.  
  39.  
  40. //More complex way:
  41. function CloseCD(Drive: Char): Boolean;
  42. var
  43.   Res: MciError;
  44.   OpenParm: TMCI_Open_Parms;  
  45.   Flags: DWORD;
  46.   S: string;  
  47.   DeviceID: Word;
  48. begin  
  49.   Result := False;
  50.   S := Drive + ':';  
  51.   Flags  := MCI_OPEN_TYPE or MCI_OPEN_ELEMENT;
  52.   with OpenParm do  
  53.   begin
  54.     dwCallback := 0;  
  55.     lpstrDeviceType := 'CDAudio';
  56.     lpstrElementName := PChar(S);  
  57.   end;
  58.   Res := mciSendCommand(0, MCI_OPEN, Flags, Longint(@OpenParm));  
  59.   if Res &lt;&gt; then Exit;
  60.   DeviceID := OpenParm.wDeviceID;  
  61.   try
  62.     Res := mciSendCommand(DeviceID, MCI_SET, MCI_SET_DOOR_CLOSED, 0);  
  63.     if Res = 0 then Exit;
  64.     Result := True;  
  65.   finally
  66.     mciSendCommand(DeviceID, MCI_CLOSE, Flags, Longint(@OpenParm));
  67.   end;
  68. end;


mfg matze
_________________
Administrator of Project Omorphia
Extended Profile in our Wiki
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
BenBE
BeitragVerfasst am: Sa Mai 27, 2006 13:06  Antworten mit Zitat
Hauptcoder


Anmeldungsdatum: 21.08.2004
Beiträge: 838
Wohnort: Jahnsdorf (Chemnitz)

Ich find den Weg im DF irgendwie übersichttlicher Wink Und das es was besonderes ist, habsch doch auch nirgends behauptet Wink
_________________
Das Problem ist die Entscheidung!
Delphi-Code:
  1. Matrix.System.HLT;

Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen AIM-Name Yahoo Messenger MSN Messenger
Beiträge der letzten Zeit anzeigen:   
Alle Zeiten sind GMT + 1 Stunde

Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Seite 1 von 1
Project Omorphia Foren-Übersicht  >  Links

Neues Thema eröffnen   Neue Antwort erstellen


 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.




Powered by phpBB 2.0.17 and NoseBleed v1.05