Ceviz Forum

Geri Dön   Ceviz Forum > Programlama > Pascal / Delphi / Delphi.NET

Cevapla
 
LinkBack Seçenekler
Eski 15/03/2008, 02:44   #1 (permalink)
Üye
 
Breaker1999 Adlı Üyenin Profil Grafiği
 
Üyelik Tarihi: 12/2006
Yer: Konya
Mesaj: 2
Ampul Harddisk icon'unu 5 dk.'da bir nasıl değiştirebilirim?

Bilgisayarı yeniden başlatmadan harddiskin simgesini nasıl değiştirebilirim?

Bir Harddiskin boş alanını takip eden program yaptım. Boş alanı Dolu alana oranlayarak boş alanı yüzde olarak gösterecek iconlar yaptım.
Örneğin c:'yi takip ediyorum. c:\Autorun.inf dosyası şöyle:
C:\Autorun.inf
------------
[autorun]
icon=autorun.ico
------------

her 5 dk.'da bir yeni bir autorun.ico oluşturup eskisi ile değiştiriyorum. Fakat f5'e bastığım halde C: harddiskinin simgesi değişmiyor. Sadece bilgisayarı yeniden başlatınca son simge görünüyor. Yani bilgisayarı yeniden başlatmadan harddiskin simgesini nasıl değiştirebilirim? Harddiskin simgesinin değiştirildiğini Windows'a bildiren bir API vb. fonksiyon var mı? Şimdiden teşekkürler.
Breaker1999 hatta değil   Alıntı Yaparak Yanıtla
Eski 15/03/2008, 20:23   #2 (permalink)
Kodlarım, Canlarım...
 
cemaliozan Adlı Üyenin Profil Grafiği
 
Üyelik Tarihi: 05/2005
Yer: » Delphi Bölümü «
Mesaj: 1,677
Varsayılan

Bunu
uses
ShlObj;

procedure RefreshDesktop1;
begin
SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, nil, nil);
end;


procedure RefreshDesktop2;
var
hDesktop: HWND;
begin
hDesktop := FindWindowEx(FindWindowEx(FindWindow('Progman', 'Program Manager'), 0,
'SHELLDLL_DefView', ''), 0, 'SysListView32', '');
PostMessage(hDesktop, WM_KEYDOWN, VK_F5, 0);
PostMessage(hDesktop, WM_KEYUP, VK_F5, 1 shl 31);
end;

yada bunu

procedure RefreshDesktop;
var
c1: cardinal;
begin
c1 := FindWindowEx(FindWindowEx(FindWindow('Progman', 'Program Manager'), 0,
'SHELLDLL_DefView', ''), 0, 'SysListView32', '');
PostMessage(c1, WM_KEYDOWN, VK_F5, 0);
PostMessage(c1, WM_KEYUP, VK_F5, 1 shl 31);
end;

dene.
__________________
Haberbox | Tek Sevgi | Genel Seçimler | Magice Book | Yerel Seçimler
Yaşamaya Değer Bir Hayattan, Sevmeye Değer Bir Aşktan, Dostluğa Değer Bir Arkadaşlıktan Asla Vazgeçmeyin...
cemaliozan hatta değil   Alıntı Yaparak Yanıtla
Eski 16/03/2008, 01:15   #3 (permalink)
Üye
 
Breaker1999 Adlı Üyenin Profil Grafiği
 
Üyelik Tarihi: 12/2006
Yer: Konya
Mesaj: 2
Varsayılan

Alıntı:
cemaliozan, mesajından alıntı: Mesajı Gör
Bunu
uses
ShlObj;

procedure RefreshDesktop1;
begin
SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, nil, nil);
end;


procedure RefreshDesktop2;
var
hDesktop: HWND;
begin
hDesktop := FindWindowEx(FindWindowEx(FindWindow('Progman', 'Program Manager'), 0,
'SHELLDLL_DefView', ''), 0, 'SysListView32', '');
PostMessage(hDesktop, WM_KEYDOWN, VK_F5, 0);
PostMessage(hDesktop, WM_KEYUP, VK_F5, 1 shl 31);
end;

yada bunu

procedure RefreshDesktop;
var
c1: cardinal;
begin
c1 := FindWindowEx(FindWindowEx(FindWindow('Progman', 'Program Manager'), 0,
'SHELLDLL_DefView', ''), 0, 'SysListView32', '');
PostMessage(c1, WM_KEYDOWN, VK_F5, 0);
PostMessage(c1, WM_KEYUP, VK_F5, 1 shl 31);
end;

dene.
Bir çözüm önerdiğin için teşekkürler. Fakat maalesef disk simgesi için çalışmadı. Üç procedure'ü de denedim. Windows Gezgininde Bilgisayarım'da C:'nin yeni simgesine değiştirmedi(Not: autorun.ico yeniden hazırlandı fakat son güncellenmiş autorun.ico diskin simgesi olmadı.). Bence çünkü bu procedureler Masaüstünü yenilemek için. Bu fonksiyonlar disk girişindeki Autorun.inf dosyalarını yeniden değerlendir emri vermiyor.
Sorunumu biraz daha açıklayayım.

Resimde görüldüğü gibi C:'nin %87'si kullanıyor. Bazı dosyaları siliyorum. %80'e indiriyorum. %80 yazan yeni bir icon hazırlıyorum. C:\autorun.ico olarak kaydediyorum. Autorun.inf doğru şekilde hazır durumda zaten. Fakat yenilememe rağmen sayfayı C:'nin simgesi hala %87 kalıyor. Sadece windows'u yeniden başlatınca doğru değer olan %80 simgesi görünüyor.
Windows'u yeniden başlatmadan disk simgesini değiştirmek için başka fikri olan?
Eklenmiş Grafikler
File Type: jpg diskdurumu.JPG (6.2 KB, 11 views)
Breaker1999 hatta değil   Alıntı Yaparak Yanıtla
Cevapla

Bookmarks

Seçenekler

Mesaj Yazma Hakları
Yeni mesajgöndermezsiniz
Cevap yazamazsınız
Dosya ekleyemezsiniz
Mesajınızı düzenleyemezsiniz

BB code is Açık
[IMG] kodu Açık
HTML kodu Kapalı
Trackbacks are Açık
Pingbacks are Açık
Refbacks are Açık

Benzer Konular
Konu Konuyu açana göre Forum Cevap En Son Mesaj
İstediğim exe nin icone sini nasıl değiştirebilirim?? YARDIM ACİL? Dr.Kill Pascal / Delphi / Delphi.NET 3 20/07/2005 16:13
Grafikteki çizgilerin rengini nasıl değiştirebilirim.? metalurgy Photoshop / Corel / PSP 12 22/05/2005 13:46
Windows XP Administrator Şifresini nasıl değiştirebilirim? sımone Windows 1 14/02/2005 14:15
Harddisk sulenyum Donanım 14 05/11/2004 11:07
açılıştaki winxp logosunu nasıl değiştirebilirim ? eslem1 Windows 6 16/10/2004 10:45


Forum saati Türkiye saatine göredir. GMT +3. Şu anda saat 18:22.

Reklamlar & Desteklenenler
Hassas Valf | Hassas Kaplama | Antalyamız | Gazete | Ticari Bilişim | Hakan Müştak | Rüya Tabirleri | Kadın | Hastalıklar | Cepte msn ve e-posta | Webmaster | Antalya Aupair | Turkish Property Antalya | Forum | Chat | Perde | Adsl | Araba | bolindir.com | guncelle.com | livescore | Web Tasarım | evden eve nakliyat | forum | evden eve | sohbet | Resimcim| Kalifiye İnsan Kaynakları | Web Tasarım | Oyun | Yusuf KOÇ | Akın Yorulmaz | şiir | UFO | Web Tasarım | Oyunlar | Canlı Tv |


Forum Yazılımı: vBulletin Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0
Copyright ©2001 - 2008, Ceviz.net