ControlSend funktioniert nicht

  • Hallo zusammen,

    anbei mal mein ein Codeausschnitt:

    [autoit]

    If $msg = $varSignierenButton Then
    Run($varTempDirFum & "\signcode.exe -spc FuMCodeSign_until_02122012.spc -v fum.pvk -a sha1 " & GUICtrlRead($varDragAndDropField), $varTempDirFum, @SW_SHOW)
    WinActivate("Kennwort für privaten Schlüssel eingeben", Default)
    Sleep(200)
    ControlSend("Kennwort für privaten Schlüssel eingeben", Default, 501, "ganzargstrenggeheim")
    Sleep(1000)
    ControlClick("Kennwort für privaten Schlüssel eingeben", Default, 1)
    EndIf

    [/autoit]

    Wenn ich in meiner GUI auf den "signieren" Button klicke, komme ich in die IF Schleife. Die Anwendung Signcode.exe verlangt aber ein Kennwort - hier im Beispiel "ganzargstrenggeheim".

    Zur Eingabe wird von Signcode.exe eine kleine GUI geöffnet. Anbei mal noch die Info aus AU3 Windows Info.

    Das Problem ist, dass das Kennwort nicht eingetragen wird und "vermutlich die OK Taste (ID1) nicht gedrückt wird.

    Spoiler anzeigen
  • Erstmal vorab:
    Es gibt keine IF - Schleife nur eine IF - Bedingung ;)
    Jedem erfahrenen Programmierer drehts den Magen um bei "IF - Schleife" :D

    Probierts mal mit:

    [autoit]

    ControlSetText("Kennwort für privaten Schlüssel eingeben","",501,"test")

    [/autoit]