hallo, wenn man einen fenster titel (WinGetTitle) hat, kann man ja mit "WinSetState" einfluss nehmen.
hann man das auch auf einen Prozes umsetzen?
If ProcessExists ( "test.exe" ) Then
verkleinere das prozesfenster (WinSetState)
EndIf
hallo, wenn man einen fenster titel (WinGetTitle) hat, kann man ja mit "WinSetState" einfluss nehmen.
hann man das auch auf einen Prozes umsetzen?
If ProcessExists ( "test.exe" ) Then
verkleinere das prozesfenster (WinSetState)
EndIf
Hi,
ja mit etwas tricksen geht das.
So long,
Mega
ja, das hört sich gut an
nur wie, da komm ich ja eben nicht drauf.
Hi,
das war also keine Frage, sondern eine Bitte um ein Bsp, richtig?
Hmmh mal schnell was zaubern *simsall.....*
#include<Array.au3>
$a = ProcessGetId('TOTALCMD.EXE')
ConsoleWrite(ProcessGetWindow($a[1]) & @CRLF)
WinSetState(ProcessGetWindow($a[1]), "", @SW_HIDE)
Sleep(2000)
WinSetState(ProcessGetWindow($a[1]), "", @SW_SHOW)
Func ProcessGetWindow($PId)
If IsNumber($PId) = 0 Or ProcessExists(ProcessGetName($PId)) = 0 Then
SetError(1)
Else
Local $WinList = WinList()
Local $i = 1
Local $WindowTitle = ""
While $i <= $WinList[0][0] And $WindowTitle = ""
If WinGetProcess($WinList[$i][0], "") = $PId Then
$WindowTitle = $WinList[$i][0]
Else
$i = $i + 1
EndIf
WEnd
Return $WindowTitle
EndIf
EndFunc ;==>ProcessGetWindow
Func ProcessGetId($Process)
If IsString($Process) = 0 Then
SetError(2)
ElseIf ProcessExists($Process) = 0 Then
SetError(1)
Else
Local $PList = ProcessList($Process)
Local $i
Local $PId[$PList[0][0] + 1]
$PId[0] = $PList[0][0]
[/autoit] [autoit][/autoit] [autoit]For $i = 1 To $PList[0][0]
$PId[$i] = $PList[$i][1]
Next
Return $PId
EndIf
EndFunc ;==>ProcessGetId
Func ProcessGetName($PId)
If IsNumber($PId) = 0 Then
SetError(2)
ElseIf $PId > 9999 Then
SetError(1)
Else
Local $PList = ProcessList()
Local $i = 1
Local $ProcessName = ""
While $i <= $PList[0][0] And $ProcessName = ""
If $PList[$i][1] = $PId Then
$ProcessName = $PList[$i][0]
Else
$i = $i + 1
EndIf
WEnd
Return $ProcessName
EndIf
EndFunc ;==>ProcessGetName
Getestet mit dem Totalcommander
So long,
Mega
LOL das ist coool
getestet mit cmd.exe geht wunderbar *daumen hoch* für meger
:keks:
mal schaun...vll könnt ich das brauchen wenn ich meinen bruder ärgern will xD
der snoozer
hehe danke, wenn ich das auch schon so gut könnte
es geht eigentlich um einen minimizer, der das aktive fenster verkleinert und wieder vergrössert.
habe da auch mal ein simples script erstellt.
HotKeySet("{PGDN}", "_mini")
HotKeySet("{PGUP}", "_maxi")
$fenster = ""
[/autoit] [autoit][/autoit] [autoit]While 1
Sleep(50)
WEnd
Func _mini()
$fenster = WinGetTitle ( "", "")
Sleep(50)
WinSetState($fenster, "", @SW_MINIMIZE )
EndFunc
Func _maxi()
WinSetState($fenster, "", @SW_MAXIMIZE )
If WinActive($fenster) Then
Else
WinActivate($fenster)
EndIf
EndFunc
das geht nicht schlecht, aber nicht bei einem spiel "FEAR"
deine geht beim spiel auch nicht direkt, aber man bemerkt, das dein script was versucht
sonst geht deins natürlich perfekt :kiss:
Hi,
wenn es euch gefällt. Ich helfe ja gern.
So long,
Mega
Aktives Fenster erreichst du viel einfacher mit WinSetState("", "", @SW_MINIMIZE), also einfach den Title-Parameter leer lassen
Aber th.megers Skript kann man sicher mal brauchen *daumen hoch*.
peethebee
HI,
danke. Komisch manchmal kann man die Leute mit relativ simplen Ideen glücklich machen. :irre:
So long,
Mega