missing seperator character after keyword..??

04/02/2012 14:44 mo.tennis#1
ich hab mir ein tool für autoit gescriptet...
doch es kommt immer ein fehler meldung
ich möche nicht das es geklaut wird deswegen schrieb ich nur den teil der Fehlermedlung heraus

er soll wenn die variable $hotkeyset eintritt HotKeySet ( "key" [, ("function"´)] senden
bitte helft mir :(
es kommt immer diese fehlermeldung:
04/02/2012 15:20 aj1987#2
Code:
Case $hotkeyset
			Send ('{{}HotKeySet ( "key" [, ("function")] )}')
So sollte das gehn...
04/02/2012 16:15 mo.tennis#3
danke funkt so weit...

aber ich hab noch ein problem
ich hab mir wie schon gesagt ein tool für autoit erstellt und er startet es dank dir jett auch....doch wenn ich die einzelnen buttons drücke passiert nix....er soll wenn ich zum bsp den button if drücke If in das edit feld daneben schrieben....wie mache ich es das er es dorthin schreibt .....wenn ich die shortcuts mache( Strg+A,Strg+b,.... bis w kommt auch immer nur der anfangsbuchstabe des befehls..
bitte um hilfe

Code:
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=c:\users\moritz\desktop\toolproject\autoittool-v1.kxf
$Maintool = GUICreate("AutoIT Tool v1.0", 613, 656, 190, 108)
GUISetFont(8, 800, 0, "MS Sans Serif")
$textfeld = GUICtrlCreateEdit("", 8, 8, 297, 633)
GUICtrlSetData(-1, "Edit1")
$if = GUICtrlCreateButton("If", 320, 8, 137, 25)
$elseif = GUICtrlCreateButton("ElseIf", 464, 8, 137, 25)
$else = GUICtrlCreateButton("Else", 320, 40, 137, 25)
$endif = GUICtrlCreateButton("EndIf", 464, 40, 137, 25)
$for = GUICtrlCreateButton("For", 320, 88, 137, 25)
$while = GUICtrlCreateButton("While", 464, 88, 137, 25)
$next = GUICtrlCreateButton("Next", 320, 120, 137, 25)
$wend = GUICtrlCreateButton("WEnd", 464, 120, 137, 25)
$func = GUICtrlCreateButton("Func", 320, 168, 137, 25)
$endfunc = GUICtrlCreateButton("EndFuc", 464, 168, 137, 25)
$iniwirite = GUICtrlCreateButton("Iniwrite", 320, 216, 137, 25)
$iniread = GUICtrlCreateButton("iniread", 464, 216, 137, 25)
$variablen = GUICtrlCreateButton("Variablen", 320, 248, 137, 25)
$guictrlread = GUICtrlCreateButton("GUICtrlRead", 464, 248, 137, 25)
$hotkeyset = GUICtrlCreateButton("HotKeySet", 320, 280, 137, 25)
$Exit = GUICtrlCreateButton("Exit", 464, 280, 137, 25)
$pixelsearch = GUICtrlCreateButton("PixelSearch", 320, 352, 137, 25)
$pixelgetcolor = GUICtrlCreateButton("PixelGetColor", 464, 352, 137, 25)
$Button2 = GUICtrlCreateButton("MouseClick(left)", 320, 400, 137, 25)
$Button3 = GUICtrlCreateButton("MouseClick(right)", 464, 400, 137, 25)
$Button4 = GUICtrlCreateButton("Doubleclick", 464, 432, 137, 25)
$Inputbox = GUICtrlCreateButton("Inputbox", 320, 312, 137, 25)
$Button1 = GUICtrlCreateButton("MouseMove", 320, 432, 137, 25)
Dim $Maintool_AccelTable[23][2] = [["^a", $if],["^b", $elseif],["^c", $else],["^d", $endif],["^e", $for],["^f", $while],["^g", $next],["^h", $wend],["^i", $func],["^j", $endfunc],["^k", $iniwirite],["^l", $iniread],["^m", $variablen],["^n", $guictrlread],["^o", $hotkeyset],["^p", $Exit],["^r", $pixelsearch],["^s", $pixelgetcolor],["^t", $Button2],["^u", $Button3],["^w", $Button4],["^q", $Inputbox],["^v", $Button1]]
GUISetAccelerators($Maintool_AccelTable)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
		Case $if
			send ('{If}')
		Case $elseif
			send ('{ElseIf}')
		Case $else
			Send ('{Else}')
		Case $endif
			Send ('{EndIf}')
		Case $for
			Send ('{For}')
		Case $while
			Send ('{While 1}')
		Case $next
			Send ('{Next}')
		Case $wend
			Send ('{WEnd}')
		Case $func
			Send ('{Func}')
		Case $endfunc
			Send ('{EndFunc}')
		Case $iniwirite
			Send ('{IniWrite}')
		Case $iniread
			Send ('{IniRead}')
		Case $variablen
			Send ('{$var = }')
		Case $guictrlread
			Send ('{GUICtrlRead}')
		Case $hotkeyset
			Send ('{HotKeySet ( "key" [, ("function")] )}')
		Case $Exit
			Send ('{Exit}')
		Case $Inputbox
			Send ('{InputBox ( "title", "Prompt" [, "Default" [, "password char" [, Width, Height [, Left, Top [, TimeOut]]]]] )}')
		Case $pixelsearch
			Send ('{PixelSearch ( left, top, right, bottom, color [, shade-variation] [, step]] )}')
		Case $pixelgetcolor
			Send ('{PixelGetColor ( x , y )}')
		Case $Button2
			('Send {MouseClick ( "left" [, x, y [, 1 [, speed ]]] )}')
		Case $Button3
			Send ('{MouseClick ( "right" [, x, y [, 1 [, speed ]]] )}')
		Case $Button1
			Send ('{MouseMove ( x, y [, speed] )}')
		Case $Button4
			Send ('{MouseClick ( "left" [, x, y [, 2 [, speed ]]] )}')

	EndSwitch
WEnd
04/02/2012 16:24 Freddy​#4
Quote:
Originally Posted by mo.tennis View Post
danke funkt so weit...

aber ich hab noch ein problem
ich hab mir wie schon gesagt ein tool für autoit erstellt und er startet es dank dir jett auch....doch wenn ich die einzelnen buttons drücke passiert nix....er soll wenn ich zum bsp den button if drücke If in das edit feld daneben schrieben....wie mache ich es das er es dorthin schreibt .....wenn ich die shortcuts mache( Strg+A,Strg+b,.... bis w kommt auch immer nur der anfangsbuchstabe des befehls..
bitte um hilfe

Code:
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=c:\users\moritz\desktop\toolproject\autoittool-v1.kxf
$Maintool = GUICreate("AutoIT Tool v1.0", 613, 656, 190, 108)
GUISetFont(8, 800, 0, "MS Sans Serif")
$textfeld = GUICtrlCreateEdit("", 8, 8, 297, 633)
GUICtrlSetData(-1, "Edit1")
$if = GUICtrlCreateButton("If", 320, 8, 137, 25)
$elseif = GUICtrlCreateButton("ElseIf", 464, 8, 137, 25)
$else = GUICtrlCreateButton("Else", 320, 40, 137, 25)
$endif = GUICtrlCreateButton("EndIf", 464, 40, 137, 25)
$for = GUICtrlCreateButton("For", 320, 88, 137, 25)
$while = GUICtrlCreateButton("While", 464, 88, 137, 25)
$next = GUICtrlCreateButton("Next", 320, 120, 137, 25)
$wend = GUICtrlCreateButton("WEnd", 464, 120, 137, 25)
$func = GUICtrlCreateButton("Func", 320, 168, 137, 25)
$endfunc = GUICtrlCreateButton("EndFuc", 464, 168, 137, 25)
$iniwirite = GUICtrlCreateButton("Iniwrite", 320, 216, 137, 25)
$iniread = GUICtrlCreateButton("iniread", 464, 216, 137, 25)
$variablen = GUICtrlCreateButton("Variablen", 320, 248, 137, 25)
$guictrlread = GUICtrlCreateButton("GUICtrlRead", 464, 248, 137, 25)
$hotkeyset = GUICtrlCreateButton("HotKeySet", 320, 280, 137, 25)
$Exit = GUICtrlCreateButton("Exit", 464, 280, 137, 25)
$pixelsearch = GUICtrlCreateButton("PixelSearch", 320, 352, 137, 25)
$pixelgetcolor = GUICtrlCreateButton("PixelGetColor", 464, 352, 137, 25)
$Button2 = GUICtrlCreateButton("MouseClick(left)", 320, 400, 137, 25)
$Button3 = GUICtrlCreateButton("MouseClick(right)", 464, 400, 137, 25)
$Button4 = GUICtrlCreateButton("Doubleclick", 464, 432, 137, 25)
$Inputbox = GUICtrlCreateButton("Inputbox", 320, 312, 137, 25)
$Button1 = GUICtrlCreateButton("MouseMove", 320, 432, 137, 25)
Dim $Maintool_AccelTable[23][2] = [["^a", $if],["^b", $elseif],["^c", $else],["^d", $endif],["^e", $for],["^f", $while],["^g", $next],["^h", $wend],["^i", $func],["^j", $endfunc],["^k", $iniwirite],["^l", $iniread],["^m", $variablen],["^n", $guictrlread],["^o", $hotkeyset],["^p", $Exit],["^r", $pixelsearch],["^s", $pixelgetcolor],["^t", $Button2],["^u", $Button3],["^w", $Button4],["^q", $Inputbox],["^v", $Button1]]
GUISetAccelerators($Maintool_AccelTable)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
		Case $if
			send ('{If}')
		Case $elseif
			send ('{ElseIf}')
		Case $else
			Send ('{Else}')
		Case $endif
			Send ('{EndIf}')
		Case $for
			Send ('{For}')
		Case $while
			Send ('{While 1}')
		Case $next
			Send ('{Next}')
		Case $wend
			Send ('{WEnd}')
		Case $func
			Send ('{Func}')
		Case $endfunc
			Send ('{EndFunc}')
		Case $iniwirite
			Send ('{IniWrite}')
		Case $iniread
			Send ('{IniRead}')
		Case $variablen
			Send ('{$var = }')
		Case $guictrlread
			Send ('{GUICtrlRead}')
		Case $hotkeyset
			Send ('{HotKeySet ( "key" [, ("function")] )}')
		Case $Exit
			Send ('{Exit}')
		Case $Inputbox
			Send ('{InputBox ( "title", "Prompt" [, "Default" [, "password char" [, Width, Height [, Left, Top [, TimeOut]]]]] )}')
		Case $pixelsearch
			Send ('{PixelSearch ( left, top, right, bottom, color [, shade-variation] [, step]] )}')
		Case $pixelgetcolor
			Send ('{PixelGetColor ( x , y )}')
		Case $Button2
			('Send {MouseClick ( "left" [, x, y [, 1 [, speed ]]] )}')
		Case $Button3
			Send ('{MouseClick ( "right" [, x, y [, 1 [, speed ]]] )}')
		Case $Button1
			Send ('{MouseMove ( x, y [, speed] )}')
		Case $Button4
			Send ('{MouseClick ( "left" [, x, y [, 2 [, speed ]]] )}')

	EndSwitch
WEnd
Du verwendest die Befehle falsch.
Bei MouseClick muss zB nur Mouseclick("left",142,1022) hin und nicht Send und diese ganzen [] können raus guck am besten die Beispiele in der Hilfe an wie man die verwendet
04/02/2012 16:38 mo.tennis#5
nein er soll ncih die funktion mouseclick machen er soll das als text senden
04/02/2012 16:38 aj1987#6
Dein Problem ist das du das Zeichen "{" senden willst...
Wenn du das machen willst, musst du es aber in geschwungenen Klammern angeben
also so: "{{}" So sendest du die offene, geschwungene Klammer...
Das is alles...

Beispiel:
send ('{{}If}')
04/02/2012 16:42 mo.tennis#7
nein ich will zum bsp bei

Case $elseif
send ('{ElseIf}')

nur das wort elseif senden...sind die {} da falsch?
04/02/2012 16:45 jacky919#8
Quote:
Originally Posted by mo.tennis View Post
nein ich will zum bsp bei

Case $elseif
send ('{ElseIf}')

nur das wort elseif senden...sind die {} da falsch?
Ja:
PHP Code:
Send("elseif"
04/02/2012 16:47 aj1987#9
Quote:
Originally Posted by mo.tennis View Post
nein ich will zum bsp bei

Case $elseif
send ('{ElseIf}')

nur das wort elseif senden...sind die {} da falsch?
Wo du keine geschwungenen Klammern haben möchtest musst du sie auch nicht senden ;)
04/02/2012 16:48 mo.tennis#10
ok danke

probier ich aus


Edit:
danke funkt fast perfekt......nur is das porblem das wenn ich auf den button klicke er ja nich im textfeld ist....wie kann ich machen das er es in das nebnstehende textfeld sendet
hier noch ma der fertige code
04/02/2012 18:20 omer36#11
Anstelle des "Send()" Befehlst, machst du so:

GUICtrlSetData($textfeld, GUICtrlRead($textfeld) & ' If')
...
GUICtrlSetData($textfeld, GUICtrlRead($textfeld) & ' ElseIf')
...
GUICtrlSetData($textfeld, GUICtrlRead($textfeld) & ' Else')
..
...

So schreibt er alles nebeneinander in den Feld.
04/02/2012 18:51 aj1987#12
Da du ja sicher an der aktuellen Cursorposition den gewünschten Text einfügen willst, hab ich mir bereits was einfallen lassen:


Ich hab die ersten paar Buttons bereits umgeschrieben...
Du solltest so weitermachen...

Eine erklärung geb ich dir falls gewünscht...
04/02/2012 21:04 mo.tennis#13
schonmal vielen dank.....wisst ihr noch ein paar sehr wichtige befehle die da einbauen kanneine kleine erklärung wäre nett..... ps.....nochmals danke für eure hilfe..hba echt viel gelernt...... und ich bekommt alle noch ma ein thx

mfg mo
04/11/2012 21:52 Tobolobo#14
msgbox und _ispressed sind für mich wichtige befehle