|
You last visited: Today at 17:37
Advertisement
EndSwitch Fehler
Discussion on EndSwitch Fehler within the AutoIt forum part of the Coders Den category.
06/15/2013, 17:41
|
#1
|
elite*gold: 1
Join Date: Dec 2012
Posts: 315
Received Thanks: 28
|
EndSwitch Fehler
Hey,
ich habe momentan ein ziehmlich verkruckstes Problem. In meinem Script sind Switch und While Schleifen. Autoit meint ich hätte die Schleifen zu oft zugemacht. Wenn ich die "Zumacher" aber entferne, beschwert es sich weil sie fehlen O_O
Danke im Vorraus
monte
PS: Der Code:
PHP Code:
#cs ----------------------------------------------------------------------------
AutoIt Version: 3.3.8.0
Author: myName
Script Function:
Template AutoIt script.
#ce ----------------------------------------------------------------------------
; Script Start - Add your code below here
HotKeySet("{F6}","stop")
#include <IE.au3>
#include <File.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <ProgressConstants.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=c:\users\julius\desktop\ytbot\ytbotgui.kxf
$Form1_1 = GUICreate("YTBot", 362, 424, 201, 122)
$eingabe = GUICtrlCreateInput("", 48, 40, 209, 21)
$Start = GUICtrlCreateButton("Start", 272, 24, 75, 25)
$Link = GUICtrlCreateLabel("Link", 8, 40, 24, 17)
$Edit1 = GUICtrlCreateEdit("", 8, 80, 345, 305)
GUICtrlSetData(-1, "")
$StartGeheim = GUICtrlCreateButton("StartGeheim", 272, 48, 75, 25)
$Progress1 = GUICtrlCreateProgress(0, 400, 358, 17)
$optionen = GUICtrlCreateButton("Optionen", 8, 0, 339, 25)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Start
While 1
_write_log($Edit1, "Versuch gestartet", $Form1_1)
_Log("Versuch gestartet")
For $i = 1 To 100 Step 1
GUICtrlSetData($Progress1, $i)
Sleep(10)
Next
$oIE = _IECreate(GUICtrlRead($eingabe))
_write_Log($Edit1, "Link geöffnet", $Form1_1)
_Log("Link geöffnet")
For $i = 1 To 100 Step 2
GUICtrlSetData($Progress1, $i)
Sleep(10)
Next
Sleep(2000)
_IEQuit($oIE)
_write_log($Edit1, "Link geschlossen", $Form1_1)
_Log("Link geschlossen")
For $i = 1 To 100 Step 3
GUICtrlSetData($Progress1, $i)
Sleep(10)
Next
For $i = 0 To 100 Step 4
GUICtrlSetData($Progress1, $i)
Sleep(10)
Next
Sleep(3000)
WEnd
Case $StartGeheim
While 1
_write_log($Edit1, "Versuch gestartet", $Form1_1)
_Log("Versuch gestartet")
$oIE = _IECreate(GUICtrlRead($eingabe), 0 ,0)
_write_Log($Edit1, "Link geöffnet", $Form1_1)
_Log("Link geöffnet")
Sleep(2000)
_IEQuit($oIE)
_write_log($Edit1, "Link geschlossen", $Form1_1)
_Log("Link geschlossen")
Sleep(3000)
WEnd
Case $Optionen
#Region ### START Koda GUI section ### Form=c:\users\julius\desktop\ytbot\ytbotguioptions.kxf
$Form2 = GUICreate("Form2", 615, 438, 192, 124)
$Label1 = GUICtrlCreateLabel("Um den MultiView-Modus zu aktivieren, gib an weiviele Links es sind un klicke auf Starten", 8, 8, 428, 17)
$Button1 = GUICtrlCreateButton("Start-MultiView", 472, 32, 123, 33)
$Label2 = GUICtrlCreateLabel("Um die abzuarbeitenden Links zu editieren, sieh dir die MultiView.ini an.", 8, 40, 339, 17)
$Input1 = GUICtrlCreateInput("Anzahl Links", 472, 8, 121, 21)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
$linkanzahl = (GUICtrlRead($Input1))
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
If $linkanzahl = 2 Then
$eingabemulti = Iniread("MultiView.ini","Links","First","Error")
$oIE = _IECreate($eingabemulti)
$eingabemulti2 = Iniread("MultiView.ini","Links","Second","Error")
$oIE = _IECreate($eingabemulti2)
ElseIf
If $linkanzahl = 3 Then
$eingabemulti = Iniread("MultiView.ini","Links","First","Error")
$oIE = _IECreate($eingabemulti)
$eingabemulti2 = Iniread("MultiView.ini","Links","Second","Error")
$oIE = _IECreate($eingabemulti2)
$eingabemulti3 = Iniread("MultiView.ini","Links","Third","Error")
$oIE = _IECreate($eingabemulti2)
ElseIf
If $linkanzahl = 4 Then
$eingabemulti = Iniread("MultiView.ini","Links","First","Error")
$oIE = _IECreate($eingabemulti)
$eingabemulti2 = Iniread("MultiView.ini","Links","Second","Error")
$oIE = _IECreate($eingabemulti2)
$eingabemulti3 = Iniread("MultiView.ini","Links","Third","Error")
$oIE = _IECreate($eingabemulti2)
$eingabemulti4 = Iniread("MultiView.ini","Links","Third","Error")
$oIE = _IECreate($eingabemulti2)
ElseIf
EndSwitch
WEnd
EndSwitch
WEnd
Func stop()
Exit
EndFunc
Func _write_log($iLog, $sText, $hWND)
GUICtrlSetData($iLog, GUICtrlRead($iLog)&@HOUR&":"&@MIN&":"&@SEC&" "&$sText&@CRLF)
ControlSend($hWND, "", $iLog, "{end}")
EndFunc
Func _Log($sText)
FileWrite(@ScriptDir & "\Log.txt", @HOUR&":"&@MIN&":"&@SEC&" "&$sText& @CRLF)
EndFunc
|
|
|
06/15/2013, 18:22
|
#2
|
elite*gold: 0
Join Date: Mar 2009
Posts: 2,317
Received Thanks: 1,255
|
Quote:
while 1
while 1
while 1
while 1
while 1
;;
;;
wend
wend
wend
wend
wend
|
wtf?
lern liebern ochmal die grundlagen.
und drück mal in scite strg+t, dann siehst du vllt. wo etwas fehlen könnte
|
|
|
06/15/2013, 18:26
|
#3
|
elite*gold: 12
Join Date: Jun 2012
Posts: 2,049
Received Thanks: 138
|
Ändere das "ElseIf" in Zeile 114, 124 & 136 mit "EndIf"
PS, damit geht es. Lass Tidy drüber laufen dann passt die Struktur wieder.
#cs ----------------------------------------------------------------------------
AutoIt Version: 3.3.8.0
Author: myName
Script Function:
Template AutoIt script.
#ce ----------------------------------------------------------------------------
; Script Start - Add your code below here
HotKeySet("{F6}", "stop")
#include <IE.au3>
#include <File.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <ProgressConstants.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#region ### START Koda GUI section ### Form=c:\users\julius\desktop\ytbot\ytbotgui.kxf
$Form1_1 = GUICreate("YTBot", 362, 424, 201, 122)
$eingabe = GUICtrlCreateInput("", 48, 40, 209, 21)
$Start = GUICtrlCreateButton("Start", 272, 24, 75, 25)
$Link = GUICtrlCreateLabel("Link", 8, 40, 24, 17)
$Edit1 = GUICtrlCreateEdit("", 8, 80, 345, 305)
GUICtrlSetData(-1, "")
$StartGeheim = GUICtrlCreateButton("StartGeheim", 272, 48, 75, 25)
$Progress1 = GUICtrlCreateProgress(0, 400, 358, 17)
$optionen = GUICtrlCreateButton("Optionen", 8, 0, 339, 25)
GUISetState(@SW_SHOW)
#endregion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Start
While 1
_write_log($Edit1, "Versuch gestartet", $Form1_1)
_Log("Versuch gestartet")
For $i = 1 To 100 Step 1
GUICtrlSetData($Progress1, $i)
Sleep(10)
Next
$oIE = _IECreate(GUICtrlRead($eingabe))
_write_Log($Edit1, "Link geöffnet", $Form1_1)
_Log("Link geöffnet")
For $i = 1 To 100 Step 2
GUICtrlSetData($Progress1, $i)
Sleep(10)
Next
Sleep(2000)
_IEQuit($oIE)
_write_log($Edit1, "Link geschlossen", $Form1_1)
_Log("Link geschlossen")
For $i = 1 To 100 Step 3
GUICtrlSetData($Progress1, $i)
Sleep(10)
Next
For $i = 0 To 100 Step 4
GUICtrlSetData($Progress1, $i)
Sleep(10)
Next
Sleep(3000)
WEnd
Case $StartGeheim
While 1
_write_log($Edit1, "Versuch gestartet", $Form1_1)
_Log("Versuch gestartet")
$oIE = _IECreate(GUICtrlRead($eingabe), 0, 0)
_write_Log($Edit1, "Link geöffnet", $Form1_1)
_Log("Link geöffnet")
Sleep(2000)
_IEQuit($oIE)
_write_log($Edit1, "Link geschlossen", $Form1_1)
_Log("Link geschlossen")
Sleep(3000)
WEnd
Case $optionen
#region ### START Koda GUI section ### Form=c:\users\julius\desktop\ytbot\ytbotguioptions .kxf
$Form2 = GUICreate("Form2", 615, 438, 192, 124)
$Label1 = GUICtrlCreateLabel("Um den MultiView-Modus zu aktivieren, gib an weiviele Links es sind un klicke auf Starten", 8, 8, 428, 17)
$Button1 = GUICtrlCreateButton("Start-MultiView", 472, 32, 123, 33)
$Label2 = GUICtrlCreateLabel("Um die abzuarbeitenden Links zu editieren, sieh dir die MultiView.ini an.", 8, 40, 339, 17)
$Input1 = GUICtrlCreateInput("Anzahl Links", 472, 8, 121, 21)
GUISetState(@SW_SHOW)
#endregion ### END Koda GUI section ###
$linkanzahl = (GUICtrlRead($Input1))
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
If $linkanzahl = 2 Then
$eingabemulti = IniRead("MultiView.ini", "Links", "First", "Error")
$oIE = _IECreate($eingabemulti)
$eingabemulti2 = IniRead("MultiView.ini", "Links", "Second", "Error")
$oIE = _IECreate($eingabemulti2)
EndIf
If $linkanzahl = 3 Then
$eingabemulti = IniRead("MultiView.ini", "Links", "First", "Error")
$oIE = _IECreate($eingabemulti)
$eingabemulti2 = IniRead("MultiView.ini", "Links", "Second", "Error")
$oIE = _IECreate($eingabemulti2)
$eingabemulti3 = IniRead("MultiView.ini", "Links", "Third", "Error")
$oIE = _IECreate($eingabemulti2)
EndIf
If $linkanzahl = 4 Then
$eingabemulti = IniRead("MultiView.ini", "Links", "First", "Error")
$oIE = _IECreate($eingabemulti)
$eingabemulti2 = IniRead("MultiView.ini", "Links", "Second", "Error")
$oIE = _IECreate($eingabemulti2)
$eingabemulti3 = IniRead("MultiView.ini", "Links", "Third", "Error")
$oIE = _IECreate($eingabemulti2)
$eingabemulti4 = IniRead("MultiView.ini", "Links", "Third", "Error")
$oIE = _IECreate($eingabemulti2)
EndIf
EndSwitch
WEnd
EndSwitch
WEnd
Func stop()
Exit
EndFunc ;==>stop
Func _write_log($iLog, $sText, $hWND)
GUICtrlSetData($iLog, GUICtrlRead($iLog) & @HOUR & ":" & @MIN & ":" & @SEC & " " & $sText & @CRLF)
ControlSend($hWND, "", $iLog, "{end}")
EndFunc ;==>_write_log
Func _Log($sText)
FileWrite(@ScriptDir & "\Log.txt", @HOUR & ":" & @MIN & ":" & @SEC & " " & $sText & @CRLF)
EndFunc ;==>_Log
|
|
|
06/15/2013, 21:35
|
#4
|
elite*gold: 76
Join Date: Jun 2012
Posts: 1,043
Received Thanks: 216
|
Und als kleiner Tipp. Wenn du hier etwas postest, dann sollten Einschübe vorhanden sein.
So etwa:
PHP Code:
If bla then
while 1
Sleep(100)
Wend
elseif bla then
Do
bla
If bla then
bla
Endif
Until x=y
endif
dann stehen die anfänge und enden der schleifen untereinander und es ist besser zu lesen
|
|
|
06/16/2013, 10:40
|
#5
|
elite*gold: 1
Join Date: Dec 2012
Posts: 315
Received Thanks: 28
|
Quote:
Originally Posted by omer36
wtf?
lern liebern ochmal die grundlagen.
und drück mal in scite strg+t, dann siehst du vllt. wo etwas fehlen könnte
|
OMG, du hast den code wohl net kapiert :O
|
|
|
06/16/2013, 11:04
|
#6
|
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
|
Quote:
Originally Posted by Cpt.****
OMG, du hast den code wohl net kapiert :O
|
fakt ist, das der code alles andere als gut geschrieben ist.
deine fehler liegen wie bereits erwähnt darinn, das du direkt nach ElseIf ein weiteres If platziert hast...
abgesehen davon, solltest du nie mit mehr als einer endlosschleife arbeiten, da jede unterschleife den rest des scriptes blockiert. Der schlüssel zum erfolg liegt hier in zustandsvariablen.
baue deine main schleife möglichst so auf:
Code:
Dim $button1State, $button2State, <other state variables>
<gui creation>
While True
Switch GuiGetMsg()
Case $button1
$button1State=Not $button1State
Case $button2
$button2State=Not $button2State
<other switch sases>
EndSwitch
If $button1State Then
<action 1>
EndIf
If $button2State Then
<action2>
EndIf
<other actions>
WEnd
so kannst du beliebig viele aktionen endlos oft nebeneinander her laufen lassen, ohne einen teil der main schleife unerreichbar zu machen...
|
|
|
 |
Similar Threads
|
So ein Fehler gibt es nicht, DB alels funzt ingame Fehler -.-
01/19/2012 - Metin2 Private Server - 6 Replies
Hey Com,
ich habe alles gestartet (Hamachi Daroo Files).
Navicat geht, alles funzt nur folgendes:
Wenn ich mich mit falschen Logins einlogge:
Dieser Account existiert nicht.
Wenn ich richtige Daten eingebe:
Fehler beim Verbinden mit dem Server
|
[Root]Setting.lua fehler aber Fehler nicht zu beheben??
08/09/2011 - Metin2 Private Server - 5 Replies
Richte für jemanden den root ein, aber bei dem fehler bin ich jetzt selber an meine grenzen gekommen.
Folgender Fehler kommt beim starten:
http://www.fotos-hochladen.net/uploads/unbenan11n tij3uvlnr5d.png
Die syserr daneben gehört dazu, die Setting.lua habe ich schon durch getauscht, kommt aber immer noch der Fehler :confused:
Datenbank auch schon getauscht, aber was ist dieses:
|
Infinite Aion: Fehler (1024) Fehler beim initialisieren des Spiels
06/09/2011 - Aion Private Server - 5 Replies
Hi Leute,
ich hab ein Probem mit AION:
jedesmal wenn ich starte, egal ob mit dem NCSoft Launcher oder mit dem Infinite Aion Launcher kommt die Meldung Fehler beim initialisieren des Spiels...
Hab schon alle möglichen Sprachkombinationen durchprobiert, da es überall heißt man soll Region und Sprache beim NCSoft Launcher ändern und dann gehts...
Alles probiert, und siehe da: geändert hat sich nichts... Immer noch der Fehler 1024...
wäre nett, wenn mir da jemand helfen könnte und auch...
|
Fehler beim Skype deinstallieren [Fehler 1603]
06/08/2011 - Technical Support - 4 Replies
Überschrift sagt alles.
Ich hoffe jmd kann mir helfen,ich kann auch einen Sceenshot machen.
|
Fehler : java.net.socet.exception:connection reset fehler bitte um hilfe
12/21/2010 - Minecraft - 9 Replies
Hab denn java.net.socet.exception:connection reset fehler immer und immer wieder
:(
könnt ihr mir dabei vill helfen? :)
LG DieVerrückteMango =)
|
All times are GMT +1. The time now is 17:38.
|
|