Windows Uyarısını Kapatma / Bütün Dosyaları Seçme ve Silme / Dosya Silememe Sorunu

Merhabalar,

Bildiğiniz üzere Temp klasöründe gereksiz dosyalar bulunuyor.Bu dosyalar sistemi yavaşlatıyor.Ben,kullanıcı eli ile temizlemeden program vasıtasıyla temizlemeyi istiyorum.Ancak bazen şu hata çıkıyor : "Installerbilmemkaç.temp Sistem üzerinde açık olduğu için bu işlem gerçekleştirilemiyor."1. sorum,bunu nasıl çözeceğim.2. sorum ise bu tür sorunları program nasıl çözecek? En azından iptal tuşuna basmasını nasıl sağlayabilirim? 3. sorum ise Temp klasöründe bulunan tüm dosyaları nasıl seçerim ve silerim?

Şimdiden teşekkürler…
(os modülünü kullanmaktayım…)

Merhaba.

Şu mesaj bu dosyaların gereksiz olmadığı anlamına geliyor:


Yükseltilen hatayı yakalayabilir.

1 Beğeni

Şu mesaj bu dosyaların gereksiz olmadığı anlamına geliyor:

Ama niye Temp dosyasının içinde?

Yükseltilen hatayı yakalayabilir.

Bunu çözmek için birkaç satır koda ihtiyacım var

“Temp”, temporary’nin kısaltımı olup “geçici” anlamına geldiği için olabilir.

Bence de.

Bence de.

Bu bence size göre bir cevap değil.Yani anlamıyorum,sizden yardım istiyorum ve siz şunu yazıyorsunuz: “Bence de.”

Sizden kod istediğimi anlıyorsunuz neden kod ile sorumu cevaplamıyorsunuz?

Ben de yardım etmeye çalışıyorum.

Nasıl bir kod istiyorsunuz? Siz o bahsettiğiniz dosyaları hiç kod ile silmeyi denediniz mi? Bence denemediniz. Deneseydiniz bunu sormazdınız:

Eğer denemiş olsaydınız bir hata alacaktınız. O hatayı yakalayacak kadar bilgiye sahipsinizdir diye tahmin ediyorum, tabii uğraştığınız halde yapamazsanız yardım ederim ama hiçbir şey denemeden benden kod istemenizi doğru bulmuyorum.

Gerekli dosyalar da bulunuyor.

Dosyalarin varliginin sistemi yavaslattigi bir mantik/olaylar zinciri kuramiyorum.

Dosyanin kapanmasini saglayarak. Kullanan programa bir sekilde kapatmasini soyleyebilirsen soyleyerek; yoksa beklemekten veya programi oldurmekten baska care yok.

Guclukle.

Python’da “iptal tusu” mevhumu yok. Senin programinda varsa programini paylasman lazim.

Python’da secme mevhumu yok. Silmek icin os modulu dogru secim.

2 Beğeni

Gerekli dosyalar da bulunuyor.

Peki neden klasör temizlendiğinde gözle görülür bir fark oluyor?
Sonuçta ne bileyim Opera hata verir,bir debug dosyası oluşturur,onu bir internet sayfasına gönderir,kapanır.Ardından gönderdiği internet sitesi bu tür debug dosyasından çok fazla alıyorsa onu engellemeyi dener.

Dosyalarin varliginin sistemi yavaslattigi bir mantik/olaylar zinciri kuramiyorum.

Harddisk’im -bu arada SSD’m yok- bir dosya araması yaparken burayıda okuyor,oyun oynarken okuyor,ekran yansıtması yaparken okuyor.Beniim bildiğim bu.Okumaması gerçekten hız sağlıyor.İnternetten bakabilirsiniz.

Dosyanin kapanmasini saglayarak. Kullanan programa bir sekilde kapatmasini soyleyebilirsen soyleyerek; yoksa beklemekten veya programi oldurmekten baska care yok.

Sorunumda zaten bu sorunu kapatmak.Sizden kod istemiştim :confused:

Python’da “iptal tusu” mevhumu yok. Senin programinda varsa programini paylasman lazim.

Ben uyarıdaki hatayı iptal tuşuna basmayı söylemiştim.Yanlış anlamış olabilirim

Python’da secme mevhumu yok. Silmek icin os modulu dogru secim.

En azından program “Control + A” yaptıktan sonra “Delete” tuşuna basamaz mı?

Temizlemekten kasit nedir? Neyde gozle gorulur fark oluyor?

Hard disklerin dosya mevhumlari yok.

Bir dosya aramasi burayi da ariyorsa, bu, program katmanindadir.

Ayni sekilde, oyunun boyle programlanmis olmasi lazim. Gelistiricilerine hata olarak iletilebilir.

Ekran yansitmasi nedir? Ve de dosya sistemiyle alakasi?

Nereden? Ben boyle seyleri bakmaktan ziyade ölçen biri oldugum icin nereden bakacagimi bilmiyorum.

Hard disk surucusu ve WIN32 API tuketen programlar yazdigim icin sorunun cekirdek veya sistem cagrisi seviyesinde olmadigini soyleyebilirim ama.

Anlatamadim: programa gore degisiyor. Ornegin LibreOffice Writer’a dokuman dosyasini kapatmasini soylemek icin File → Close diyoruz. Diger dosyalari kapatamiyor. Diger programlarin boyle bir mekanizmasi olmayabiliyor.

Windows’la beraber gelen Explorer programindaki bir uyaridan bahsediyorsaniz bunu belirtmeniz lazim. Uyarinin icerigini de bir sekilde aktarmak yardimci olabilir. (Ekran goruntusu, veya az bilinen bir hareketle diyalog kutusu acikken CTRL+C, buraya Paste)

Yine spesifik bir programa ozgu klavye kisayollarindan bahsediyoruz. Python’un Windows veya Explorer ile hic bir alakasi olmadigi icin buradaki mantik ziplamasi kilometrelerle olculuyor.

Bu sorunun asli “Python ile bir programa (Windows Explorer) nasil tus bastirtabilirim (mesela CTRL+A ve Delete)”, dogru gibisi “Python ile Windows Explorer’a nasil dosya sildirtebilirim”, dogrusu ise “Python’da nasil dosya silebilirim”. (Bu sonuncuyu DuckDuckGo’ya sorduktan sonra “Windows’ta Python’a kullanilmakta olan bir dosyayi nasil sildirtebilirim” sorusu cikar ortaya.)

2 Beğeni

Siz os modülünü kullanmak istiyorum/kullanacağım değil de kullanıyorum diyince gerekli fonksiyonlardan haberdarsınız sandım. Şimdi anladım ki uygulamaların bu işlemleri nasıl yaptığından pek bir haberiniz yok.

Program böyle bir problem ile karşılaşmayacak, Explorer’ın kullanıcıya sağladığı arayüz ile uygulamamızın hiçbir alakalası yok. Biz os.remove fonksiyonunu çağırınca herhangi bir arayüz ortaya çıkmayacak. Eğer bir sıkıntı oluştu ise Python’a hata olarak iletilecek. Bu hatayı da try... except... ile yakalayabilirsiniz.

Yine kafanız Explorer arayüzü ile karışmış. os.listdir modülü belirli bir klasörün içerisindeki bütün dosya ve klasörleri listeliyor. Bu dosyaları tek tek silmeyi denemeniz lazım.

Bir modülü kullanacağınız zaman önce modülü araştırın, o modül ile neler yapabileceğiniz hakkında genel bir fikriniz oluşsun. Dosya silme, okuma-yazma gibi olayları gerçekleştirmek için de hiçbir uygulama Explorer’e muhtaç değil, o sadece kullanıcıya yönelik bir arayüz.

1 Beğeni