USB cihazımı programdan kapatmak!

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
misterapocalypse
Üye
Mesajlar: 36
Kayıt: 03 Tem 2007 06:27
Konum: Muğla-Dalaman
İletişim:

USB cihazımı programdan kapatmak!

Mesaj gönderen misterapocalypse »

Arkadaşlar yardıma ihtiyacım var! :roll:

Bir programım var ve program çalıştığında USB cihazları listbox a listeliyor. ismini gördüğüm cihazı mesela 3 dakika sonra otomatik kapanmasını istiyorum. (USB eject)
Yani USB cihazlarını CANLI görüntüleyecek ve seçtiğim usb cihazı belirttiğim süre sonunda çıkarılacak.

Konu ile ilgili google da arama yaptım ama doğru dürüst ücretsiz bir component bulamadım. Arkadaşlardan konuya hakim birsinin örnek koduyla göstermesini istiyeceğim şimdiden teşekkür :roll: istediğim proje şöyle
Resim
Kullanıcı avatarı
barisatalay
Üye
Mesajlar: 398
Kayıt: 02 Nis 2013 05:43
İletişim:

Re: USB cihazımı programdan kapatmak!

Mesaj gönderen barisatalay »

Hazır kod vermeyi pek sevmem ama konuya hakim de değilim :)
Zamanında Muharrem hocamızın bir konuda yine soran bir arkadaş için hazırlamış olduğu örneği ekten inceleyebilirsin.
Dosya ekleri
USB Güvenli kaldır uygulaması.rar
(11.91 KiB) 91 kere indirildi
Kullanıcı avatarı
misterapocalypse
Üye
Mesajlar: 36
Kayıt: 03 Tem 2007 06:27
Konum: Muğla-Dalaman
İletişim:

Re: USB cihazımı programdan kapatmak!

Mesaj gönderen misterapocalypse »

barisatalay kardeşim öncelikle ilgin için teşekkür ederim.

Hata problemini çözemedim. d7 kullanıyorum :roll:

Resim
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4740
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Re: USB cihazımı programdan kapatmak!

Mesaj gönderen mrmarman »

Code bloğundaki ilk ve son satırı UNIT içerisinde bulup araya

Kod: Tümünü seç

TYPE ULONG_PTR = ^ULONG;
satırını ekleyip dener misin.

Kod: Tümünü seç

Procedure USB_Listele(Drives:TStrings; DriveRemovable, DriveFixed, DriveCDRom:Boolean);

type ULONG_PTR = ^ULONG;

const
Resim
Resim ....Resim
Kullanıcı avatarı
misterapocalypse
Üye
Mesajlar: 36
Kayıt: 03 Tem 2007 06:27
Konum: Muğla-Dalaman
İletişim:

Re: USB cihazımı programdan kapatmak!

Mesaj gönderen misterapocalypse »

mrmarman bey e teşekkür dediğini yaptım çalıştı.
usb_islemleri unitine ULONG_PTR = ^ULONG; satırını ekledim.

Kod: Tümünü seç

  Type
    PDEVICE_TYPE    = ^DEVICE_TYPE;
    DEVICE_TYPE     =  DWORD;

    PDEVINST        = ^DEVINST;
    DEVINST         =  DWORD;

    PPNP_VETO_TYPE  = ^PNP_VETO_TYPE;
    PNP_VETO_TYPE   =  DWORD;

    PRETURN_TYPE    = ^RETURN_TYPE;
    RETURN_TYPE     =  DWORD;

    PCONFIGRET      = ^CONFIGRET;
    CONFIGRET       =  RETURN_TYPE;

    PHDEVINFO       = ^HDEVINFO;
    HDEVINFO        =  Pointer;

    PPTSTR          = ^LPWSTR;
    PTSTR           =  LPWSTR;
    ULONG_PTR       = ^ULONG;  // <---- eklediğim satır.
bir hata daha verdi application... vs diye daha sonra onuda
// application....
şeklinde disable yaptım program çalıştı. HERKESE TAVSİYE EDERİM SUPER! :bravo:
Kullanıcı avatarı
G.Arkas
Üye
Mesajlar: 829
Kayıt: 01 Eki 2007 07:16
Konum: İstanbul
İletişim:

Re: USB cihazımı programdan kapatmak!

Mesaj gönderen G.Arkas »

Sanırım

Kod: Tümünü seç

Application.MainFormOnTaskbar := True;
bu hatadan bahsediyorsun. Bu bir hata değil Program Delphi 2007 de yazılmış bu yüzden D7 ve üzeri sürümlerde bu method var. Kaldırmanda bir problem yok. Uygulamana zarar vermez.
Resim
Kullanıcı avatarı
misterapocalypse
Üye
Mesajlar: 36
Kayıt: 03 Tem 2007 06:27
Konum: Muğla-Dalaman
İletişim:

Re: USB cihazımı programdan kapatmak!

Mesaj gönderen misterapocalypse »

G.Arkas arkadaşıma teşekkür! :D
Cevapla