Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Stanje vrata od CD-a

[es] :: Pascal / Delphi / Kylix :: Stanje vrata od CD-a

[ Pregleda: 4881 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

IgLo
Igor Lovric
Sremski Karlovci

Član broj: 19524
Poruke: 129
*.neobee.net.

Sajt: www.unicornsoft.net


Profil

icon Stanje vrata od CD-a14.04.2005. u 00:19 - pre 201 meseci
Zna li neko kako da proverim da li su vrata CD-a otvorena ili zatvorena i da li su otkljucana ili zakljucana? Znam kako da ih otvorim/zatvori i otkljucam/zakljucam preko DeviceIOControl, ali ne mogu da nadjem funkciju koja bi mi vratila status.
 
Odgovor na temu

Toyo

Član broj: 45193
Poruke: 227
*.kovnet.co.yu.



+1 Profil

icon Re: Stanje vrata od CD-a14.04.2005. u 00:39 - pre 201 meseci
http://www.koders.com/delphi/f...84EE52AD4A0D5E94A53789F91.aspx
 
Odgovor na temu

IgLo
Igor Lovric
Sremski Karlovci

Član broj: 19524
Poruke: 129
*.neobee.net.

Sajt: www.unicornsoft.net


Profil

icon Re: Stanje vrata od CD-a14.04.2005. u 10:00 - pre 201 meseci
Na ovo sam i ja naleteo trazeci po net-u, ali ovo je namenjeno TurboPascal-u i oslanja se na MSCDEX pod DOS-om, tako da u Delphi-ju nema sanse da ga iskoristim Ipak bi to moralo da se odradi preko API-ja.
 
Odgovor na temu

dogriz
Sombor

Član broj: 29744
Poruke: 259
*.so-sombor.com.

Sajt: dogriz.blogspot.com


+6 Profil

icon Re: Stanje vrata od CD-a14.04.2005. u 11:37 - pre 201 meseci
Ja sam dosta davno nešto radio preko MCI (Media Control Interface) sa CD-om.

Zaboravio sam već, pokušaj u Win32 Programmer's Help da pronađeš detalje. Evo ti i primer koda koji sam koristio:

Otvaranje tray-a:
Code:
mciSendString('Set cdaudio door open', nil, 0, 0);


Zatvaranje tray-a:
Code:
mciSendString('Set cdaudio door closed', nil, 0, 0);


Edit: Zaboravih - u uses dodaj MMSystem
 
Odgovor na temu

IgLo
Igor Lovric
Sremski Karlovci

Član broj: 19524
Poruke: 129
*.neobee.net.

Sajt: www.unicornsoft.net


Profil

icon Re: Stanje vrata od CD-a14.04.2005. u 14:25 - pre 201 meseci
mciSendString je jedna jako lepo zamisljena stvari, ali je u radu sa CD-om prilicno ogranicena i svodi se samo na multimedialne funkcije, znaci mogu se otvoriti i zatvoriti vrata, pustiti audio CD, proveriti broj pesama isl. ali ovo sto sam pitao nazalost ne moze Hvala u svakom slucaju na pokusaju da mi pomognes
 
Odgovor na temu

Peke
Ventis Media Inc.
Novi Sad

Član broj: 24103
Poruke: 66
*.neobee.net.

Sajt: www.mediamonkey.com


Profil

icon Re: Stanje vrata od CD-a14.04.2005. u 22:41 - pre 201 meseci
To Igore radi bez problema preko poziva Win32 na CD, ali mnogo ti je bolje ako pokusas to da odradis preko ASPI (Win9x) ili jos lakse preko SPTI (WinXP, 2003) Imas sve lepo opisano u Windows SDK Help-u. Inace to se radi tako sto proveravas da li je uredjaj On StandBy ili ne jer ti Result onda govori sta se desava sa uredjajem i onda znas sta ti treba.
A ako ne uspes vec ces me naci i kontaktirati
 
Odgovor na temu

B_k_N

Član broj: 54553
Poruke: 23
*.crnagora.net.



Profil

icon Re: Stanje vrata od CD-a15.04.2005. u 23:43 - pre 201 meseci
Imam dva CD uredjaja, kako da odaberem koji da otvorim?
 
Odgovor na temu

IgLo
Igor Lovric
Sremski Karlovci

Član broj: 19524
Poruke: 129
*.neobee.net.

Sajt: www.unicornsoft.net


Profil

icon Re: Stanje vrata od CD-a16.04.2005. u 12:02 - pre 201 meseci
Evo je funkcija koja ti odradjuje posao, samo joj prosledis slovo od drajva:

Code:

Const
  FILE_DEVICE_MASS_STORAGE = $2D;
  METHOD_BUFFERED          = 0;
  FILE_ANY_ACCESS          = 0;
  FILE_READ_ACCESS         = 1;
  FILE_WRITE_ACCESS        = 2;
  IOCTL_STORAGE_EJECT_MEDIA   = (FILE_DEVICE_MASS_STORAGE shl 16) OR
                                (FILE_READ_ACCESS shl 14)         OR
                                ($202 shl 2)                      OR
                                (METHOD_BUFFERED);
  IOCTL_STORAGE_LOAD_MEDIA    = (FILE_DEVICE_MASS_STORAGE shl 16) OR
                                (FILE_READ_ACCESS shl 14)         OR
                                ($203 shl 2)                      OR
                                (METHOD_BUFFERED);

...

Function EjectCD (Drive : Char) : Boolean;

Var
  CD : THandle;
  Ret: DWORD;

begin
  CD := CreateFile (PChar('\\.\' + Drive + ':'), GENERIC_READ, 0, nil, OPEN_EXISTING, 0, 0);
  If CD <> INVALID_HANDLE_VALUE Then
    Begin
      Result := DeviceIoControl(CD, IOCTL_STORAGE_EJECT_MEDIA, nil, 0, nil, 0, Ret, nil);
      CloseHandle(cd);
    End
  Else
    Result := False;
End;


Ako treba da zatvoris vrata IOCTL_STORAGE_EJECT_MEDIA zameni sa IOCTL_STORAGE_LOAD_MEDIA
 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: Stanje vrata od CD-a

[ Pregleda: 4881 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.