Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > AutoIt
You last visited: Today at 16:28

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



ControlSend an 2 Fenster mit gleichem Namen

Discussion on ControlSend an 2 Fenster mit gleichem Namen within the AutoIt forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Jun 2011
Posts: 225
Received Thanks: 22
Exclamation ControlSend an 2 Fenster mit gleichem Namen

Hiho ePvPs,

Ich hab da eine Frage. Es ist doch sicherlich möglich an 2 verschiedene Fenster, nehmen wir mal FlyFF (also 2 Fenster mit namen FlyFF), via der Prozess ID an ein bestimmtes Fenster einen Befehl zu senden. Ich lese die Prozess ID wie folgt aus :

PHP Code:
    $window1buffer WinWaitActive ("FlyFF")
        
WinGetHandle($window1buffer)
        
$window1 WinGetProcess($window1buffer
So sieht mein Code aus. Er liest auch eine Prozess ID aus die ich mir zur Sicherheit immer dannach in einer Msgbox ausgeben lasse. Allerdings wenn ich dann einen Befehl an dieses Fenster "FlyFF" schicke und bei ControlID die Prozess ID eintrage sendet er überhaupt keinen Key mehr. So sieht mein Befehl zum senden aus :

PHP Code:
ControlSend ("FlyFF","","Prozess ID","Irgendein Key"
weiß jemand wo mein Fehler liegt oder kennt jemand die Lösung?

greetz
Karamelleis is offline  
Old 07/27/2011, 00:32   #2


 
buFFy!'s Avatar
 
elite*gold: 1826
Join Date: Mar 2009
Posts: 4,310
Received Thanks: 6,287
benenn doch die fenster einfach um. als opt den wintitlematchmode so einstellen das der fenstername 1:1 stimmen muss und dann einfach 2x setwindowtext mit FlyFF als 1stTitle aufrufen.

ungetestet
Code:
Func RenameWindows($szWindowText, $iCount)
	For $i = 1 To $iCount
		WinSetTitle($szWindowText, "", $szWindowText & $i)
	Next
	Return
EndFunc
aufruf
Code:
RenameWindows("FlyFF", 2)
$iCount ist logischerweise die anzahl der fenster die du umbenennen willst.
buFFy! is offline  
Thanks
1 User
Old 07/27/2011, 01:12   #3
 
elite*gold: 0
Join Date: Mar 2009
Posts: 7,260
Received Thanks: 33,149
Da würde ich doch lieber die Vorzüge von AutoIt ausnutzen.
PHP Code:
$WinList WinList("FlyFF")
For 
$i 1 To $WinList[0][0]
    
ControlSend($WinList[$i][1], """""W")
Next 
KDeluxe is offline  
Thanks
1 User
Old 07/27/2011, 01:36   #4
 
elite*gold: 0
Join Date: Jun 2011
Posts: 225
Received Thanks: 22
Hast du also die Fenster in einem Feld geordnet richtig? Somit könnte ich beliebig viele Fenster haben solange ich [1][1], [2][2], usw. bei Controlsend editiere richtig?

und das was ich mit der Prozess ID gemacht habe ist komplett überflüssig oder? :s
Hab nicht gedacht, dass das so einfach geht.

Naja werds mal ausprobieren danke!

greetz
Karamelleis is offline  
Old 07/27/2011, 10:33   #5
 
elite*gold: 0
Join Date: Mar 2009
Posts: 7,260
Received Thanks: 33,149
Quote:
The array returned is two-dimensional and is made up as follows:
$array[0][0] = Number of windows returned
$array[1][0] = 1st window title
$array[1][1] = 1st window handle (HWND)
$array[2][0] = 2nd window title
$array[2][1] = 2nd window handle (HWND)
...
$array[n][0] = nth window title
$array[n][1] = nth window handle (HWND)
Lese dir das doch durch, [2][2] wird dir nicht mehr als einen Fehler bringen. Die For Schleife habe ich nicht umsonst gewählt. Für Spiele ist das mit der For Schleife je nach Anwendung aber schlecht.
KDeluxe is offline  
Old 07/27/2011, 10:44   #6


 
buFFy!'s Avatar
 
elite*gold: 1826
Join Date: Mar 2009
Posts: 4,310
Received Thanks: 6,287
fragt sich nur ob er tatsächlich alle fenster umbennen will, oder nur eine gewisse anzahl.
btw jedes mal winlist zu callen ist performancelastig.

einmalig umbenennen ist definitiv die bessere lösung ^^
buFFy! is offline  
Thanks
1 User
Old 07/27/2011, 10:56   #7
 
elite*gold: 0
Join Date: Mar 2009
Posts: 7,260
Received Thanks: 33,149
Es ist ja nur ein Beispiel, es würde aber auch nur mit einem Aufruf gehen. Dabei gibt es aber dann ein Problem, nach dem Schließen des Fensters ist das Handle ungültig und somit die Funktionsaufrufe unnötig. Selbes Problem ergibt sich aber auch beim umbenennen. Dieses Problem lässt sich aber sowieso ganz einfach lösen.
KDeluxe is offline  
Old 07/27/2011, 11:31   #8
 
elite*gold: 0
Join Date: Jun 2011
Posts: 225
Received Thanks: 22
Ab welchem Zeitpunkt wird sich Winlist performancelastig aus? Ich wollte eigentlich nur einen simplen Bot schreiben der F1,F2, ... (was man ausgewählt hat) an die jeweiligen Fenster schickt. Wird der PC langsamer wenn man den Bot ca. 1 Stunde laufen lässt (gehen wir von einem Standart PC aus) ?

Und mir ist noch nicht klar was du mit dem Handle meinst muss ich das in die Schleife einbauen? Ich bin da noch recht unerfahren in dem Gebiet darum bitte ich um Hilfe.

Quote:
WinGetHandle("FlyFF") wäre ja dann unlogisch bzw. falsch weil beide Fenster den gleichen Namen haben

WinGetHandle($Winlist[i][1]) würde dann doch für das erste Fenster funktionieren richtig?
Karamelleis is offline  
Old 07/27/2011, 12:11   #9
 
elite*gold: 0
Join Date: Mar 2009
Posts: 7,260
Received Thanks: 33,149
Quote:
Originally Posted by Karamelleis View Post
WinGetHandle($Winlist[i][1]) würde dann doch für das erste Fenster funktionieren richtig?
Befolge doch einfach mal meinen Rat und lese dir die Funktion durch. $WinList[$i][1] beinhaltet das Handle des n-ten Fensters. Das Handle eines Fenster mit Hilfe des bereits gegeben Handles zu bekommen macht keinen Sinn.

Bei einem simplen Bot kannst du es z. B. so anstellen:
PHP Code:
HotKeySet("1""_Start")
HotKeySet("2""_Pause")
HotKeySet("3""_Exit")

Global 
$Paused False

Func _Start
()
    
$WinList WinList("FlyFF")
    If 
$WinList[0][0] == 0 Then
        MsgBox
(48"Fehler""FlyFF wurde nicht gefunden!")
    Else
        While 
Sleep(10)
            For 
$n 1 To $WinList[0][0]
                
ControlSend($WinList[$n][1], """""{F1}")
            
Next
        WEnd
    
EndIf
EndFunc

Func _Pause
()
    
$Paused Not $Paused
    
While $Paused
        Sleep
(100)
    
WEnd
EndFunc

Func _Exit
()
    Exit
EndFunc

While Sleep(100)
WEnd 
KDeluxe is offline  
Thanks
1 User
Old 07/27/2011, 12:34   #10
 
elite*gold: 0
Join Date: Jun 2011
Posts: 225
Received Thanks: 22
Danke jetzt verstehe ich es!

Kann geclost werden
Karamelleis is offline  
Reply


Similar Threads Similar Threads
2 Accounts Auf gleichem Server gesucht
11/02/2010 - Metin2 Trading - 0 Replies
Hi Leute! Ich suche für mich und meinen Freund jeweils 1 Metin2 account. Beide Auf dem Gleichen Server!!!!!!! ( muss nicht vom gleichen verkäufer sein) Server ist egal. Mindestens 65 Klasse: Egal SKills: Sollte gut geskillt sein 1 g oder p skills oder mehr. Für höchstens 35 Euro Psc Pro account. Ps: Übern Moderator.
[Suche]4Story Schatti/Mage mit gleichem EQ!
10/13/2010 - 4Story Trading - 2 Replies
1. Angebot für Schatti oder Mage Server/Land egal! Hey ich suche einen Schatti oder Mage mit gleichen eq wie mein Krieger Hier ist der Link:Klick! was es noch zu sagen gibt der account hat keinen Mantel mehr aber dafür sind noch andere sachen oben wie z.B lvl53er Bogi und 30er Schatti! Also was ich suche: Schatti oder Mage Komplett pvp +18 und Waffe +20 Mantel und mit gutem schmuck
Virtuelle Maus & Fenster mit Variablem Namen
10/07/2009 - AutoIt - 7 Replies
Ich spiele Ultima Online und habe auch einen sehr leistungstarken miningbot geschrieben..nur stehe ich jetzt vor einem großen Problem! Das Script läuft nciht im Ultima Online fenster sondern einfach auf dem Programm welches unter der maus ist! Die Maus wird effektiv bewegt also der Mauszeiger wandert! Beides würde ich gerne ändern die bewegungen & klicks sollen nur im UO fenster passieren, geht aber leider nciht so trivial weil jeder nen eigenen fenster namen hat Ultima Online wie...
Frage zum einloggen auf gleichem server
09/12/2009 - Metin2 Private Server - 3 Replies
hab da mal ne frage und zwar wenn ich mit meinem main acc auf server 19 eingeloggt bin und mich mit nem zweiten fenster im gleichen server einloggen will sagt er mir "bitte wähle sie einen anderen server" ist es möglich das ich mich mehrfach auf den server mit verschiedenen accs bzw. gleichen acc einloggen kann? danke im vorraus



All times are GMT +1. The time now is 16:29.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.