Hotkey/Script fuer 'Pause' im Hintergrund Transfer Manager

German support forum

Moderators: Hacker, Stefan2, white

Post Reply
JustAnotherUser
Junior Member
Junior Member
Posts: 4
Joined: 2007-12-07, 10:11 UTC

Hotkey/Script fuer 'Pause' im Hintergrund Transfer Manager

Post by *JustAnotherUser »

Hallo zusammen!

Kennt jemand eine Loesung, den Pause-Button im Hintergrund Transfer Manager per Tastatur-Shortcut zu druecken?
Also ein einfaches toggle reicht. (Man koennte ja auch gezielt auf Start bzw. schalten wollen).

Dieser Dialog wehrt sich ja (als einziger), sich mit der Tastatur bedienen zu lassen (von '+' und '-' abgesehen);

Liesse sich die Breite (oder gar Position?) auch irgendwie steuern? Sobald der Dialog erscheint, dass man ihn initial auf ne definierbare Groesse bringt?

Der Dialog ist doch auch nicht mehr sooooo neu. Dass der immer noch nicht besser bedienbar ist, wundert mich doch stark. Als langjaehriger, begeisterter und registrierter TC-User!

Gruesse! :-)
icfu
Power Member
Power Member
Posts: 6052
Joined: 2003-09-10, 18:33 UTC

Post by *icfu »

http://www.ghisler.ch/wikide/index.php/AutoHotkey

Code: Select all

#IfWinExist, ahk_class DOWNDLGLIST2
Pause::
WinMove,,,,, %A_ScreenWidth%
WinActivate
WinWaitActive
ControlClick, Button3
Return
Wenn ein HTM-Fenster existiert, kannst Du durch Druck auf Pause den Transfer pausieren/fortsetzen. Das Fenster wird automatisch in den Vordergrund gebracht und auf Bildschimbreite gestreckt.

Icfu
This account is for sale
JustAnotherUser
Junior Member
Junior Member
Posts: 4
Joined: 2007-12-07, 10:11 UTC

Post by *JustAnotherUser »

Supi!

Dank' Dir! :-)

Zwei Wuensche haett ich diesbezueglich noch. Ob diese mit AHK realisierbar sind weiss ich nicht. Hab zumindest noch nix dazu gefunden.

1. Kann man das Vergroessern des Fensters auch realisieren, dass es (mehr oder weniger) direkt nach dem Erzeugen des Fensters passiert und nicht "erst" wenn man den Hotkey betaetigt?

Es gaebe ne Moeglichkeit zyklisch abzufragen, aber ich fuerchte sowas bremst stark, oder?

2. Den Titel des Fensters Aendern (das muesste m.W. gehen mit AHK, Grundsaetzlich geht das unter Windows). Grund:
wenn man nun noch den Text des Buttons ausliest (das geht mit AHK), und im Pause-Modus den Titel mit 'Pause...' beginnen laesst, kann man in der Taskbar erkennen, ob der HTM gerade arbeitet oder pausiert ist. Ohne hin und her switchen zu muessen.

Ich hoffe das laesst sich auch dazu aufbohren. Das waere die Luxus-Variante ;-)
icfu
Power Member
Power Member
Posts: 6052
Joined: 2003-09-10, 18:33 UTC

Post by *icfu »

Code: Select all

;*** Konfiguration Start
BTMWin_PauseText := "Pause..."
BTMWin_ShowOnStartup := true
BTMWin_ShowOnPause := true
BTMWin_ShowOnResume := false
;*** Konfiguration Ende

Loop
  {
    WinWait, ahk_class DOWNDLGLIST2
    WinMove,,,,, %A_ScreenWidth%
    If (BTMWin_ShowOnStartup)
      WinActivate
    WinWaitClose
  }

#IfWinExist, ahk_class DOWNDLGLIST2

Pause::
WinGetTitle, BTMWin_Title
ControlGetText, BTMWin_ButtonText, Button3
If (BTMWin_ButtonText="Pause")
  {
    BTMWin_Title := BTMWin_PauseText . BTMWin_Title
    If (BTMWin_ShowOnPause)
      WinActivate
    Else
      WinActivateBottom, ahk_class TTOTAL_CMD
  }
Else
  {
    BTMWin_Title := RegExReplace(BTMWin_Title, BTMWin_PauseText, "")
    If (BTMWin_ShowOnResume)
      WinActivate
    Else
      WinActivateBottom, ahk_class TTOTAL_CMD
  }
ControlClick, Button3
WinSetTitle, % BTMWin_Title
Return

#IfWinExist
Mit den Parametern oben kannst Du den Fenstertext wählen und bestimmen, ob sich der HTM beim Aufstarten, Pausieren sowie Fortsetzen zeigen oder in den Hintergrund rücken soll. Statt true/false geht auch 1/0.

Viel Spaß!

Icfu
This account is for sale
JustAnotherUser
Junior Member
Junior Member
Posts: 4
Joined: 2007-12-07, 10:11 UTC

Post by *JustAnotherUser »

Genial!! :-)

Ich programmier zwar schon seit vielen Jahren (bevorzugt und beruflich in C++), aber AHK is immer noch ziemlich kryptisch. So'n Mischmasch aus C, Pascal und VB.

Herzlichen Dank fuer das Script!
Funzt einwandfrei :-)))
JustAnotherTCUser
Member
Member
Posts: 149
Joined: 2008-10-14, 17:12 UTC

Post by *JustAnotherTCUser »

hallo,

obiges script wurde dankenderweise mal fuer mich geschrieben.

seit der 7.5 beta funktioniert das nicht mehr :-(

verwende ich als fensterkennung '#32770' anstatt wie bisher 'DOWNDLGLIST2', dann funktioniert es zwar wieder, allerdings wirkt sich das auch auf andere dialoge (ja/nein-abfragen und sogar auf's entpack-window) aus.

gibt es eine bessere moeglichkeit dieses (fuer mich fast unentbehrliche) ahk-script wieder nur auf das hintergrundtransfermanager-window anzusetzen?

gruss
icfu
Power Member
Power Member
Posts: 6052
Joined: 2003-09-10, 18:33 UTC

Post by *icfu »

Weil Du es bist:

Code: Select all

;*** Konfiguration Start
BTMWin_PauseText := "Pause..."
BTMWin_ShowOnStartup := true
BTMWin_ShowOnPause := true
BTMWin_ShowOnResume := false
GroupAdd, BTMWin, (Umbenennen/Verschieben:) ahk_class #32770
GroupAdd, BTMWin, (Kopieren:) ahk_class #32770
;*** Konfiguration Ende

SetTitleMatchMode, 2
Loop
  {
    WinWait, ahk_group BTMWin
    WinMove,,,,, %A_ScreenWidth%
    If (BTMWin_ShowOnStartup)
      WinActivate
    WinWaitClose
  }

#IfWinExist, ahk_group BTMWin

Pause::
WinGetTitle, BTMWin_Title
ControlGetText, BTMWin_ButtonText, Button3
If (BTMWin_ButtonText="Pause")
  {
    BTMWin_Title := BTMWin_PauseText . BTMWin_Title
    If (BTMWin_ShowOnPause)
      WinActivate
    Else
      WinActivateBottom, ahk_class TTOTAL_CMD
  }
Else
  {
    BTMWin_Title := RegExReplace(BTMWin_Title, BTMWin_PauseText, "")
    If (BTMWin_ShowOnResume)
      WinActivate
    Else
      WinActivateBottom, ahk_class TTOTAL_CMD
  }
ControlClick, Button3
WinSetTitle, % BTMWin_Title
Return

#IfWinExist
Icfu
This account is for sale
JustAnotherTCUser
Member
Member
Posts: 149
Joined: 2008-10-14, 17:12 UTC

Post by *JustAnotherTCUser »

herzlichen dank! :-)

mein liebstes hilfsmittel fuer den TC! ich hab oefter sich ueberschneidende kopier-/verschiebe aktionen. da ist es ideal den HTM mit nur einer einzigen taste zu pausieren und den vordergrund job schnell laufen lassen zu koennen. ansonsten bremsen sich konkurrierende aktionen gegenseitig grausam aus.

danke und gruss
User avatar
Mikefield
Power Member
Power Member
Posts: 628
Joined: 2006-02-26, 19:13 UTC
Location: Oberursel, Germany HE

Post by *Mikefield »

Mach doch mal einen Vorschlag im beta Forum. Ich denke das würden andere auch gern nutzen.
Vielleicht macht der Christian das dann mit rein ...
mf
Bankster - Word of the Year 2009
Post Reply