Hallo,

wer KeePass benutzt kennt das Problem eventuell: mit dem NeoVars-Treiber
von NEO funktioniert das super praktische Auto-Type-Feature nicht mehr.
Ich habe für KeePass 2.xx eine Lösung gefunden und vielleicht hilft es ja
dem ein oder anderen, wenn ich diese hier beschreibe.

Die Idee ist eigentlich ganz einfach: bevor AutoType aktiviert wird,
schaltet ein KeePass-Plugin das Layout ab und danach wird es sofort wieder
eingeschaltet. Die Kommunikation mit dem AHK-Skript läuft über
Window-Messages.

Ich habe das Plugin und den modifizierten NeoVars mit angehängt. Es kann
allerdings sein, dass der Treiber nicht mehr ganz aktuell ist. Wer es
neuer will, kann sich AutoHotkey installieren und das Skript vom SVN
herunterladen und ggf. selbst kompilieren. Die custom.ahk muss wie folgt
modifiziert werden (ist im Wiki beschrieben):

--------------------------------- SNIP ---------------------------------
NeoDisableMsgNum := DllCall("RegisterWindowMessage", Str, "NEO_DISABLE")
NeoEnableMsgNum := DllCall("RegisterWindowMessage", Str, "NEO_ENABLE")

OnMessage(NeoDisableMsgNum, "NeoDisable")
OnMessage(NeoEnableMsgNum, "NeoEnable")

NeoDisable(wParam, lParam) {
        if not A_IsSuspended {
                Traytogglesuspend()
        }
}

NeoEnable(wParam, lParam) {
        if A_IsSuspended {
                Traytogglesuspend()
        }
}
--------------------------------- SNAP ---------------------------------

Ansonsten ist die Installation einfach:
1. NeoWorkaround.plgx in das KeePass-Verzeichnis kopieren.
2. neo-keepass.exe als Treiber verwenden.
3. KeePass starten (beim ersten Start sollte KeePass das Plugin
kompilieren).
4. fertig.

Die reine Quellcode-Datei für das Plugin habe ich ebenfalls noch angehängt.

Gruß,
Olaf

Attachment: NeoWorkaroundExt.cs
Description: Binary data

Attachment: NeoWorkaround.plgx
Description: Binary data

Antwort per Email an