2012-02-03 6 views
6

bir CD/DVD gibi bir monte hacmini belirleyin CD/DVD rom?bir şekilde hacmini tanımlamak için CommandLine veya C/C++ kullanarak, herhangi bir yolu var mı o/Ciltler/mountname</p> <p>altında görünür osx

Şu anki en iyi fikrim böyle bir şey.

df | grep mountname 

/dev/diskNsM yolu

ve yol monte cihaz brülör ise o zaman

drutil | grep /dev/diskN 

görmesini sağlamak için.

Bu, ancak CD/DVD'nin brülör olmadığı durumda endişeleniyorum. Hala drutil çıktısında görünecek mi? Mac'ler bile brülörsüz bir CD/DVD sürücüsü ile mi geliyor?

Ayrıca bunu yapmak için C, C++ veya nesnel C kullanmayı tercih ederim.

hacim salt okunur olup olmadığını zaten belirlemek için

const char *tmp = '/Volumes/mysterydrive'; 
statfs(tmp, &m); 
if(m.f_flags & MNT_RDONLY) 
{ 
    read_only = true; 
} 

kullanmak ama bu veya ilgili herhangi çağrı CD/DVD ve bir salt okunur birimdeyse ayırt eğer ben göremiyorum.

Sadece OSX 10.5 ve daha yeni sürümler için çalışmak gerekir.

Herhangi bir fikrin var mı?

DÜZENLEME:

DVD

Optical Drive Type:  CD-ROM, CD-R, CD-RW, DVD-ROM, DVD-R, DVD-R DL, DVD-RW, DVD+R, DVD+R DL, DVD+RW 
    Optical Media Type:  DVD-R 
    Optical Media Erasable: No 

/

diskutil info /Volumes/mysterydrive 
aşağıdaki çıktıyı eğer onun bir CD var Kullanılması Ve bu tüm ihtiyacım var!

Programlı olarak daha sonra yapmak için IOKit'i kullanarak bakacağım, ancak bunu yapmanın en hızlı yolu bu gibi görünüyor.

cevap

2

Sen Optik Sürücü ve oldukça güvenilirdir yüzden sadece CD/DVD'ler için olsun Optik Medya girişlere bakın Özellikle

diskutil info /Volume/foo 

en ayrıntılı bilgi alabilirsiniz. o C kodunda çoğaltmak için zor olacak, böylece

Maalesef diskutil tüm bu bilgileri almak için kullandığı çerçeveler, özeldir.

Ben diğer seçenekleri ineceğinize yoktu, ama sen statfs disk adını alabilir çünkü cihazı kontrol etmek IOKit kullanmak mümkün teoride olabilir ve eğer siz IOCDMedia veya IODVDMedia sınıfı göreceksiniz CD/DVD sürücüsü (ör.Eğer IO*Media sınıf için bakarsak BSD Name mülkiyet disk6 gibi disk adı)

2

Elma Geliştirici Merkezi CD-ROM özelliklerine erişmek için IOKit rutinleri kullanarak gösterir CDROMSample adlı bir örnek kod projesi var sahiptir. Bu, DVD'leri de ele almaya başlayabilir.

İlgili konular