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. i2c

Beiträge von i2c

  • Mehrere GUIs OnEventMode PROBLEM

    • i2c
    • 11. Mai 2010 um 19:08
    "dürfte funktionieren"
    [autoit]

    #include <GUIConstants.au3>
    Opt("GUIOnEventMode", 1)

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

    Global $gui, $gui1, $gui2

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

    $gui1 = GUICreate("GUI 1", 200, 200)
    $label1 = GUICtrlCreateLabel("GUI 1", 100, 100)
    $button1 = GUICtrlCreateButton("ENDE", 40, 40)
    GUICtrlSetOnEvent($button1, "close")
    GUISetOnEvent($GUI_EVENT_Close, "close")
    GUISetState(@SW_HIDE)

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

    $gui2 = GUICreate("GUI 2", 200, 200)
    $label2 = GUICtrlCreateLabel("GUI 2", 100, 100)
    $button2 = GUICtrlCreateButton("ENDE", 40, 40)
    GUICtrlSetOnEvent($button2, "close")
    GUISetOnEvent($GUI_EVENT_Close, "close")
    GUISetState(@SW_HIDE)

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

    start()

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

    While 1
    Sleep(1000)
    WEnd

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

    Func start()
    $gui = InputBox("gui", "gui")
    If Not @error Then
    If $gui = "1" Then
    GUISetState(@SW_SHOW, $gui1)
    ElseIf $gui = "2" Then
    GUISetState(@SW_SHOW, $gui2)
    Else
    MsgBox(0, "", "")
    start()
    EndIf
    ElseIf @error = 1 Then
    Exit
    EndIf
    EndFunc ;==>start

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

    Func close()
    GUISetState(@SW_HIDE,$gui1)
    GUISetState(@SW_HIDE,$gui2)
    start()
    EndFunc ;==>close

    [/autoit]
  • Worms

    • i2c
    • 11. Mai 2010 um 18:35
    Zitat von EliteMattthias

    -.- ja motz mich nur an


    [OT]
    Halt mal den Ball flach, ich motz hier niemanden an.
    Dafür das du hier regelmässig derbe austeilst bist du grad ziemlich zart beseitet.
    Meine Meinung werd ich wohl auch ohne dein Einverständnis posten dürfen.
    [/OT]

  • Worms

    • i2c
    • 11. Mai 2010 um 18:17

    Ich wollte lediglich darauf hinweisen das es auch ein Urheberrecht für Grafiken gibt. Daran ändert sich auch nichts, nur weil man einen Hut oder 'nen Joint auf's Bild kopiert.
    So#n Wurm selbst zeichnen kann ja btw auch nicht so schwierig sein. Mal angesehen davon, das man dann durchaus bessere Möglichkeiten hätte das Ding anständig zu animieren.

  • Worms

    • i2c
    • 11. Mai 2010 um 18:00

    Schöne Idee. Obwohl ich ja das alte Ding mit den bananenwerfenden Gorillas auf den Hochhäusern viel besser fand ^^

    Mal so nebenbei. - sicher das es mit diesen aus google kopierten Grafiken keine Probleme gibt?

  • Verzeichnis in eine Listbox

    • i2c
    • 11. Mai 2010 um 16:08

    Bekomm dein Beispiel auf die Schnelle nicht zum laufen.
    Um die Pade in die Listbox zu bekommen bietet sich eine FOR-Schleife an die das Array durchläuft.

    &quot;kleines Beispiel&quot;
    [autoit]

    #include<Array.au3>
    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GUIListBox.au3>
    #include <WindowsConstants.au3>
    #region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Form1", 241, 127, 192, 124)
    $List1 = GUICtrlCreateList("", 8, 8, 121, 97)
    $Button1 = GUICtrlCreateButton("Button1", 136, 8, 75, 25, $WS_GROUP)
    GUISetState(@SW_SHOW)
    #endregion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    $ret = _GetFilesFolder_Rekursiv('k:\', 'exe', 0, 0)
    If IsArray($ret) Then
    For $i = 1 To UBound($ret) - 1
    GUICtrlSetData($List1, $ret[$i])
    Next
    Else
    GUICtrlSetData($List1, "keine Daten")
    EndIf
    EndSwitch
    WEnd

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

    ;==================================================================================================
    ; Function Name: _GetFilesFolder_Rekursiv($sPath [, $sExt='*' [, $iDir=-1 [, $iRetType=0 ,[$sDelim='0']]]])
    ; Description: Rekursive Auflistung von Dateien und/oder Ordnern
    ; Parameter(s): $sPath der Basispfad für die Auflistung ('.' -aktueller Pfad, '..' -Parentpfad)
    ; $sExt Erweiterung für Dateiauswahl '*' oder -1 für alle (Standard)
    ; $iDir -1 Dateien+Ordner(Standard), 0 nur Dateien, 1 nur Ordner
    ; optional: $iRetType 0 gibt Array, 1 gibt String zurück
    ; optional: $sDelim legt Trennzeichen für Stringrückgabe fest
    ; 0 -@CRLF (Standard) 1 -@CR 2 -@LF 3 -';' 4 -'|'
    ; Return Value(s): Array (Standard) od. String mit den gefundenen Pfaden der Dateien und/oder Ordner
    ; Array[0] enthält die Anzahl der gefundenen Dateien/Ordner
    ; Author(s): BugFix ([email='bugfix@autoit.de'][/email])
    ;==================================================================================================
    Func _GetFilesFolder_Rekursiv($sPath, $sExt = '*', $iDir = -1, $iRetType = 0, $sDelim = '0')
    Global $oFSO = ObjCreate('Scripting.FileSystemObject')
    Global $strFiles = ''
    Switch $sDelim
    Case '1'
    $sDelim = @CR
    Case '2'
    $sDelim = @LF
    Case '3'
    $sDelim = ';'
    Case '4'
    $sDelim = '|'
    Case Else
    $sDelim = @CRLF
    EndSwitch
    If ($iRetType < 0) Or ($iRetType > 1) Then $iRetType = 0
    If $sExt = -1 Then $sExt = '*'
    If ($iDir < -1) Or ($iDir > 1) Then $iDir = -1
    _ShowSubFolders($oFSO.GetFolder($sPath), $sExt, $iDir, $sDelim)
    If $iRetType = 0 Then
    Local $aOut
    $aOut = StringSplit(StringTrimRight($strFiles, StringLen($sDelim)), $sDelim, 1)
    If $aOut[1] = '' Then
    ReDim $aOut[1]
    $aOut[0] = 0
    EndIf
    Return $aOut
    Else
    Return StringTrimRight($strFiles, StringLen($sDelim))
    EndIf
    EndFunc ;==>_GetFilesFolder_Rekursiv

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

    Func _ShowSubFolders($Folder, $Ext = '*', $Dir = -1, $Delim = @CRLF)
    If Not IsDeclared("strFiles") Then Global $strFiles = ''
    If ($Dir = -1) Or ($Dir = 0) Then
    For $file In $Folder.Files
    If $Ext <> '*' Then
    If StringRight($file.Name, StringLen($Ext)) = $Ext Then _
    $strFiles &= $file.Path & $Delim
    Else
    $strFiles &= $file.Path & $Delim
    EndIf
    Next
    EndIf
    For $Subfolder In $Folder.SubFolders
    If ($Dir = -1) Or ($Dir = 1) Then $strFiles &= $Subfolder.Path & '\' & $Delim
    _ShowSubFolders($Subfolder, $Ext, $Dir, $Delim)
    Next
    EndFunc ;==>_ShowSubFolders

    [/autoit]

    edit: auch wenn Schnitzel jetzt schon gepostet hat - hab da vorher 2 Skripte inneinanderkopiert, deshlab lief deins nicht auf Anhieb ^^

    Spoiler anzeigen
    [autoit]

    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GUIListBox.au3>
    #include <WindowsConstants.au3>
    #include <File.au3>
    #include <Array.au3>

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

    ; Variable
    $filesIn111 = _GetFilesFolder_Rekursiv('k:\', '*', 0, 0)
    $filesIn222 = _GetFilesFolder_Rekursiv('k:\', '*', 0, 0)

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

    #Region ### START GUI section ### Form=c:\users\rs\desktop\auit\start\form1.kxf
    $Form1_1 = GUICreate("Form1", 436, 388, 261, 124)
    $List1 = GUICtrlCreateList("", 8, 64, 417, 279, BitOR($LBS_SORT,$LBS_STANDARD,$WS_HSCROLL,$WS_VSCROLL,$WS_BORDER))
    $Button1 = GUICtrlCreateButton("&Öffnen", 176, 352, 75, 25, $WS_GROUP)
    $Button2 = GUICtrlCreateButton("111", 8, 32, 75, 25, $WS_GROUP)
    $Button3 = GUICtrlCreateButton("222", 88, 32, 75, 25, $WS_GROUP)
    GUISetState(@SW_SHOW)
    #EndRegion ### END GUI section ###

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

    While 1
    $msg = GUIGetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE
    ExitLoop
    Case $msg = $Button1
    ShellExecute(GUICtrlRead($List1))
    Case $msg = $Button2
    GUICtrlSetData($List1, '') ; Inhaltliches Löschen des Listboxes
    If IsArray($filesIn111) Then
    For $i = 1 To UBound($filesIn111)-1
    GUICtrlSetData($List1, $filesIn111[$i])
    Next
    EndIf
    Case $msg = $Button3
    GUICtrlSetData($List1, '') ; Inhaltliches Löschen des Listboxes
    If IsArray($filesIn222) Then
    For $i = 1 To UBound($filesIn222)-1
    GUICtrlSetData($List1, $filesIn222[$i])
    Next
    EndIf
    EndSelect
    WEnd

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

    ;==================================================================================================
    ; Function Name: _GetFilesFolder_Rekursiv($sPath [, $sExt='*' [, $iDir=-1 [, $iRetType=0 ,[$sDelim='0']]]])
    ; Description: Rekursive Auflistung von Dateien und/oder Ordnern
    ; Parameter(s): $sPath der Basispfad für die Auflistung ('.' -aktueller Pfad, '..' -Parentpfad)
    ; $sExt Erweiterung für Dateiauswahl '*' oder -1 für alle (Standard)
    ; $iDir -1 Dateien+Ordner(Standard), 0 nur Dateien, 1 nur Ordner
    ; optional: $iRetType 0 gibt Array, 1 gibt String zurück
    ; optional: $sDelim legt Trennzeichen für Stringrückgabe fest
    ; 0 -@CRLF (Standard) 1 -@CR 2 -@LF 3 -';' 4 -'|'
    ; Return Value(s): Array (Standard) od. String mit den gefundenen Pfaden der Dateien und/oder Ordner
    ; Array[0] enthält die Anzahl der gefundenen Dateien/Ordner
    ; Author(s): BugFix ([email='bugfix@autoit.de'][/email])
    ;==================================================================================================
    Func _GetFilesFolder_Rekursiv($sPath, $sExt = '*', $iDir = -1, $iRetType = 0, $sDelim = '0')
    Global $oFSO = ObjCreate('Scripting.FileSystemObject')
    Global $strFiles = ''
    Switch $sDelim
    Case '1'
    $sDelim = @CR
    Case '2'
    $sDelim = @LF
    Case '3'
    $sDelim = ';'
    Case '4'
    $sDelim = '|'
    Case Else
    $sDelim = @CRLF
    EndSwitch
    If ($iRetType < 0) Or ($iRetType > 1) Then $iRetType = 0
    If $sExt = -1 Then $sExt = '*'
    If ($iDir < -1) Or ($iDir > 1) Then $iDir = -1
    _ShowSubFolders($oFSO.GetFolder($sPath), $sExt, $iDir, $sDelim)
    If $iRetType = 0 Then
    Local $aOut
    $aOut = StringSplit(StringTrimRight($strFiles, StringLen($sDelim)), $sDelim, 1)
    If $aOut[1] = '' Then
    ReDim $aOut[1]
    $aOut[0] = 0
    EndIf
    Return $aOut
    Else
    Return StringTrimRight($strFiles, StringLen($sDelim))
    EndIf
    EndFunc ;==>_GetFilesFolder_Rekursiv

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

    Func _ShowSubFolders($Folder, $Ext = '*', $Dir = -1, $Delim = @CRLF)
    If Not IsDeclared("strFiles") Then Global $strFiles = ''
    If ($Dir = -1) Or ($Dir = 0) Then
    For $file In $Folder.Files
    If $Ext <> '*' Then
    If StringRight($file.Name, StringLen($Ext)) = $Ext Then _
    $strFiles &= $file.Path & $Delim
    Else
    $strFiles &= $file.Path & $Delim
    EndIf
    Next
    EndIf
    For $Subfolder In $Folder.SubFolders
    If ($Dir = -1) Or ($Dir = 1) Then $strFiles &= $Subfolder.Path & '\' & $Delim
    _ShowSubFolders($Subfolder, $Ext, $Dir, $Delim)
    Next
    EndFunc ;==>_ShowSubFolders

    [/autoit]


    Pfad und Dateifilter müsstest du halt nach Bedarf anpassen.

  • run

    • i2c
    • 11. Mai 2010 um 15:39
    Zitat von EliteMattthias


    Soweit ich weiß macht @WindowsDir oder @ScriptDir bereits einen \, was heissen würde er würde ein falsches (unterverzeichnis) wählen !

    Wissen ist relativ ...

    [autoit]

    MsgBox(0, "", @WindowsDir & @CRLF & @ScriptDir)

    [/autoit]


    Mal ausführen bitte.

  • run

    • i2c
    • 11. Mai 2010 um 15:19

    Auszug aus der dt. Hilfe:

    [autoit]

    Run ( "program" [, "workingdir" [, show_flag[, opt_flag ]]] )

    [/autoit]


    program - Der komplette Pfad des Programms (.EXE, .BAT, .COM oder .PIF), die ausgeführt werden soll.

  • 3D Desktop - Schuhkarton

    • i2c
    • 11. Mai 2010 um 13:35

    Danke für die Info GtaSpider. :thumbup:
    Hatte immer versucht die Tabs auf den Desktop zu ziehen.

  • 3D Desktop - Schuhkarton

    • i2c
    • 11. Mai 2010 um 12:54

    Mach mal einen auf und steck den Kopf rein, dann erklärt es sich von selbst :D

  • Datei suchen + einlesen

    • i2c
    • 10. Mai 2010 um 23:04

    vlt. mal hier reinschauen.

  • shutdown manager gui öffnet sich nicht

    • i2c
    • 10. Mai 2010 um 22:43

    Kurz und knapp - dein übermässiger, unkontrollierter Gebrauch von WHILE Schleifen.

  • 3D Desktop - Schuhkarton

    • i2c
    • 10. Mai 2010 um 18:28
    Zitat von GtaSpider

    Hallo

    Ja, BumTop wurde ja von google aufgekauft ;)
    Ich habe es auch so seit 2 Monaten auf mein System, läuft super stabil und mit höchstens 1-2 prozent auslast (wenn ich noch Webseiten etc auf meinem Desktop hab, die er ja live darstellt).
    Geniales Tool, weiß garnicht wie ich vorher ohne leben konnte ;D

    Gruß
    Spider

    Steeltech - Tolles Theme ^^.
    Webseiten live darstellen? Da hink' ich hinterher. Wie geht das?

  • 3D Desktop - Schuhkarton

    • i2c
    • 10. Mai 2010 um 15:35

    BumpTop ist super. Wenn man jetzt laufende Anwendungen noch als kleine Vorschau an die Wände pinnen könnte ... :rock:
    Schade das das Projekt verkauft wurde. Befürchte fast das da erstmal lange Zeit nix mehr passiert.

  • Downloader

    • i2c
    • 10. Mai 2010 um 13:03

    Hab grad kein Autoit zur Hand aber ungefähr so sollte es funktionieren.

    [autoit]

    $filesize = InetGetInfo($link, 1)
    Do
    Sleep(100)
    GUICtrlSetData($Progress1,(InetGetInfo($link, 0)/$filesize)*100)
    Until InetGetInfo($link, 2)

    [/autoit]
  • Server Log per Ping erstellen

    • i2c
    • 9. Mai 2010 um 16:24
    &quot;oder so?&quot;
    [autoit]

    Func _ping()
    Local $ping[3]
    $ping[0] = "www.google.de"
    $ping[1] = "www.autoit.de"
    $ping[2] = "www.xyz.com"

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

    For $i = 0 To UBound($ping)-1
    $result = Ping($ping[$i])
    Switch @error
    Case 0
    _FileWriteLog(@ScriptDir & "\testlog.log", $ping[$i] & " - Server online - Antwortzeit:" & $result & "ms")
    Case 1
    _FileWriteLog(@ScriptDir & "\testlog.log", $ping[$i] & " - Server offline")
    Case 2
    _FileWriteLog(@ScriptDir & "\testlog.log", $ping[$i] & " - Server nicht erreichbar")
    Case 3
    _FileWriteLog(@ScriptDir & "\testlog.log", $ping[$i] & " - Falsche Adresse")
    Case 4
    _FileWriteLog(@ScriptDir & "\testlog.log", $ping[$i] & " - unbekannter Fehler")
    EndSwitch
    Next
    EndFunc ;==>_ping

    [/autoit]
  • "Herausgeber: Unbekannt" ÄNDERN!

    • i2c
    • 9. Mai 2010 um 15:28

    Natürlich gibt es in Windows vorinstallierte Zertifikate. Die kannst du dir ja z.B. bei verisign kaufen. Darüber bist du dann eindeutig als Herrausgeber identifizierbar.
    Zum installieren benötigt man Adminrechte.

  • "Herausgeber: Unbekannt" ÄNDERN!

    • i2c
    • 9. Mai 2010 um 15:13

    Dein Programm muss beim ersten start eigentlich nur prüfen, ob dein Zertifikat schon in den Quellen des Systems installiert ist. Wenn nicht, lass es installieren. Wenn das passiert ist, wird jedes deiner Programme das mit diesem Zertifikat signiert wurde auf diesem Rechner als authentisch anerkannt. Die Alternative wäre halt mherere hundert Euro in ein Zertifikat von verisign & Co. zu investieren. Ob das allerdings in irgendeinem Verhältnis um tatsächlichen nutzen steht wage ich zu bezweifeln. Dann doch lieber ein paar Zeilen mehr im Skript.

  • "Herausgeber: Unbekannt" ÄNDERN!

    • i2c
    • 9. Mai 2010 um 14:36

    http://www.delphipraxis.net/topic108442.html - guter Lesestoff.

  • steam g15 bot

    • i2c
    • 9. Mai 2010 um 00:18

    Is' gut jetzt?
    Ich denke die Definition von Bot ist durchaus bekannt. Ebenso, was damit in den Forenregeln gemeint ist. Wenn nicht dann kann man das im OT Bereich klären, nicht im H&Ü.
    Hier geht es eindeutig darum ein Applet vor Spielbeginn zu starten und nicht darum, direkten Einfluss auf das Spiel zu nehmen. Also kein Bot im Sinne der Forenregeln.

    Zugegeben, der Threadtitel ost halt unglücklich gewählt.

  • 1200 inis in einem ordner

    • i2c
    • 9. Mai 2010 um 00:09

    irgendwie so?

    [autoit]

    $files = _FileListToArray($path, "*.ini", 1)

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

    For $i = 1 To $files[0]
    $value = IniRead($files[$i], "bla", "blub", "0")
    MsgBox(0, "", $value)
    Next

    [/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™