2010-05-12 24 views
18

Windows Focus Stealing çözümü için hızlı bir Google arama iki ana sonuç kategorilerini ortaya koymaktadır:Windows'ta odak çalmayı nasıl önleyebilirim?

    (veya ben sadece yukarıda belirtilen kayıt defteri girdisini değiştirir inanıyoruz Tweakuı,), ForegroundLockTimeout kayıt defteri girdisini içeren tamamlanmamış çözümler öneren
  • İnsanlar Bu çok etkili değil. Incessanthordes, Windows kullanıcılarının complaining hakkında it.

İki ortak senaryolarda özellikle sinir bozucu:

  • şey bir tam ekran uygulama tam ekran uygulama en aza indirmek için neden odaklanmıştır arka planda bir iletişim penceresi açılır için bir program tetikler.

  • Siz yazarken, tüm tuş vuruşlarınızı çalarak bir pencere odaklanır. Boşluk, Enter tuşuna basar veya bir klavye kısayolunu tetiklerseniz (Evet için Y gibi), tamamen istenmeyen sonuçlara neden olabilir.

Bu sorunlardan biri veya her ikisi için bu sorunu gidermek için hangi yaratıcı çözümler uygulanabilir?

+0

Topluluk wiki? –

+4

Programlama çözümü, odaklanmayan uygulamaları yazmaktır. Bu, burada sorulan şey gibi görünmüyor. Bence bu Süper Kullanıcı için bir iş. –

+1

Super User bu kesin konuda teslim edilemedi. http://superuser.com/questions/18383/preventing-applications-stealing-focus - tek çözüm yukarıda belirtilen kırık ForegroundLockTimeout/TweakUI cevabı – lunixbochs

cevap

2

Bunun nasıl çözülebileceğine dair bir önerim var, ancak bilgiden yoksun olduğumdan bunu tamamen uygulayamıyorum.

Pencereler arasındaki odağı değiştirmek, büyük olasılıkla shell32 veya user32'de bulunan bir Windows API işlevini çağıran hatalı program tarafından tetiklenmelidir. Adobe Photoshop gibi bazı progamlar, aramaya başladığında kullanıcıyı zorlamak için birden çok kez (en az iki kez) çağrı yapar. Bu fikir, bu API işlevine (mümkün ise) bağlanıp aramanın nereden geldiğini kontrol etmektir. explorer.exe'dan değilse (örn. Alt + Sekme veya görev çubuğunda bir simge tıklatıldığında), çağrı bahsedilen kanca tarafından engellenmelidir.

+0

Diğer programlar odaklanırken (etkin pencereyi görüntülemek için kabuklar gibi) programlara bildirmek için bir API pencereleri kullandığını buldum. Odak olayının gerçekleşmesini tamamen önlemek için kullanılabileceğine inanıyorum. – lunixbochs

İlgili konular