Monitorowanie napędu CD/DVD/itp

0

Musze w programie zaimplementować metodę, która będzie monitorowała, czy w napędach CD/DVD/itp znajduje się płyta. Może istnieje jakiś komunikat systemu, który powiadamia o otwarci i zamknięciu szufladki (choć mi takiego czegoś się nie udało znaleŹć). A może są jakiś bardziej wyrafinowane sposoby? Proszę, pomóżcie [!!!]

0

dla Windows jest moduł MMSystem ( Win32 multimedia API Interface Unit )

na przykład:

MCISendString('Set cdaudio door open wait',nil,0,Handle);

wysunie tackę cd-rom'u

poszukaj w tym module to być może znajdziesz pobieranie stanu napędu, lecz wątpię by było na to jakieś zdarzenie, więc szykuj wątek lub Timer'ek =)

0

też kiedyś szukałem, ale bezpłatnego rozwiązania nie znalazłem. chciałem mieć program który zgrywa automatycznie płyty jedna po drugiej bez interakcji z użytkownikiem (tylko wysuwa tackę po zakończeniu zgrywania), napisz jak coś wskórasz. aha, korzystałem z czegoś takiego jak aaxDriveManager, nie działało jednak tak jak chciałem, zresztą dawno to było i nie pamiętam szczegółów.

0

a FindFirstChangeNotification/FindNextChangeNotification? ze zmianą zawartości katalogów i plików radzi sobie bez problemu, więc powinno sobie dać radę i z napędem.

0

Rozwiązałem to w końcu tak, że zmodyfikowałem komponent TCDEvents, dodają listę z informacjami o ostatniej płycie w każdym napędzie i porównując z tymi informacjami, za każdym wywołaniem zdarzenia Timera numer seryjny płyty.
Dzięki za podpowiedzi [!!!]

1 użytkowników online, w tym zalogowanych: 0, gości: 1