Flash bellek'in takıldığını nasıl anlarım? -Çözüldü-

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
kahraman1285
Üye
Mesajlar: 360
Kayıt: 10 Nis 2006 09:07

Flash bellek'in takıldığını nasıl anlarım? -Çözüldü-

Mesaj gönderen kahraman1285 »

Bilgisayara herhengi bir flash bellek takıldığını(flash belleğin seri numarası önemli değil) nasıl anlarım?

Flash bellek içindeki excel dosyasında veri alıcam.aslında bunu bi timer içine flash bellek sürücüsünün adını yazarak belli aralıklarlada aratıp yapabileceğim aklıma geldi ama programı sürekli bununla meşgul etmek istemiyorum.

Bu konuda flash belleğin takıldığını yani windowsa yeni donanım eklendiğini eklenir eklenmez nasıl anlayabilirim?
En son kahraman1285 tarafından 04 Kas 2006 11:50 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Kullanıcı avatarı
sadettinpolat
Moderator
Mesajlar: 2131
Kayıt: 07 Ara 2003 02:51
Konum: Ankara
İletişim:

Mesaj gönderen sadettinpolat »

"Sevmek, ne zaman vazgececegini bilmektir." dedi, bana.

---
http://sadettinpolat.blogspot.com/
kahraman1285
Üye
Mesajlar: 360
Kayıt: 10 Nis 2006 09:07

Mesaj gönderen kahraman1285 »

Verdiğiniz cevap çok güzel çalışıyor teşekkür ederim.Bide sürücü adını öğrenmek istiyorum.

viewtopic.php?t=4972&highlight=getdrivelist

Yukarıdaki makale sayesinde Bilgisayardaki tüm sürücülerin listesini alabiliyorum.

Hangisinin flash bellek sürücüsü olduğunu nasıl anlayabilirim.Bi fikriniz var mı acaba?
kahraman1285
Üye
Mesajlar: 360
Kayıt: 10 Nis 2006 09:07

Mesaj gönderen kahraman1285 »

Nasıl yapacağımı çözdüm ilgilenenler için hazır kod.

Kod: Tümünü seç

procedure TForm1.Button3Click(Sender: TObject);

var
  Drive: Char;
  DriveLetter: String[4];
  Flash_Bellek:string;
begin

  for Drive := 'A' to 'Z' do
  begin
   DriveLetter := Drive + ':\';
   case GetDriveType(PChar(Drive + ':\')) of
    DRIVE_REMOVABLE:
    begin
     if drive='A' then
     Memo1.Lines.Add(DriveLetter + ' Floppy Drive')
     else begin
     Memo1.Lines.Add(DriveLetter + ' Flash Bellek');
     Flash_Bellek:=drive;
     {if drive='B' then
     Memo1.Lines.Add(DriveLetter + ' Floppy Drive') else Memo1.Lines.Add(DriveLetter + ' Flash Bellek');}
     end;
    end;
    DRIVE_FIXED:
     Memo1.Lines.Add(DriveLetter + ' Fixed Drive Harddisk') ;
    DRIVE_REMOTE:
     Memo1.Lines.Add(DriveLetter + ' Network Drive') ;
    DRIVE_CDROM:
     Memo1.Lines.Add(DriveLetter + ' CD-ROM Drive') ;
    DRIVE_RAMDISK:
     Memo1.Lines.Add(DriveLetter + ' Ram Disk bu nedir Bilmiyom') ;
    end;
  end;
end;
daha fazla ayrıntı için windows sdk içinde GetDriveType ' e bakılablir.
Kullanıcı avatarı
sadettinpolat
Moderator
Mesajlar: 2131
Kayıt: 07 Ara 2003 02:51
Konum: Ankara
İletişim:

Mesaj gönderen sadettinpolat »

benim gonderdigim ornekte

fDeviceName := String(dbi.dbcc_name) gibi bir satir takilan surucunun adini vermesi gerekiyor ama hatali bir islem var orda .

dbi.dbcc_name := dbi.dbcc_name;
fDeviceName := String(dbi.dbcc_name);

buralar biraz kurcalanırsa surucunun harfine de ulasilabilir belki.
"Sevmek, ne zaman vazgececegini bilmektir." dedi, bana.

---
http://sadettinpolat.blogspot.com/
Cevapla