CD/DVD Laufwerk ansprechen ?

Für allgemeine Fragen zur Programmierung, welche nicht! direkt mit Lazarus zu tun haben.
Antworten
Andreas
Beiträge: 4
Registriert: Mi 1. Nov 2006, 13:39

CD/DVD Laufwerk ansprechen ?

Beitrag von Andreas »

Hallo erstmal; :D

ich muß zugeben ich bin ein blutiger Anfänger mit Lazarus. Meine Frage ist
wie spreche ich mit Lazarus das CD/DVD-Laufwerk an ?

1. mit assignfile ?
2. mit der Win32API ?
3. mit Ports ?

Die OnlineHilfe durchforste ich gerade. Ich würde mich über Antwort freuen.
Vielen Dank im Voraus, Andreas.

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

Was möchtest du denn damit machen ?
1.Dateien lesen/schreiben sollte klar sein.
2.Audio CD´s auslesen/abspielen : ACS (Audio Component Suite)
3.CD/DVD´s brennen : am besten nimmst du cdrecord und steuerst dies da es ja etliche ansteuerungsarten und dann noch befehle die nicht jeder Brenner versteht gibt. die cdrtools und cdrecord sind eigentlich immer auf dem laufenden und als kommandozeilentools gut anzusprechen.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

Andreas
Beiträge: 4
Registriert: Mi 1. Nov 2006, 13:39

Beitrag von Andreas »

Danke, :-D

Ich möchte es aus einem Lazarusprogramm heraus öffnen und schließen.
1. ist klar
2. ACS hab' ich.
3. cdrtools und cdrecord hab ich mir herunter geladen.

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

Das ist teoretisch im acs möglich jedoch geht das aktuell nur im Linux da ich noch keine WinAPI Funktionen gefunden habe um das zu tun ich habe allerdings auch noch nicht wahnsinnig gesucht. Wenn du ne lösung für Windows hast, immer her damit dann implementier ichs im ACS.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

monta
Lazarusforum e. V.
Beiträge: 2809
Registriert: Sa 9. Sep 2006, 18:05
OS, Lazarus, FPC: Linux (L trunk FPC trunk)
CPU-Target: 64Bit
Wohnort: Dresden
Kontaktdaten:

Beitrag von monta »

Vielleicht hilft dir ja meine funktion, hab ich mal in Delphi verwendet, sollte doch auch so ähnlich in Lazarus funktionieren:

Code: Alles auswählen

procedure CDDOpen (const ADriveChar: Char; Open: Boolean);
begin
  if mciSendString(PChar('open '+ADriveChar+': type cdaudio alias cdlw'),Nil,0,0) = 0 then
  begin
    if Open then
      mciSendString('set cdlw door open wait', Nil, 0, 0)
    else
      mciSendString('set cdlw door closed wait', Nil, 0, 0);
    mciSendString('close cdlw', Nil, 0, 0);
  end;
end;

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

wollts eigentlich ohne mci funktionen machen aber eh es im Moment gar net geht probier ichs mal ...
ist im aktuellen cvs von acs erstmal so implementiert allerdings untested.

danke monta

Wenn du wirklich nur die schubladen steuern willst andreas ist acs allerdings für dich mit Kanonen auf Spatzen geschossen ;)
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

Andreas
Beiträge: 4
Registriert: Mi 1. Nov 2006, 13:39

Beitrag von Andreas »

Monta:
Deine Funktion hat mir sehr geholfen. Danke, musste nur noch die Unit
MMSystem einbinden.

monta
Lazarusforum e. V.
Beiträge: 2809
Registriert: Sa 9. Sep 2006, 18:05
OS, Lazarus, FPC: Linux (L trunk FPC trunk)
CPU-Target: 64Bit
Wohnort: Dresden
Kontaktdaten:

Beitrag von monta »

Freut mich.
Ja, die Unit hat ich vergessen zu erwähnen ;)

Antworten