Dépannage de l’extension hotstring dans autohotkey

0

J'éprouve des expansions hotstring incohérentes dans ahk. Par exemple, le hotstring suivant

:o:192.::192.168.

travaillé jusqu'à hier, mais après le cycle de démarrage / redémarrage d'aujourd'hui, ce n'est pas le cas.

Les raccourcis fonctionnent toujours, comme celui ci-dessous

OpenClipboardFileWith(app)
{
    ;Run, Notepad.exe
    fname = %Clipboard% ;Open file in Clipboard, if it exists - similar to functionality in DOPUS
    ;MsgBox Before %fname%
    StringSplit, fname, fname, `r`n
    ;MsgBox %fname0%
    if (fname0 > 0) {
        ;convert newline seperated files to space seperated arguments for program
        StringReplace, fname, fname, `r`n, "%A_Space%", All
        fname = "%fname%"
        ;MsgBox parameters are %fname%
    }
    If !FileExist(fname1) {
        ;check for single element first
        fname = 
    }
    Loop %fname0%-1
    {
        element := fname%A_Index%
        ;element = "%element%"
        ;MsgBox %element%
        ;params = %params% %element%
        If !FileExist(element) {
            ;MsgBox Resetting fname as %element% doesn't exist.
            fname = 
        }
    }
    ;MsgBox After %app% %fname%
    Run, %app% %fname%
  return
}
#y::OpenClipboardFileWith(Share "\Programs\@Text\Editors\Notepad2\notepad2.exe") ;;Notepad (open file on clipboard)
#n:: Run, notepad.exe

Donc, je ne sais pas quel est le problème. Cela se produit de temps en temps et j'avais déjà rencontré ce problème sur un autre ordinateur. Je suppose que cela a à voir avec les crochets du clavier et de la souris. J'ai vérifié la liste des scripts (icône du clic droit ahk> vew script info) et tout allait bien, les points d'ancrage sont installés.

Comment puis-je résoudre ce problème?

J'ai testé s'il fonctionnait en tant qu'administrateur.

MsgBox , , , %A_IsAdmin%

et il est écrit 1. J'ai même essayé ces programmes http://www.tranglos.com/activehotkeys/ et http://hkcmdr.anymania.com/index.html, mais aucune aide de ceux-ci. Il me montre les touches de raccourci habituelles comme étant enregistrées, mais rien sur les cordes à chaîne. D'autres outils peuvent-ils détecter et résoudre ces problèmes? La question https://stackoverflow.com/questions/1465135/detecting-keyboard-hooks n'est d'aucune aide.

Quelqu'un d'autre voit des problèmes similaires?

Un autre problème connexe pourrait être que, le glisser-déposer cesse de fonctionner de manière aléatoire et que je dois utiliser le bouton gauche de la souris et le maintenir enfoncé, appuyer ESCplusieurs fois pour le faire fonctionner (mais pas systématiquement).

Je suppose que parmi les divers programmes installés sur le PC, l’un est à l’origine de ce problème.

Vijay
la source

Réponses:

1

Votre problème avec "glisser-déposer" est une "fonctionnalité" de Windows 7 moins connue. Le moyen de restaurer le glisser-déposer jusqu'à ce que Redmond ait trouvé le temps de le corriger, est d'appuyer sur Ctrl+ Alt+ Del, puis de nouveau sur lorsque la page de sélection bleue s'affiche ESC. Je sais que ça a l'air stupide, mais ça marche à chaque fois.

Pour une raison ou une autre votre:

:o:192.::192.168.

toujours besoin d'un espace, alors je l'ai changé pour:

:*:192.::192.168.

Ce qui fonctionne parfaitement.

Robert Ilbrink
la source
merci pour le tuyau sur le bouton Esc. Mais j'ai toujours des problèmes avec l'expansion. L'espace requis ne me dérange pas. Un autre exemple qui ne fonctionnera pas est:c?:@sig::Regards,{Enter 2}Name ;;
Vijay
Pour une raison ou une autre, votre expansion n’a pas fonctionné au départ. Une fois que j'ai enlevé le c? et @ cela a fonctionné et après avoir placé le c? et @ back il a continué à travailler. Je suggère de le jeter et de le taper (pas le copier) à nouveau. Pas certain de pourquoi. Au fait, pourquoi avez-vous ajouté le?, Cela signifie qu'il sera étendu si vous écrivez une lettre à [email protected] à ABCRegards, Namenals.com ...
Robert Ilbrink, le
bon point. Je ne pense pas à cela dans le contexte du courrier électronique, je suppose. OK je vais essayer. Testé ::test::Woohoocela n'a pas fonctionné. dans un nouveau script vierge. Utiliser AHK 1.1.9.2
Vijay
Cela est étrange. J'utilise le 1.1.09.01. AutoHotKey continue-t-il à fonctionner (icône verte H) ou se ferme-t-il immédiatement après son démarrage?
Robert Ilbrink
1
Puisque vous semblez avoir un comportement étrange, avez-vous essayé de réinstaller AutoHotKey?
Robert Ilbrink
0

Il a finalement commencé à fonctionner après la désactivation de l'UAC.

Vijay
la source
Ugh j'ai eu ce problème sur un autre ordinateur à nouveau. UAC désactivé et ça marche, mais je ne sais toujours pas pourquoi c'est arrivé en premier lieu alors que ça fonctionnait avec UAC pendant un moment. Je pense que peut-être une mise à jour a désactivé ceci? Quelqu'un avec plus de perspicacité dans le problème?
Vijay
0

J'avais un problème avec certaines de mes extensions qui ne fonctionnaient pas. Mais le problème était le script lui-même. J'ai inclus un script écrit par quelqu'un d'autre, mais je ne savais pas tout à fait comment cela fonctionnait.

Il y avait une directive comme

#IfWinActive, ahk_class Blah

Il n'y avait pas de fin en blanc

#IfWinActive

Ce que cela voulait dire, c’est que tous les raccourcis clavier et les extensions qui suivent cette directive initiale (qui correspond à la plupart de mes extensions) ne sont appliqués que dans le contexte Blah

Pour résoudre ce problème, j'ai ajouté la directive extra

#IfWinActive

après celui qui l'a commencé. Cela fait que le contexte s'applique à tout.

Un exemple de script de problème serait

;This is for in a Console Window
#IfWinActive, ahk_class ConsoleWindowClass
#a::
; Some short cut here
    return

::ex::Some expand which I expect to happen in all situations (which doesn't)

Pour corriger ce script, vous devez procéder comme suit

;This is for in a Console Window
#IfWinActive, ahk_class ConsoleWindowClass
#a::
; Some short cut here
    return
#IfWinActive

::ex::Some expand which I expect to happen in all situations (which  it now does)

Pour plus d'informations sur son fonctionnement, consultez https://www.autohotkey.com/docs/commands/_IfWinActive.htm.

Matt Vukomanovic
la source