1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. FireFlyer

Beiträge von FireFlyer

  • Prozessüberwachung

    • FireFlyer
    • 17. Januar 2009 um 20:48

    Bsp 1.

    Spoiler anzeigen
    [autoit]

    ShellExecute("notepad.exe")

    [/autoit] [autoit][/autoit] [autoit]

    HotKeySet('!.', '_Close')

    [/autoit] [autoit][/autoit] [autoit]

    While ProcessExists("notepad.exe")
    sleep(100)
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    MsgBox(0, "", "Notepad wurde beendet, aber dein Programm wird weiterhin ausgeführt")

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _Close()
    ProcessClose("notepad.exe")
    EndFunc

    [/autoit]

    Bsp 2

    Spoiler anzeigen
    [autoit]

    ShellExecute("notepad.exe")

    [/autoit] [autoit][/autoit] [autoit]

    HotKeySet('!.', '_Close')

    [/autoit] [autoit][/autoit] [autoit]

    While ProcessExists("notepad.exe")
    sleep(100)
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    MsgBox(0, "", "Notepad wurde beendet, das Programm wird nun auch beendet")

    [/autoit] [autoit][/autoit] [autoit]

    ;und zwar weil hier keine weitere schleife mehr ist

    [/autoit] [autoit][/autoit] [autoit]

    Func _Close()
    ProcessClose("notepad.exe")
    EndFunc

    [/autoit]
  • Prozessüberwachung

    • FireFlyer
    • 17. Januar 2009 um 20:38

    wenn da untendran nix mehr steht beendet sich das script... wenn du willst das es weiterläuft musst du untendran die nächste schleife reinbaun

    Und nein
    Func deinefunc()
    EndFunc

    Diese Funktion wird hier nur definiert, nicht ausgeführt... ausführen klappt nur mit

    deinefunc()

  • IsArray

    • FireFlyer
    • 17. Januar 2009 um 20:36

    Ich rate dir dennoch dich mit der Funktion Ubound anzufreunden...
    Denn 1. wird nicht überall im index 0 die anzahl mit übergeben (besonders bei UDFs) und vor allem in anderen Sprachen (!)
    2. Ist es ein viel besserer Programmierstil da du dann genau weist was du "willst" wenn du Ubound benutzt ;)

    Auf scriptsprache :D (muss jetzt sein^^)

    [autoit]

    $array[0] = Ubound($array)-1

    [/autoit]
  • Prozessüberwachung

    • FireFlyer
    • 17. Januar 2009 um 20:16

    ProcessExists sollte dir weiterhelfen...

    EditH sagt:
    Ich packs nich warum is einer von euch immer ne Sekunde schneller?... Das is so deprimierend^^

  • FTP mit Autoit

    • FireFlyer
    • 17. Januar 2009 um 12:18

    also du kannst es ja mal auch per cmdline probieren
    das kann auch FTP ;)

    einfach mal die CMD öffnen FTP eingeben und dann help dann siehst du alle befehle, wenn du raushast wie es da funktioniert kannst du es ja mit autoit automatisieren, das hat bei mir eig. immer am besten geklappt :)

  • startseite ändern ff&ie

    • FireFlyer
    • 16. Januar 2009 um 23:02

    @FF

    C:\Dokumente und Einstellungen\USER\Anwendungsdaten\Mozilla\Firefox\Profiles\PROFIL.default\prefs.js

    Und dort die Zeile:
    user_pref("browser.startup.homepage", "www.autoit.de");

    fertig ;)

    //EDIT: *grml* da war ja schon wieder einer schneller^^

  • Zwei MessageBoxen parallel

    • FireFlyer
    • 16. Januar 2009 um 21:42

    joar nur isch hab da jetzt ma so en bissl mit den DLLs angefangen und ich glaub so langsam hab ich alles raus :D... man erkennt sehr viele Sachen in AutoIt wieder FileFindFirstFile z.b. dachte da gibts evt. noch en parameter oder ne dummyfunktion die das auch kann :)...

    Aber ich muss sagen die Arbeit mit DLLCalls macht riesenspass :D

  • Zwei MessageBoxen parallel

    • FireFlyer
    • 16. Januar 2009 um 21:16

    hmpf... das ja doof gibts da kein workaround ausser selber machen oder msgbox extern aufrufen (andere .exe datei)

    Wartet AutoIt hartnäckig auf ein resultat des DLLCalls oder wie?

  • Problem mit cancel einstellung

    • FireFlyer
    • 16. Januar 2009 um 20:54

    Ja nur wenn du was machst ohne die grundlagen zu kennen hängst du ewig an einem problem, zuerst musst du verstehen wie die sprache aufgebaut ist... eben mit funktionen die parameter enthalten und returnwerte zurückgeben... (als einfachste art und weise)

  • Problem mit cancel einstellung

    • FireFlyer
    • 16. Januar 2009 um 20:32

    Das InputBox ist die Funktion, innerhalb der Klammern gibt man Parameter zu der Funktion an was für Parameter das sind und was sie bewirken steht in der Hilfe

    Ich würde dir raten mal ganz von vorne die Tutorials zu machen, dir fehlen Grundlagen

  • Problem mit cancel einstellung

    • FireFlyer
    • 16. Januar 2009 um 20:18

    boa sachma ich habs dir doch geschrieben...

    Spoiler anzeigen
    [autoit]

    $EMail = InputBox ("E-Mail", "Bitte gib deine E-Mail Adresse ein")
    If $EMail = "" Then Exit
    $PASSWORT = InputBox ("Schüler VZ PW", "Bitte gib dein Passwort ein", "", "*") ;HIER
    If $PASSWORT = "" Then Exit
    Run ("C:\Programme\Mozilla Firefox\firefox.exe")
    WinWaitActive ("Startseite von Mozilla Firefox - Mozilla Firefox")
    Sleep (6000)
    MouseClick ("left", 460, 80)
    Send ("http://www.schuelervz.net/")
    sleep (500)
    Send ("{Enter}")
    Sleep (2000)
    MouseClick ("left", 190, 250)
    sleep (300)
    Send ($EMail)
    Sleep (300)
    MouseClick ("left", 190, 295)
    Sleep (300)
    Send ($Passwort,1)
    sleep (300)
    MouseClick ("left", 190, 325)
    Exit

    [/autoit]
  • Problem mit cancel einstellung

    • FireFlyer
    • 16. Januar 2009 um 20:11

    hilfe lesen

    Zitat

    InputBox ( "title", "Prompt" [, "Default" [, "password char" [, Width, Height [, Left, Top [, TimeOut]]]]] )


    password char = passwort zeichen... probier mal das könnte evt. klappen

  • FTP Upload einzelner Dateien

    • FireFlyer
    • 16. Januar 2009 um 20:10
    Zitat

    FireFlyer: Nach Murphys Gesetzt liegt die Wahrscheinlichkeit, dass dieser Fall eintritt, bei genau 100%. :D

    hmpf... da hast du verdammt recht... ^^ ich sag ma: SQL 4 the win :D

  • Zwei MessageBoxen parallel

    • FireFlyer
    • 16. Januar 2009 um 20:00

    man kann doch auch die msgbox per dllcall öffnen... unterbricht das das script auch?

    [autoit]

    $result = DllCall("user32.dll", "int", "MessageBox", "hwnd", 0, "str", "Some text", "str", "Some title", "int", 0)

    [/autoit]

    kanns grad net testen sry... anderen autoitprozess laufen -.-

    -->http://runtime-basic.net/Windows-API:Da….dll:MessageBox
    -->
    Const MB_APPLMODAL = &H0 'Die Messagebox ist Modal zum Programm
    Const MB_SYSTEMMODAL = &H1000 'Die Messagebox ist Modal zum System
    Const MB_TASKMODAL = &H2000 'Die Messagebox ist Modal zum Thread

    evt. dieser Parameter? oder was bedeuten die?

  • FTP Upload einzelner Dateien

    • FireFlyer
    • 16. Januar 2009 um 19:50

    naja wärs nich sinvoller eine datei dafür zu nehmen?...

    also per inetget die logdatei runterzuladen die entsprechenden logs von dem user dazuzuschreiben und danach wieder hochladen?... geht halt nur wenn du genau weisst das es nicht oft vorkommen wird das 2 user das gleichzeitig tun... am besten erstmal lokal eine logdatei schreiben und dann wenn der user das pgr beendet die logdatei vom ftp holn den lokalen log mit reinkopiern und die datei wieder hochladen, sollte nur ein paar sekunden dauern, somit ist der fall das 2 user es gleichzeitig tun relativ gering

  • Problem mit If und EndIf

    • FireFlyer
    • 16. Januar 2009 um 14:20

    zuerstma nimmt man die funcs raus... ;) und dann könnte es evt auch schon stimmen: hier der korriegierte code:

    Spoiler anzeigen
    [autoit]

    #region ### Variablen ###
    $Ver = "3.3.0.0"
    $Inst = "AutoIt v" & $Ver & " Setup"
    #endregion ### Variablen ###

    [/autoit] [autoit][/autoit] [autoit]

    #region ### Check old Version ###
    If Not FileExists(@ProgramFilesDir & "\AutoIt3") Then
    _instautoit()
    ElseIf FileGetVersion(@ProgramFilesDir & "\AutoIt3\" & "AutoIt3.exe") < $Ver Then
    _uninstautoit()
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    Func _uninstautoit()
    ShellExecuteWait(@ProgramFilesDir & "\AutoIt3\Uninstall.exe")
    WinWait("AutoIt v", "Uninstall AutoIt")
    ControlClick("AutoIt v", "Uninstall", "Button2")
    WinWait("AutoIt v", "Uninstallation Complete")
    ControlClick("AutoIt v", "Close", "Button2")
    If FileExists(@ProgramFilesDir & "\AutoIt3") Then
    DirRemove(@ProgramFilesDir & "\AutoIt3",1)
    EndIf
    #endregion ### Check old Version ###
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _instautoit()
    #region ### Installation ###
    run("autoit-v" & $Ver & "-setup.exe")
    WinWait($Inst, "Welcome to the AutoIt")
    ControlClick($Inst, "Next", "Button2")
    WinWait($Inst, "License Agreement")
    ControlClick($Inst, "I Agree", "Button2")
    WinWait($Inst, "Defaults for *.au3")
    ControlCommand($Inst, "Edit the script", "Button5", "Check", "")
    ControlClick($Inst, "Next", "Button2")
    WinWait($Inst, "Choose Components")
    ControlClick($Inst, "Next", "Button2")
    WinWait($Inst, "Choose Install Location")
    ControlSetText($Inst, "Choose the folder in which to install", "Edit1", "C:\Programme\AutoIt3")
    ControlFocus($Inst, "Install", "Button2")
    ControlClick($Inst, "Install", "Button2")
    WinWait($Inst, "Completing the AutoIt v"&$Ver&" Setup Wizard")
    ControlClick($Inst, "Show release notes", "Button4")
    ControlFocus($Inst, "Finish", "Button2")
    ControlClick($Inst, "Finish", "Button2")
    #endregion ### Installation ###

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    #region ### Deutsches Helpfile kopieren ###
    FileCopy(@ProgramFilesDir & "\AutoIt3\AutoIt.chm", @ProgramFilesDir & "\AutoIt3\AutoIt_englisch.chm", 1)
    ;FileCopy("AutoIt_deutsch.chm", @ProgramFilesDir & "\AutoIt3\AutoIt.chm", 1)
    FileCopy("*.chm", @ProgramFilesDir & "\AutoIt3\", 1)
    #endregion ### Deutsches Helpfile kopieren ###
    EndFunc

    [/autoit]
  • spiegel spiel

    • FireFlyer
    • 16. Januar 2009 um 14:08

    Und jetzt die Konterfrage... in der ich mir ein Eigentor schiesse... aber egal

    Brauchen wir das für so ein Spiel?... Wenn wir ein Spiel mit solchen anforderungen entwickeln die das unterstützen, können wir uns gleich an ner uni melden^^... als physiker xD...

    Naja ich hab auch wenig Ahnung davon, Schulbildung halt und dann noch so aus reinem interesse gelesene Zeitschriften / Bücher...

    Mein Onkel (Thomas Baumert) macht sowas: http://www.physik.uni-kassel.de/exp3.html
    Ist aber eher in die richtung Nano-Physik, hat aber auch was mit Licht zu tun ;)...

  • spiegel spiel

    • FireFlyer
    • 16. Januar 2009 um 13:48

    tja hättest du ma in physik aufgepasst dann wüsstest du das Licht auch nur hochfrequente Wellen sind :D
    Naja sagen wir es mal besser so: Licht hat die physikalischen Eigenschaften einer Welle ... sonst verstehst du mich ja wieder falsch :P

  • GAMES von Netzwerkfreigabe kopieren

    • FireFlyer
    • 16. Januar 2009 um 13:18

    zu 1.

    Spoiler anzeigen
    [autoit]

    $var = DriveGetDrive( "all" )
    If NOT @error Then
    MsgBox(4096,"", "Found " & $var[0] & " drives")
    For $i = 1 to $var[0]
    MsgBox(4096,"Drive " & $i, $var[$i])
    MsgBox(4096,"Drive " & $i,DriveSpaceFree( $var[$i]))
    Next
    EndIf

    [/autoit]
  • FileSelectFolder Problem // Scorps MP3-Kopierer v0.94

    • FireFlyer
    • 16. Januar 2009 um 12:47

    einfach so:

    Spoiler anzeigen
    [autoit]

    #AutoIt3Wrapper_Res_Fileversion=0.91
    #RequireAdmin
    #include <GuiConstantsEx.au3>
    #Include <File.au3>
    Dim $SoftwareTitel = "Scorp's Mp3-Kopierer v0.91"
    Dim $Pfad

    [/autoit] [autoit][/autoit] [autoit]

    GuiCreate($SoftwareTitel, 300, 190)
    GuiSetIcon("%SystemRoot%\system32\SHELL32.dll", 41)
    $context = GuiCtrlCreateContextMenu ()
    $contextInfo = GuiCtrlCreateMenuitem ("Informationen",$context)

    [/autoit] [autoit][/autoit] [autoit]

    ;$Quelle = FileSelectFolder ("Den Quellordner mit der Musik auswählen:", "root dir", 2)
    ;$Ziel = FileSelectFolder ("Den Zielordner auswählen:", "root dir", 3)
    $Quelle =""
    $Ziel = ""


    GuiCtrlCreateLabel("Aus dem Quellverzeichnis werden zufällig Dateien ausgesucht und ins Zielverzeichnis kopiert.", 10, 10, 300, 40)

    GuiCtrlCreateLabel("Größe:", 10, 53)
    $AllowedSize = GuiCtrlCreateInput("3000", 60, 50, 30, 18)
    GuiCtrlCreateLabel("Mbyte", 93, 53)

    GuiCtrlCreateLabel("Quelle:", 10, 83)
    $Quelle = GUICtrlCreateInput($Quelle, 60, 80, 200)
    $QuelleSuchen = GuiCtrlCreateButton("+", 265, 80, 20, 20)

    [/autoit] [autoit][/autoit] [autoit]

    GuiCtrlCreateLabel("Ziel:", 10, 113)
    $Ziel = GUICtrlCreateInput($Ziel, 60, 110, 200)
    $ZielSuchen = GuiCtrlCreateButton("+", 265, 110, 20, 20)


    $weiter = GuiCtrlCreateButton("Weiter", 200, 150, 65)
    $schliessen = GuiCtrlCreateButton("Schließen", 50, 150, 65)

    $AllowedSize = GUICtrlRead($AllowedSize)
    $Quelle = GUICtrlRead($Quelle)
    $Ziel = GUICtrlRead($Ziel)

    [/autoit] [autoit][/autoit] [autoit]

    GUISetState()
    While 1
    $msg = GUIGetMsg()
    Select
    case $msg = $QuelleSuchen
    $Quelle = FileSelectFolder("Den Quellordner auswählen:", "root dir", 2)
    GUICtrlSetData($input, $Quelle) ;ANSTATT $input nurnoch deines ersetzen fertig
    case $msg = $ZielSuchen
    $Ziel = FileSelectFolder("Den Zielordner auswählen:", "root dir", 3)
    Case $msg = $contextInfo
    MsgBox(64, "Informationen", "Der "&$SoftwareTitel&" wurde von Norman Schlorke entwickelt."&@LF&@LF&"Kontakt:"&@LF&"ICQ: 344-167-834"&@LF&"Mail: norman.schlorke@gmx.de")
    Case $msg = $GUI_EVENT_CLOSE Or $msg = $schliessen
    ExitLoop
    Case $msg = $weiter
    If $AllowedSize < 50 Or $AllowedSize > 5000 Then
    MsgBox(48, "Fehler!", "Die Eingabe der Größe in Mbyte war nicht gültig:"&@LF&"Die Eingabe darf nur zwischen 50 und 5000 sein!")
    ExitLoop
    EndIf
    $AllowedSize = $AllowedSize*1024*1024 ;Allowed Size in Byte umrechnen
    GUIDelete()
    GuiCreate($SoftwareTitel, 300, 250)

    $alles = _FileListToArray($Quelle, "*.mp3")
    $Anzahl = Ubound($alles)
    If $Anzahl < 1 Then
    MsgBox(48, "Fehler!", "Es wurden keine MP3-Dateien gefunden!"&@LF&@LF&$SoftwareTitel&" wird geschlossen!")
    ExitLoop
    EndIf
    $Groesse = 0
    $anzahlDateien = 0
    DirRemove($Ziel,1)
    DirCreate($Ziel)
    MsgBox(64, "Dateien werden kopiert", "Dateien werden kopiert..."&@LF&"Das kann ein bisschen dauern.")
    While $Groesse < $AllowedSize ;3758096384
    $Zufall = Random(1,$Anzahl, 1)
    $aktDatei = $Quelle&"\"&$alles[$Zufall]
    $DateiGroesse = FileGetSize($aktDatei)
    If $DateiGroesse > 20971520 Then
    Else
    FileCopy($aktDatei, $Ziel,8)
    $anzahlDateien = $anzahlDateien+1
    $Groesse = $Groesse + $DateiGroesse
    EndIf
    WEnd

    GuiCtrlCreateLabel("Es wurden "&$anzahlDateien&" Dateien zufällig ausgewählt und kopiert.", 10, 123)
    GuiCtrlCreateLabel("Insgesamt wurden "&Round($Groesse/1024/1024, 2)&" Mb kopiert.", 10, 163)
    $schliessen = GuiCtrlCreateButton("Schließen", 50, 215, 65)

    [/autoit] [autoit][/autoit] [autoit]

    GUISetState()
    EndSelect
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    GUIDelete()

    [/autoit] [autoit][/autoit] [autoit]

    Exit

    [/autoit]

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™