SD kart okuyucunun adini bulmak.

Başlatan z, 05 Temmuz 2014, 02:12:33

z

Bilgisayardaki depolama aygitlari A,B,C,D,E.... seklinde isimler aliyor ve bu isimler PC nin uzerindeki donanim durumuna gore PC den PCye degisiyor.

Amacim SD kartimin takili oldugu okuyucunun ismini tespit etmek.

Birden fazla SD kart okuyucu varsa ayirt etmek icin SD kartimin volume name'i mevcut.


Bana e^st de diyebilirsiniz.   www.cncdesigner.com

mustafa_cmbz

Bu tarz aletler donanım kimliği tarzı şeyler oluyor  ama bunu algılatmak size sürücü ismini elde etmenize imkan sağlarmı bilmiyorum..aklıma bu geldi

z

#2
Sorumu daha acik sorayim.

Mevcut program HDD de bir dosya uretiyor ardindan ekranda bu bilmem ne dosyasini SD karta kopyalayin diye mesaj veriyorum.

Halbuki  program dosyayi dogrudan SD kartta yazabilir. SD kart okuyucunun adi makineden makineye degistigi icin program icinde HDD'de oldugu gibi C  sabitine benzer sekilde SD kart icin sabit harf kullanamiyorum.

Bana e^st de diyebilirsiniz.   www.cncdesigner.com

Melih1802

Hocam sorunuzu yanlış anladıysam Affola. Doğru anladıysam size uygun yazılım SiSoftware Sandra


Alıntı: Gezginler; http://www.gezginler.net/indir/sisoftware-sandra-lite.html

SiSoftware Sandra Lite 2014 20.28 İndirsan2014-2028-BQR.exe download
SiSoftware Sandra bir sistem analiz & karşılaştırma & rapor aracıdır. SiSoftware Sandra, bilgisayarınızın donanımları ve yazılımları, harici sürücülerinizin de donanım ve yazılımları hakkında detaylı bilgiler sunar.

SiSoftware Sandra ile CPU, chipset, video adapter, ports, printers, sound card, memory, network, Windows internals, AGP, PCI, PCIe, ODBC Connections, USB2, 1394/Firewire vb. bileşenler hakkında bilgiler elde edebilirsiniz. SiSoftware Sandra 32-bit Windows (2000/XP/2003/Vista), 64-bit & x64 Windows (XP/2003/Vista), Windows CE (Pocket PC 2002/2003/2003SE, Smart Phone 2002/2003/2003SE, CE .Net 4.20) sistemlerinde çalışabilmektedir.

Kabil ATICI

#4
Delphi'de "Samples" sekmesi altınnda "DirectoryOutline" diye bir öğe olacak. Bu bilgisayara bağlı diskler ve dosya yolları ile ilgili bilgilere erişim için kullanılıyor.
Bu öğeyi kullanarak diskinize erişebilirsiniz.
olabileceği gibi

http://delphitutorial.info/get-volume-name.html
sitesindeki programı kullanarak A'den Z'ye kadar diskleri bakıp kendi disk adınızı bulmanız ve hangi disk sürücüsünde ise ona kaydetmeniz yeterli olabilir.

function VolumeName(DriveName: Char): string;
var
max, Flags: DWORD;
Buf: array [0..MAX_PATH] of Char;
begin
try
GetVolumeInformation(PChar(DriveName + ':\'), Buf, sizeof(Buf), nil, max, Flags, nil, 0);
Result := StrPas(buf);
except
result := '';
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Edit1.Text := 'C:' + VolumeName('C');
end;


sadece xp üzerinde denedim. diğer işletim sistemlerindeki durumunu bilmiyorum..
ambar7

z

Icinde tasinabilir medya takili olmayan bir donanima volume name ogrenme amaciyla erismeye kalkarsam CD yi' disketi' SD karti takin gibi uyari almamam lazim.

Bu orneklerde bu sorun olusmaz mi?
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

Kabil ATICI

sürücü olmazsa, fonksiyondan boş olarak ('')  dönüyor.
ambar7

z

#7
Tesekkurler denedim ve isimi gorecek gibi duruyor.

Ancak soyle bir sorun var.

SD kartin kendisine verdigim Volume Name PC tarafindan yok sayiliyor.

PC de Volume Name verirsem bu isim SD kartin kendisine değil okuyucuya veriliyor.

Bu sorunu nasil asarim.

Cunku programim benim SD kartimi Volume Name'inden taniyacak. PC deki okuyucunun Volume Name'ini bilemem.

--------------

EDIT

Ben bir seyi yanlis yapiyorum. SD karta PC de volume name verdim. Daha sonra bunu bir baska PC ye taktigimda verdigim volume name o PC de cikti.

Simdi kafam karisik.

SD karti formatlarken (ARM kitim format atiyor) MBR ye volume name veriyor.

Bu SD karti PC'ye taktigimda verdigim volume name gorunmuyor (No name diyor)

PC de bu karta volume name veriyorum. SD karti ARM kitimde okuyorum ve Volume name olarak PC de verdigim Volume Name'i değil formatlarken verdigim Volume name'i goruyorum.

---------------------------------

Derken aklima simdi bir sey geldi. Root da galiba bir volume name daha vardi. Ben onu tanimlamiyordum. Bir de ona isim vermeyi deneyeyim.
Aklimda hayal meyal boyle kalmis.

----------------

Aynen dedigim gibiymis. MBR deki volume name değil Directory Entry deki volume name gosteriliyormus.

MBR deki volume name daha low level durumlar icin galiba.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

engerex

 Disk seri numarasını kullansan?

z

Gerek kalmadi. Volume name ile cozuldu.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com