Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > AutoIt
You last visited: Today at 14:49

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

Advertisement



While Schleifen Problem

Discussion on While Schleifen Problem within the AutoIt forum part of the Coders Den category.

Reply
 
Old 12/29/2010, 21:38   #16
 
PenGuin :O's Avatar
 
elite*gold: 2
Join Date: Mar 2008
Posts: 1,778
Received Thanks: 1,222
Ja was willst du auch immer mit deinem Sleep?
PenGuin :O is offline  
Old 12/29/2010, 22:25   #17
 
elite*gold: 0
Join Date: Dec 2009
Posts: 1,622
Received Thanks: 2,070
Hast du den Sinn von Delay verstanden?

Es steht dafür, z.B. alle 30 Minuten die Ip zu ändern.

Wie soll es deiner meinung nach ohne Sleep funktionieren...

Die Uhrzeit Auslesen, und irgendwie mit einer matheformel immer die uhrzeit des nächsten changes ausrechnen, und quasi einen wecker basteln?

Kp :P
freehuntx is offline  
Old 12/29/2010, 23:18   #18
 
PenGuin :O's Avatar
 
elite*gold: 2
Join Date: Mar 2008
Posts: 1,778
Received Thanks: 1,222
Code:
;PenGuin :O

Global $hGUI, $Start, $Count, $State, $Counter, $Stop
Global $i = 1

$hGUI = GUICreate("Einfaches Beispiel", 299, 120, 446, 327)
GUISetFont(11, 400, 0, "Arial")
$Start = GUICtrlCreateButton("Start", 24, 48, 113, 25)
$Count = GUICtrlCreateButton("Erhöhen", 160, 48, 113, 25)
$Stop = GUICtrlCreateButton("Stop", 92, 80, 113, 25)
GUICtrlSetstate($Stop, 128)
$State = GUICtrlCreateLabel("Aus", 66, 16, 47, 21)
$Counter = GUICtrlCreateLabel("1", 205, 16, 47, 21)
GUISetState()

While True
	Switch GUIGetMsg()
		Case -3
			Exit
		Case $Start
			_Start()
		Case $Count
			_Count()
		Case $Stop
			_Stop()
	EndSwitch
WEnd

Func _Count()
	$i += 1
	GUICtrlSetData($Counter, $i)
EndFunc

Func _Start()
	GUICtrlSetstate($Start, 128)
	GUICtrlSetstate($Stop, 64)
	GUICtrlSetData($State, "Ein")
	AdlibRegister("_MsgBox", 5000)
EndFunc

Func _MsgBox()
	ConsoleWrite("5 Sekunden vergangen, und du konntest trotzdem noch den anderen Button benutzen!" & @CRLF)
EndFunc

Func _Stop()
	GUICtrlSetData($State, "Aus")
	GUICtrlSetstate($Stop, 128)
	GUICtrlSetstate($Start, 64)
	AdlibUnRegister("_MsgBox")
EndFunc
Ach ja, und nenn mir einen Grund, warum ich dir noch weiter helfen sollte, wenn du mir schon so patzig ankommst.
PenGuin :O is offline  
Old 12/29/2010, 23:43   #19
 
elite*gold: 0
Join Date: Dec 2009
Posts: 1,622
Received Thanks: 2,070
Es gibt Leute die Kritikfähig sind, und andere die es nicht sind.
Ich wusste ja nicht dass man Leute, die einem Helfen wollen, anlügen soll und sagen dass ihr Post geholfen hat.

Wenn du verstehst was ich meine.

Naja ich zwinge dich nicht mir zu helfen es bleibt dir überlassen...
freehuntx is offline  
Old 12/30/2010, 00:25   #20
 
PenGuin :O's Avatar
 
elite*gold: 2
Join Date: Mar 2008
Posts: 1,778
Received Thanks: 1,222
Quote:
Originally Posted by freehuntx View Post
Es gibt Leute die Kritikfähig sind, und andere die es nicht sind.
Ich wusste ja nicht dass man Leute, die einem Helfen wollen, anlügen soll und sagen dass ihr Post geholfen hat.

Wenn du verstehst was ich meine.

Naja ich zwinge dich nicht mir zu helfen es bleibt dir überlassen...
Ich rate dir dringend den Unterschied von Kritifähigkeit und Unfreundlichkeit zu lernen.
Du muss mir nicht sagen, dass mein Post hilfreich war, wenn er es nicht war, dann sagst du was ich falsch verstanden hab und fertig, weil ich bin 100%ig sicher, dass deine Problemchen (die sind so gering) mich wohl schlecht an die Grenzen treiben, d.h. einfach nochmal neu erklären, bzw. das was ich anscheinend falsch verstanden habe und fertig.

Natürlich zwingst du mich nicht, dennoch ist das kein Grund, auf eine falsche Hilfestellung patzig zu antworten, oder nicht?

Außerdem, hat das neue Script dir geholfen?
PenGuin :O is offline  
Old 12/30/2010, 00:46   #21
 
elite*gold: 0
Join Date: Mar 2009
Posts: 7,260
Received Thanks: 33,149
Quote:
Originally Posted by freehuntx View Post
Mal so am Rande.

Dein Script ändert sofort nach drücken des buttons die ip, aber er soll ja immer nach einer bestimmten zeit die ip ändern.
Wenn ich bei etwas eine Zeitspanne angebe und anschließend davon Gebrauch
mache, gehe ich davon aus, dass es sich auch beim starten bemerkbar macht.

Außerdem genügt es eine Zeile auszukommentieren. Was ist daran schwer?

Code:
#include <INet.au3> 
#include <GUIConstantsEx.au3> 

#Region ### START Koda GUI section ### Form= 
GUICreate("FR!TZBox IP Changer by FreehuntX", 360, 155) 
GUICtrlCreateGroup("Simple Changer", 8, 0, 153, 57) 
$B_Change = GUICtrlCreateButton("Change", 16, 24, 75, 25) 
GUICtrlCreateLabel("or    Num1", 96, 32, 53, 17) 
GUICtrlCreateGroup("", -99, -99, 1, 1) 
GUICtrlCreateLabel("Current IP:", 8, 72, 54, 17) 
$L_IP = GUICtrlCreateLabel("Please Wait", 64, 72, 101, 17) 
GUICtrlCreateGroup("Status", 8, 96, 153, 49) 
$L_Status = GUICtrlCreateLabel("Nothing...", 20, 120, 140, 17) 
GUICtrlCreateGroup("", -99, -99, 1, 1) 
GUICtrlCreateGroup("Time Changer", 168, 0, 185, 145) 
$I_Delay = GUICtrlCreateInput("1800", 224, 22, 113, 21) 
GUICtrlCreateLabel("Delay:", 176, 24, 34, 17) 
$B_Start = GUICtrlCreateButton("Start", 176, 56, 75, 25) 
$B_Stop = GUICtrlCreateButton("Stop", 264, 56, 75, 25) 
GUICtrlCreateGroup("", -99, -99, 1, 1) 
GUICtrlCreateGroup("Status", 176, 88, 169, 49) 
$L_StatusT = GUICtrlCreateLabel("Nothing...", 190, 112, 145, 17) 
GUICtrlCreateGroup("", -99, -99, 1, 1) 
GUISetState(@SW_SHOW) 
#EndRegion ### END Koda GUI section ### 
GUICtrlSetState($B_Stop, $GUI_DISABLE) 
GUICtrlSetdata($L_IP, _GetIp()) 

Global $Start, $AutoChange = False 
Global $Timer, $Hotkey = True 
HotKeySet("{NUMPAD1}", "_ChangeH") 

While Sleep(10) 
    $nMsg = GUIGetMsg() 
    Switch $nMsg 
        Case $GUI_EVENT_CLOSE 
            Exit 
        Case $B_Change 
            _Change() 
        Case $B_Start 
            GUICtrlSetState($B_Start, $GUI_DISABLE) 
            GUICtrlSetState($B_Stop, $GUI_ENABLE) 
            $AutoChange = True 
            $Start = True 
        Case $B_Stop 
            GUICtrlSetState($B_Start, $GUI_ENABLE) 
            GUICtrlSetState($B_Stop, $GUI_DISABLE) 
            $AutoChange = False 
            $Timer = 0 
    EndSwitch 

    If $AutoChange Then 
        If $Start Then 
            [SIZE="6"][COLOR="Green"];_Change($L_StatusT)[/COLOR][/SIZE] 
            $Timer = TimerInit() 
            $Start = False 
        EndIf 

        If TimerDiff($Timer) >= (GUICtrlRead($I_Delay) * 1000) Then 
            _Change($L_StatusT) 
            $Timer = TimerInit() 
        EndIf 
    EndIf 
WEnd 

Func _ChangeH() 
    If $Hotkey Then 
        $Hotkey = False 
        _Change() 
    EndIf 
EndFunc 

Func _Change($Label = $L_Status) 
    If $Label == $L_Status Then GUICtrlSetState($B_Change, $GUI_DISABLE) 

    GUICtrlSetdata($Label,"Changing...") 
    RunWait(@ComSpec & " /c " & 'type data.box | "' & @ScriptDir & '\nc.exe" -w 1 fritz.box 49000 >nul', "", @SW_HIDE) 
    GUICtrlSetdata($L_IP, _GetIp()) 
    GUICtrlSetdata($Label, "Last Change: " & @HOUR & ":" & @MIN & ":" & @SEC) 

    If $Label == $L_Status Then GUICtrlSetState($B_Change, $GUI_ENABLE) 
    If $Hotkey == False Then $Hotkey = True 
EndFunc
Quote:
Originally Posted by freehuntx View Post
Hast du den Sinn von Delay verstanden?

Es steht dafür, z.B. alle 30 Minuten die Ip zu ändern.

Wie soll es deiner meinung nach ohne Sleep funktionieren...
Jetzt wo ich es lese, mir scheint, dass du seit Beginn des Threads nichts gelernt hast.
Die Lösung befand sich schon bereits im 2. Beitrag (Timer, kein Sleep). PenGuin :O gab
dir noch ein Beispiel mit AdlibRegister (kein Sleep), was zur Lösung beitragen kann. Du
solltest aus anderen Scripts lernen und nicht darauf hoffen, dass es dir jemand so
zusammenstellt wie du es dir vorstellst, um es anschließend nur noch kopieren zu müssen.
Und wie PenGuin :O schon sagte gibt es keinen Grund unhöflich zu werden, das bringt
niemanden weiter, du machst es dir durch Unbeliebtheit höchstens schwieriger.
KDeluxe is offline  
Old 12/30/2010, 02:20   #22
 
elite*gold: 0
Join Date: Dec 2009
Posts: 1,622
Received Thanks: 2,070
Ist es eurer meinung nach "Patzig" wenn man jemanden Fragt ob er den sinn eines teils des script verstanden hat?

also echt..

Ich wollte ihn nur darauf aufmerksam machen dass der wichtige teil des scripts, die stelle ist, an welcher der sleep kommt.

Ich brauche schließlich eure hilfe nicht ihr meine. Wieso sollte ich euch dann "Absichtlich" doof anmachen?

Es war nicht so gemeint wie ihr es versteht. Und dafür kann ich doch nichts...



KillerDeluxe, Dein Script Funktioniert.
Es tut mir Leid dass ich ihn nicht verstanden habe.

Ist das ok so?
freehuntx is offline  
Old 12/30/2010, 02:50   #23
 
PenGuin :O's Avatar
 
elite*gold: 2
Join Date: Mar 2008
Posts: 1,778
Received Thanks: 1,222
Quote:
Originally Posted by freehuntx View Post
Ist das ok so?
Das musst du selber wissen.
Nur frage ich mich, ob du jetzt was dabei gelernt hast oder ob du nächstes Mal wieder fragst, weil das soll ja nicht der Zweck unserer Arbeit sein, dir alles vor die Füße zu werfen.
Naja, ich glaub der Thread ist gelöst, kann eig. geclosed werden.
PenGuin :O is offline  
Old 12/30/2010, 22:40   #24
 
elite*gold: 0
Join Date: Dec 2009
Posts: 1,622
Received Thanks: 2,070
Quote:
Originally Posted by PenGuin :O View Post
Nur frage ich mich, ob du jetzt was dabei gelernt hast oder ob du nächstes Mal wieder fragst, weil das soll ja nicht der Zweck unserer Arbeit sein, dir alles vor die Füße zu werfen.
Ich schaue mir das Script schon an und versuche es zu verstehen.
Wenn es deine Meinung ist, jemanden etwas vor die füße zu werfen, indem du versuchst ihm zu helfen, kann ich nichts dafür.


Quote:
Originally Posted by PenGuin :O View Post
Naja, ich glaub der Thread ist gelöst, kann eig. geclosed werden.
Ja er ist gelöst wie man Unschwer an der Überschrift erkennen kann.



Es ist nunmal meine art so zu schreiben. Wenn sich Leute dadurch Angegriffen fühlen, ist es ihre sache.
freehuntx is offline  
Old 12/31/2010, 03:45   #25
 
elite*gold: 0
Join Date: Mar 2009
Posts: 7,260
Received Thanks: 33,149
Du solltest keine Arbeit nachgehen, bei der du im Kontakt mit Kunden stehst, außer du möchtest für den Kundenservice der Telekom arbeiten.
Wie heißt es so schön, "Einsicht ist der beste Weg zur Besserung".
KDeluxe is offline  
Reply


Similar Threads Similar Threads
Probleme mit den Schleifen x.x
07/23/2010 - AutoIt - 18 Replies
Ja, hallo. :D Mein Problem ist das ich gerne einen Bot bauen würde der einnen Tastendruck ausführt wenn sich ein bestimmer Pixel auf dem Bildschirm verändert. Nur ist das Problem das AutoIt zu lahm ist da der Pixel sich schnell beweget und somit auch seine Farbe ändert und der Bot dann es nichtmehr schafft zuzuschlagen. :P Was ich nun versucht hab ist das man vll. sozusagen eine Tolleranz einbaut wie z.b. bei dem Pixelsearch Befehl nur ich hab ka. wie ich das anstellen soll. Ich...
Auto-Schleifen [Problem]
06/23/2010 - Off Topic - 10 Replies
Hallo, und zwar brauche ich Informationen über das Schleifen. Am besten wäre folgendes: Woher kommt das Schleifen? Wie schleift man richtig?
AutoIt - Frage/Problem bei den Schleifen!!
04/05/2010 - AutoIt - 6 Replies
Nabend, ich hätte da mal eine kleine Frage zum unterbrechen von Endlosschleifen. Und nein, damit meine ich nicht einfach den Befehl "Exitloop"! Also, ich werde mal anhand eines kleinen Test-Scripts versuchen, meine Frage zu erklären: #include <GUIConstants.au3> #Region ### START Koda GUI section ### Form=
Exitloop Problem mit mehreren Schleifen
10/21/2009 - AutoIt - 5 Replies
Abend ! und zwar sieht mein Problem wie folgt aus: While 1=1 (das script) If...Then -hier ist das problem: ich möchte das das programm die while schleife sozusagen pausiert -dann das was gemacht werden soll



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


Powered by vBulletin®
Copyright ©2000 - 2026, 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 ©2026 elitepvpers All Rights Reserved.