So che questo è un argomento piuttosto vecchio, ma non mi è mai piaciuta nemmeno la funzione Areo Peek quando utilizzo Alt+ TABper cambiare attività. Inoltre, non rifiuto completamente Areo Peek - ad esempio, mi piace dare un'occhiata al mio desktop di Windows usando WIN+ Space.
Ho provato molto a disabilitare Areo Peek solo per il cambio di attività Alt+ TAB, ma nulla ha funzionato davvero per me. Conosco tutti i suggerimenti del registro, ad esempio impostando il ritardo Aero Peek in millisecondi su un valore molto alto. Ma questo non funziona, almeno non su tutte le macchine - dalla mia esperienza, è possibile impostare un valore elevato che è ancora limitato a 3000 ms internamente (forse ha funzionato prima del Service Pack per Windows 7).
Quindi ho deciso di andare in un altro modo e provare a risolvere questo problema tramite AutoHotkey . Questo script disabilita Aero Peek solo per Alt+ TAB, e solo per questo - quindi puoi ancora usare le altre funzionalità di Aero Peek.
Lo script è testato con la versione AutoHotkey "AutoHotkey_L 1.1.00.00" con Windows 7 Professional 64 bit con un utente Windows con diritti di amministratore - e fino ad ora ha riferito di funzionare su tutti i sistemi da cui ho ricevuto feedback. Basta installare AutoHotkey e impostare l'esecuzione automatica del file di script all'avvio di Windows. È molto leggero e utilizza solo pochissime risorse e tempo di CPU.
Ho appena pubblicato qui nella speranza che questo possa aiutare chiunque abbia questo problema. Si prega di scaricare lo script da:
http://dl.dropbox.com/u/15020526/Privat/Software/GA/AutoHotkey/DisableAeroPeekForAltTab_1.0.zip
; ==============================================================
;
; AVOID "AERO PEEK" FOR ALT-TAB - AUTOHOTKEY-SCRIPT
;
; Disables Windows 7 Areo Peek feature for ALT-TAB, and only
; for this, so that other Areo Peek features (like WIN+SPACE)
; can still be used.
;
; This script can be run with AutoHotkey (http://www.autohotkey.com/),
; tested against Version AutoHotkey_L 1.1.00.00 with Windows 7
; Professional 64 bit with a Windows user with admin rights.
;
; @author Timo Rumland <timo.rumland${at}the-cr.de>, 19.09.2011
; @version 1.0
;
; --------------------------------------------------------------
;
; LICENSE
;
; This software is distributed under the FreeBSD License.
;
; Copyright (c) 2011 Timo Rumland <timo.rumland${at}the-cr.de>. All rights reserved.
;
; Redistribution and use in source and binary forms, with or without modification, are
; permitted provided that the following conditions are met:
;
; 1. Redistributions of source code must retain the above copyright notice, this list of
; conditions and the following disclaimer.
;
; 2. Redistributions in binary form must reproduce the above copyright notice, this list
; of conditions and the following disclaimer in the documentation and/or other materials
; provided with the distribution.
;
; THIS SOFTWARE IS PROVIDED BY <COPYRIGHT HOLDER> ''AS IS'' AND ANY EXPRESS OR IMPLIED
; WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
; FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> OR
; CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
; SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
; ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
; NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
; ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
;
; The views and conclusions contained in the software and documentation are those of the
; authors and should not be interpreted as representing official policies, either expressed
; or implied, of <copyright holder>.
;
; ==============================================================
#NoEnv
#SingleInstance force
SendMode Input
SetWorkingDir %A_ScriptDir%
SetTitleMatchMode 2 ; 2: A window's title can contain WinTitle anywhere inside it to be a match.
; =======
; Global
; =======
visualEffectsRegistryKey := Object()
visualEffectsRegistryKey.valueType := "REG_DWORD"
visualEffectsRegistryKey.rootKey := "HKEY_CURRENT_USER"
visualEffectsRegistryKey.subKey := "Software\Microsoft\Windows\CurrentVersion\Explorer\VisualEffects"
visualEffectsRegistryKey.valueName := "VisualFXSetting"
visualEffectsRegistryKey.value := 3 ; Manual Visual FX Settings
enableAeroPeekRegistryKey := Object()
enableAeroPeekRegistryKey.valueType := "REG_DWORD"
enableAeroPeekRegistryKey.rootKey := "HKEY_CURRENT_USER"
enableAeroPeekRegistryKey.subKey := "Software\Microsoft\Windows\DWM"
enableAeroPeekRegistryKey.valueName := "EnableAeroPeek"
enableAeroPeekRegistryKey.enabledValue := 1
enableAeroPeekRegistryKey.disabledValue := 0
; ===============
; Initialization
; ===============
; Initially write "VisualFXSetting" registry key to "manual settings"
writeRegistryKey( visualEffectsRegistryKey, visualEffectsRegistryKey.value )
; ========
; Hotkeys
; ========
; -----------------------------------------------------------------------------
; This is the ALT-TAB hotkey that triggers setting Aero Peek to disabled
; right before Windows displays the ALt-TAB-Menu. After releasing the ALT-key,
; Areo Peek will be enabled again.
; -----------------------------------------------------------------------------
~!Tab::
writeRegistryKey( enableAeroPeekRegistryKey, enableAeroPeekRegistryKey.disabledValue )
KeyWait Alt
writeRegistryKey( enableAeroPeekRegistryKey, enableAeroPeekRegistryKey.enabledValue )
return
; ==========
; Functions
; ==========
; ----------------------------------------------------------------------
; Writes the given value to the given registry key. The "registryKey"
; is an object with the properties "valueType", "rootKey", "subKey" and
; "valueName", suitable to the AHK function "RegWrite".
; ----------------------------------------------------------------------
writeRegistryKey( registryKey, value )
{
valueType := registryKey.valueType
rootKey := registryKey.rootKey
subKey := registryKey.subKey
valueName := registryKey.valueName
RegWrite %valueType%, %rootKey%, %subKey%, %valueName%, %value%
}
Puoi distribuirlo liberamente, sotto la licenza di FreeBSD.