Register for your free account! | Forgot your password?

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

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

Advertisement



Hilfe bei Getpos

Discussion on Hilfe bei Getpos within the AutoIt forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Mar 2008
Posts: 29
Received Thanks: 1
Hilfe bei Getpos

Servus!
Ich möchte wenn ich auf einen Button Klicke dass das Script in ein bestimmtes Fenster (Window) wechselt und bei einem Links-Klick in diesem Fenster die x,y Koordinaten unter einer bestimmten Variable ($COORDS01) abgelegt werden. Bei einem erneutem klicken des Buttons soll man die x,y Koordinaten neu definieren können.

Code:
while 1
   	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit

Case $Button1 
If Not WinActivate("Window") Then
WinActivate("Window")
If MouseClick("left") Then $COORDS01 = MouseGetPos()
EndSwitch
wend
Bin leider nicht so Erfahren mit Autoit, Danke!
FreeStylaa is offline  
Old 03/28/2012, 21:18   #2


 
Lawliet's Avatar
 
elite*gold: 2
Join Date: Jul 2009
Posts: 14,456
Received Thanks: 4,685
Quote:
Originally Posted by FreeStylaa View Post
Servus!
Ich möchte wenn ich auf einen Button Klicke dass das Script in ein bestimmtes Fenster (Window) wechselt und bei einem Links-Klick in diesem Fenster die x,y Koordinaten unter einer bestimmten Variable ($COORDS01) abgelegt werden. Bei einem erneutem klicken des Buttons soll man die x,y Koordinaten neu definieren können.

Code:
while 1
   	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit

Case $Button1 
If Not WinActivate("Window") Then
WinActivate("Window")
If MouseClick("left") Then $COORDS01 = MouseGetPos()
EndSwitch
wend
Bin leider nicht so Erfahren mit Autoit, Danke!
Code:
$dll = DllOpen("user32.dll")
If WinActive("Title") = False Then WinActivate("Title")
If _isPressed("01",  $dll) then $COORDS01 = MouseGetPos()
Das sollte dir zumindest die Mausposition speichern.
Lawliet is offline  
Old 03/28/2012, 21:23   #3
 
elite*gold: 0
Join Date: Mar 2008
Posts: 29
Received Thanks: 1
Code:
$dll = DllOpen("user32.dll")
Darf ich fragen was das genau für eine Funktion hat?
FreeStylaa is offline  
Old 03/28/2012, 21:26   #4


 
Lawliet's Avatar
 
elite*gold: 2
Join Date: Jul 2009
Posts: 14,456
Received Thanks: 4,685
Braucht die _isPressed Funktion.

Quote:
Falls diese Funktion wiederholt aufgerufen wird, sollte die Datei 'user32.dll' geöffnet werden und durch ein handle übergeben werden.
Es ist noch zu beachten, dass diese am Ende des Scripts geschlossen wird
Lawliet is offline  
Old 03/28/2012, 21:40   #5
 
elite*gold: 0
Join Date: Mar 2008
Posts: 29
Received Thanks: 1
Code:
$dll = DllOpen("user32.dll")
If WinActive("Window") = False Then WinActivate("Window")
If _isPressed("$Button1 ",  $dll) then $COORD01 = MouseGetPos()
DllClose("user32.dll")
Ist das so richtig?
Gibt es keine "simplere" Lösung, denn das script muss nicht unbedingt "professionell" sein
FreeStylaa is offline  
Old 03/28/2012, 22:00   #6


 
Lawliet's Avatar
 
elite*gold: 2
Join Date: Jul 2009
Posts: 14,456
Received Thanks: 4,685
Das ist eig. relativ simpel. Am besten packst du
Code:
$dll = DllOpen("user32.dll")
irgendwo ganz oben in dein Script, damit der Teil nicht öfters ausgeführt wird.
DllClose dann ganz am Ende.
Lawliet is offline  
Old 04/01/2012, 12:28   #7
 
elite*gold: 0
Join Date: Mar 2008
Posts: 29
Received Thanks: 1
Code:
If _isPressed("01",  $dll) then $COORD01 = MouseGetPos()
If ^ ERROR
Diese Fehlermeldung kommt nun..
FreeStylaa is offline  
Old 04/01/2012, 12:30   #8
 
elite*gold: 50
Join Date: Mar 2010
Posts: 1,373
Received Thanks: 521
Code:
#include <Misc.au3>
vergessen?
jacky919 is offline  
Old 04/01/2012, 12:46   #9
 
elite*gold: 0
Join Date: Mar 2008
Posts: 29
Received Thanks: 1
Funktioniert leider auch nicht.
Ist es normal das _isPressed, DDLOpen und DDlClose bei mir nich highlighted wird?

Code:
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <Misc.au3>
$dll = DllOpen("user32.dll")
HotKeySet("{F8}", "_01")
HotKeySet("{ESC}", "_exit")
Opt('TrayAutoPause', 0)

$Form1 = GUICreate("Form1", 175, 187, 200, 124)
$Group1 = GUICtrlCreateGroup("Functions", 16, 8, 145, 169)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Label1 = GUICtrlCreateLabel("Func01", 32, 32, 76, 17)
GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")
$Button1 = GUICtrlCreateButton("SET", 40, 56, 65, 17)
$Label2 = GUICtrlCreateLabel("Func02", 35, 82, 94, 17)
GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")
$Button2 = GUICtrlCreateButton("SET", 42, 101, 65, 17)
$Label3 = GUICtrlCreateLabel("EXIT", 34, 129, 112, 17)
GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")
$Button3 = GUICtrlCreateButton("EXIT", 42, 146, 65, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUISetState(@SW_SHOW)


Func _01()
If Not WinActivate("Window") Then
WinActivate("Window")
EndIf
$pos = MouseGetPos()
Sleep(50)
MouseClick("left", $COORD01[0], $COORD01[1] ,1, 4)
sleep(50)
MouseClick("left", $pos[0], $pos[1] ,1, 4)
EndFunc



Func _exit()
DllClose("user32.dll")
 ToolTip("[Tooltip: OFF in 1 Sec!]", 0, 0)
 	sleep(1000)
    Exit
 EndFunc


while 1
   	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
	sleep(100)
ToolTip("[Tooltip: ON | F7: Func01 | ESC: EXIT]", 0, 0)
EndSwitch
If _isPressed("$Button1 ",  $dll) then
WinActivate("Window")
$COORD01 = MouseGetPos()
EndIf
wend
FreeStylaa is offline  
Old 04/01/2012, 13:06   #10
 
elite*gold: 50
Join Date: Mar 2010
Posts: 1,373
Received Thanks: 521
Quote:
WARNING: $COORD01: possibly used before declaration.
Wie der Fehler schon sagt, du nutzt eine Variable die nirgendswo deklariert wurde.
jacky919 is offline  
Old 04/01/2012, 13:08   #11
 
elite*gold: 0
Join Date: Mar 2008
Posts: 29
Received Thanks: 1
Das heisst ich muss der Variable, in diesen Fall $COORD01, vorher schon einen Wert zuweisen?
FreeStylaa is offline  
Old 04/02/2012, 14:19   #12
 
aj1987's Avatar
 
elite*gold: 1003
Join Date: Feb 2010
Posts: 791
Received Thanks: 709
nöö, das heisst das du die Variable, deklarieren sollst, bevor du sie benutzt...
Einfach am Anfang des Scripts Global $COORD01 und fertig...
Ausserdem is die Meldung kein Error sondern eine Warnung, welche es dir erlaubt das Script dennoch aszuführen...
aj1987 is offline  
Reply


Similar Threads Similar Threads
Metin2 Multihack by xKeinjalx l Hilfe l Hilfe l Hilfe Pleasy
03/18/2012 - Metin2 Private Server - 2 Replies
Hallo Elit(epvp)ers Mitglieder. Ich habe Multihack von xkEinjalx herunter geladet. Der Problem ist bei Metin2 Patcher. Wenn Man Metin2 mit Patcher öffnet kann man nicht .dll Injecten! Man Musst also mit Metin2client.bin in Metin2client.exe unbennen und öffnen. Es kommt Metin2 Fenster, dann funkt es schon, aber es verbindet nicht zu Server.Es bleibt bei Du wirst mit dem Server verbunden stecken aber wenn man mit Metin2 Patcher öffnet es Loggt ein nur der Hackt geht dann nicht. Der Link...



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


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.