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

Beiträge von nuts

  • PC-Pinger

    • nuts
    • 1. Juli 2009 um 18:35

    Ist zwar nichts aufregendes - trotzdem praktisch!
    Noch cooler wäre es wenn der Fokus nach 3 Zahlen automatisch weiterspringen würde!

    1. abfragen welches Input den Fokus hat (GUICtrlGetState oder sowas)
    2. "Stringlen" bestimmen
    3. ggf weiterspringen

    Blöderweise funktioniert das so gerade nicht bei mir. X(

  • Betriebssystem in Autoit

    • nuts
    • 1. Juli 2009 um 17:42
    Zitat von GtaSpider

    Hallo

    Wurde schon oft sowas versucht:
    http://www.autoitscript.com/forum/index.php?showtopic=55507&hl=Shell
    http://www.autoitscript.com/forum/index.php?showtopic=86777&hl=Shell
    http://www.autoitscript.com/forum/index.php?showtopic=61593&hl=Shell
    http://www.autoitscript.com/forum/index.php?showtopic=55252&hl=Shell

    Mfg Spider

    Und das Fazit aus diesen Projekten war? "Kein sinnvoller Shell-Ersatz möglich" oder "läuft super"?

    Eine eigene Oberfläche wäre vermutlich ziemlich Mediacenter tauglich.

  • Downloader umschreiben

    • nuts
    • 1. Juli 2009 um 13:27

    Und wo wird dein Input ausgelesen? ?(

  • RegExp??

    • nuts
    • 1. Juli 2009 um 13:21
    Spoiler anzeigen
    [autoit]


    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <ListViewConstants.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <File.au3>
    #include <String.au3>
    #include <GuiListView.au3>
    #include <Array.au3>

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

    #Region ### START Koda GUI section ### Form=

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

    $Form1 = GUICreate("AD-Computer", 886, 617, 477, 169)

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

    $ListViewserver = GUICtrlCreateListView("Server", 32, 48, 250, 478)
    $ListView1 = GUICtrlGetHandle($ListViewserver)
    $ListViewclient = GUICtrlCreateListView("Client", 296, 48, 250, 478)
    $ListViewmaschiene = GUICtrlCreateListView("Maschiene", 567, 46, 250, 478)
    $Auslesen = GUICtrlCreateButton("Auslesen", 32, 544, 75, 25, 0)
    $Serverexport = GUICtrlCreateButton("Serverexport", 208, 528, 75, 25, 0)
    $Clientexport = GUICtrlCreateButton("Clientexport", 472, 528, 75, 25, 0)
    $Maschineexport = GUICtrlCreateButton("Maschineexport", 744, 528, 75, 25, 0)
    $Countserver = GUICtrlCreateLabel("Countserver", 216, 24, 61, 17)
    $CountClient = GUICtrlCreateLabel("countclient", 484, 23, 56, 17)
    $Countmaschien = GUICtrlCreateLabel("Countmaschien", 736, 24, 77, 17)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    case $Auslesen
    _Load()
    EndSwitch
    WEnd

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

    Func _Load() ; Datenbank-Datei laden
    _GUICtrlListView_DeleteAllItems($ListView1) ; Das Handle eben noch bestimmen (s. Anfang des Threads)
    Local $sItem
    $FileOpenDialog = FileOpenDialog("Pc Liste Wählen", @ScriptDir & "\", "Pc Liste (*.txt;*.csv)", 1 + 4)
    Local $hFile = FileOpen($FileOpenDialog, 0) ; Datei zum lesen öffnen
    If $hFile <> -1 Then ; wenn das öffnen erfolgreich war, dann...
    _GUICtrlListView_BeginUpdate($ListView1) ; Listview sperren
    FileReadLine($hFile) ;liest Zeile 1 ein - die solle ja weg bleiben
    While True ; Endlosschleife
    $sItem = FileReadLine($hFile) ; jetzt gehts ab Zeile 2 weiter
    If @error Then ExitLoop ; wenn das Ende der Datei erreicht ist, dann Endlosschleife verlassen
    local $string = StringRegExpReplace($sitem, 'CN=(.+?),OU=.+?,OU=.+?,OU=(.+?),.+DC=com (.+)', '$1, $2, $3') ;Der reguläre Ausdruck von Oscar
    GUICtrlCreateListViewItem($string, $ListViewserver) ; mit den eingelesenen Daten einen neuen Listview-Eintrag erstellen
    WEnd
    _GUICtrlListView_EndUpdate($ListView1) ; Listview wieder freigeben
    FileClose($hFile) ; Datei schließen
    EndIf
    EndFunc ;==>_Load

    [/autoit]

    Habs zum testen umgebaut und vereinfacht.
    Sollte jetzt laufen - bei der angepassten _Load() Funktion war diese Zeile

    [autoit]

    If @error Then ExitLoop ; wenn das Ende der Datei erreicht ist, dann Endlosschleife verlassen

    [/autoit]

    nicht mehr unter

    [autoit]

    $sItem = FileReadLine($hFile) ; jetzt gehts ab Zeile 2 weiter

    [/autoit]

    und dann hängt das Skript in der While ... Wend Schleife fest.

  • RegExp??

    • nuts
    • 1. Juli 2009 um 12:17

    Klar ;)

    Was ist dein Ziel?
    Was funktioniert nicht?
    Ggf. Rest vom Skript posten.
    Kurzes Feedback zu den vorgeschlagenen Funktionen geben.

    Vermutlich fehlt FileOpen?

  • RegExp??

    • nuts
    • 1. Juli 2009 um 11:48

    So ziemlich alles :P

  • Comboeinträge mit $WM_COMMAND

    • nuts
    • 30. Juni 2009 um 23:25

    http://msdn.microsoft.com/en-us/library/ms647591(VS.85).aspx würde ich mal vermuten.

    Mir hilft das aber regelmäßig trotzdem nicht weiter. :D

  • Virtuelle Ini-Datei?

    • nuts
    • 30. Juni 2009 um 22:11

    Naja meistens verwendet man (ich zumindest) doch sowieo Variablen (oder ein Array)? Einmal einlesen und mit dem ausgelesenen Wert weiterarbeiten - wann wieder abgespeichert wird kommt dann auf den Verwendungszweck an. Wo sind dabei die "unnötigen" Festplattenzugriffe?

  • RegExp??

    • nuts
    • 30. Juni 2009 um 17:32
    Spoiler anzeigen
    [autoit]


    Func _Load() ; Datenbank-Datei laden
    _GUICtrlListView_DeleteAllItems($ListView1) ; Das Handle eben noch bestimmen (s. Anfang des Threads)
    Local $sItem
    $FileOpenDialog = FileOpenDialog("Pc Liste Wählen", @ScriptDir & "\", "Pc Liste (*.txt;*.csv)", 1 + 4)
    Local $hFile = FileOpen($FileOpenDialog, 0) ; Datei zum lesen öffnen
    If $hFile <> -1 Then ; wenn das öffnen erfolgreich war, dann...
    _GUICtrlListView_BeginUpdate($ListView1) ; Listview sperren
    FileReadLine($hFile) ;liest Zeile 1 ein - die solle ja weg bleiben
    While True ; Endlosschleife
    $sItem = FileReadLine($hFile) ; jetzt gehts ab Zeile 2 weiter
    local $string = StringRegExpReplace($sitem, 'CN=(.+?),OU=.+?,OU=.+?,OU=(.+?),.+DC=com (.+)', '$1, $2, $3') ;Der reguläre Ausdruck von Oscar
    If @error Then ExitLoop ; wenn das Ende der Datei erreicht ist, dann Endlosschleife verlassen
    GUICtrlCreateListViewItem($string, $ListView1) ; mit den eingelesenen Daten einen neuen Listview-Eintrag erstellen
    WEnd
    _GUICtrlListView_EndUpdate($ListView1) ; Listview wieder freigeben
    FileClose($hFile) ; Datei schließen
    EndIf
    EndFunc ;==>_Load

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

    Versuchs mal so - ist aber im Forum gebastelt und ich hab mich auf Oscars Zeile mit StringRegExpReplace verlassen.

  • checkboxen

    • nuts
    • 30. Juni 2009 um 17:19

    Einfach mit GuiCtrlread den Status abfragen und darauf reagieren.

    [autoit]


    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>

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

    #Region ### START Koda GUI section ### Form=C:\Dokumente und Einstellungen\Yologlu1\Desktop\koda_2008-10-03\Forms\check.kxf
    $Form1 = GUICreate("Form1", 633, 447, 374, 132)
    $Checkbox1 = GUICtrlCreateCheckbox("Checkbox1", 16, 40, 161, 33)
    $Checkbox2 = GUICtrlCreateCheckbox("Checkbox2", 8, 88, 177, 33)
    $Checkbox3 = GUICtrlCreateCheckbox("Checkbox3", 8, 136, 185, 33)
    $Button1 = GUICtrlCreateButton("installieren", 160, 296, 289, 49, 0)
    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
    if GUICtrlRead($Checkbox1) = $gui_checked then MsgBox(1, "", "Checkbox1")
    if GUICtrlRead($Checkbox2) = $gui_checked then MsgBox(1, "", "Checkbox2")
    if GUICtrlRead($Checkbox3) = $gui_checked then MsgBox(1, "", "Checkbox3")
    EndSwitch
    WEnd

    [/autoit]
  • select frage

    • nuts
    • 30. Juni 2009 um 17:02

    Funktioniert alles so wie du es vor hast - ist nur ein kleiner Schönheitsfehler.

    [autoit]

    #include <GUIConstants.au3>

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

    GUICreate("WOW RING-DING", 200, 100)
    $startbutton = GUICtrlCreateButton("start", 10, 10, 60)
    $closebutton = GUICtrlCreateButton("close", 10, 40, 60)
    GUISetState(@SW_SHOW)

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

    While 1
    $msg = GUIGetMsg()
    Select
    Case $msg = $startbutton
    $farbe1 = PixelSearch(1423, 76, 1650, 235, 0xE9B001, 5)
    If IsArray($farbe1) Then
    SoundPlay("far10.wav", 5)
    Sleep(15000)
    EndIf
    Case $msg = $closebutton
    ExitLoop
    EndSelect
    WEnd

    [/autoit]
  • RegExp??

    • nuts
    • 30. Juni 2009 um 16:57
    Zitat von subzero007


    Es ist mir unangenehm aber Wie löscht man die erste zeile?

    Kommt drauf an 8)
    Wie wird die .txt Datei eingelesen? FileReadLine mit einer Schleife? _FileReadToArray?

  • GUI nach Func in ausgangszustand zurücksetzen?

    • nuts
    • 30. Juni 2009 um 14:01

    Mhm verstehs nicht ganz. Du solltest dir angewöhnen den Variablen eindeutige Bezeichnungen zu geben und Doppelbelegungen zu vermeiden.

    So?

    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Gui1", 625, 443, 192, 124)
    $MenuItem1 = GUICtrlCreateMenu("&Help")
    $MenuItem8 = GUICtrlCreateMenu("S&et´s")
    $MenuItem13 = GUICtrlCreateMenuItem("Namen", $MenuItem8)
    $Label1 = GUICtrlCreateLabel("Name:", 88, 80, 61, 17)
    $Input1 = GUICtrlCreateInput("Input1", 224, 80, 121, 21)
    $Label2 = GUICtrlCreateLabel("Name2", 88, 112, 55, 17)
    $Input2 = GUICtrlCreateInput("Input2", 224, 112, 121, 21)
    $namesetz = GUICtrlCreateButton("Setzen", 16, 145, 75, 25, $WS_GROUP)
    Global $name2 = GUICtrlRead($Input1)
    Global $name1 = GUICtrlRead($Input2)
    BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS)
    #EndRegion ### END Koda GUI section ###

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

    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    #Region ### START Koda GUI section ### Form=
    $Form2 = GUICreate("Gui2t", 625, 443, 192, 124)
    $MenuItem2 = GUICtrlCreateMenu("&Help")
    $MenuItem9 = GUICtrlCreateMenu("S&et´s")
    $MenuItem14 = GUICtrlCreateMenuItem("Namen", $MenuItem9)
    $Label1 = GUICtrlCreateLabel("Name:", 88, 80, 61, 17)
    $Input1 = GUICtrlCreateInput("Input1", 224, 80, 121, 21)
    $Label2 = GUICtrlCreateLabel("Name2", 88, 112, 55, 17)
    $Input2 = GUICtrlCreateInput("Input2", 224, 112, 121, 21)
    $namesetz = GUICtrlCreateButton("Setzen", 16, 145, 75, 25, $WS_GROUP)
    Global $name2 = GUICtrlRead($Input1)
    Global $name1 = GUICtrlRead($Input2)
    BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS)
    #EndRegion ### END Koda GUI section ###

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

    while 1
    $nMsg = GUIGetMsg()

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

    Switch $nMsg
    case -3
    exit
    Case $MenuItem13
    GUISetState(@SW_HIDE, $Form1)
    GUISetState(@SW_SHOW, $Form2)

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

    Case $MenuItem14
    GUISetState(@SW_HIDE, $Form2)
    GUISetState(@SW_SHOW, $Form1)

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

    EndSwitch
    WEnd

    [/autoit]
  • GUI nach Func in ausgangszustand zurücksetzen?

    • nuts
    • 30. Juni 2009 um 13:18
    Zitat von Sithlord95

    sorry ich weiß ncih was du von mir willst
    also zuerst solltest du das ncih verstecken sondern die funktion

    [autoit]


    guictrldelete

    [/autoit]


    verwenden

    und bitte schreib jetzt nochmal schritt für schritt auf was du willst und wo die fehler liegen
    und in angemessenem deutsch mit kommas und punkten ....

    dann bin ich sicher das wir dir helfen können


    :D

    Zum Problem: Irgendwie ist das Skript etwas konfus aufgebaut.
    Schau mal hier: [ offen ] Probleme mit der GUI
    Vielleicht solltest du es so aufbauen?

  • Boottime von PC in Registry schreiben

    • nuts
    • 30. Juni 2009 um 12:06

    Wenn das Skript automatisch mit dem Anmelden ausgeführt wird und sofort das Systemdatum (zeit) ausliest sollte das doch ungefähr stimmen?

    Oder willst du bestimmen wann der "Powerknopf" am PC gedrückt wurde? ?(

  • Boottime von PC in Registry schreiben

    • nuts
    • 30. Juni 2009 um 11:44

    Ok dann verstehe ich die Aufgabenstellung nicht 8)

  • Boottime von PC in Registry schreiben

    • nuts
    • 30. Juni 2009 um 11:33

    Für Datum und Uhrzeit gibt es ja Macros:

    [autoit]

    $boottime = @YEAR & "/" & @MON & "/" & @MDAY & " " & @HOUR & ":" & @MIN & ":" & @SEC

    [/autoit]

    Das Skript dann in den Autostart ziehen und fertig.

  • Probleme mit der GUI

    • nuts
    • 30. Juni 2009 um 11:19

    Es ist meistens sinnvoll zuerst alle Gui-Elemente zu erstellen und anschließend mit @SW_HIDE und @SW_Show zu arbeiten.

    Beispiel:

    Spoiler anzeigen
    [autoit]


    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>

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

    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Form1", 583, 180, 398, 112)
    GUICtrlCreateLabel("Auto-Install- Programm V 7 by Bahadir Yologlu", 0, 0, 582, 36)
    GUICtrlSetFont(-1, 20, 400, 0, "MS Sans Serif")
    $Button1 = GUICtrlCreateButton("Standardinstallation", 16, 96, 185, 33, 0)
    $Button2 = GUICtrlCreateButton("Benutzerdefinierte Installation", 304, 96, 185, 33, 0)
    $Button3 = GUICtrlCreateButton("Beenden", 184, 144, 177, 25, 0)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    #Region ### START Koda GUI section ### Form=
    $Form2 = GUICreate("Form2", 558, 333, 413, 329)

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

    $Button7 = GUICtrlCreateButton("Acrobat Reader 9", 8, 144, 209, 33, 0)
    $Button8 = GUICtrlCreateButton("Tren Micro", 8, 184, 209, 33, 0)
    $Button9 = GUICtrlCreateButton("Addison", 8, 224, 209, 33, 0)

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

    $Button15 = GUICtrlCreateButton("zurück", 480, 24, 57, 33, 0)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    case -3
    exit
    Case $Button1
    Run("1. gs854w32.exe", "")
    MsgBox(4096, "Ghostscript", "GhostScript Erfolgreich installiert.Diese Box wird sich in 10 Sekunden selbst schließen", 10)
    Case $Button3
    Exit

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

    Case $Button2
    GUISetState(@SW_HIDE, $Form1)
    GUISetState(@SW_SHOW, $Form2)
    Case $Button15
    GUISetState(@SW_HIDE, $Form2)
    GUISetState(@SW_SHOW, $Form1)

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

    EndSwitch
    WEnd

    [/autoit]

    @Radio Buttons
    Erstelle doch einfach die Radio Buttons, frage deren Status ab und entscheide über eine If ... then Schleife ob installiert werden soll oder nicht.

  • Ping Tool

    • nuts
    • 25. Juni 2009 um 14:50

    Punkt1: Mit solchen Problemen habe ich regelmäßig auch zu kämpfen.
    Ob sich das mit autoit überhaupt so ganz optimal lösen lässt? Schließlich wird eben Zeile für Zeile das Skript interpretiert.
    Hier mal eine Möglichkeit.

    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>
    #include <ListViewConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <ListViewConstants.au3>
    #include <array.au3>
    #Include <File.au3>
    #Include <GuiListView.au3>
    #include <GUIConstantsEx.au3>
    #include <ListViewConstants.au3>
    #include <WindowsConstants.au3>

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

    Local $ad, $array1, $x = 0
    global $dummy = 0 ;um die Pingall Schleife zu verlassen wird dieser Wert später auf 1 gesetzt (s. WM_Command & _Pingall )
    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Ping Tool", 700, 510, 257, 323)
    $ListView1 = GUICtrlCreateListView("Hostname", 24, 48, 170, 342)
    GUICtrlSendMsg($ListView1, $LVM_SETCOLUMNWIDTH, 0, 160) ; setzt die 1. Spalte des Listviews auf 160 Pixel Breite
    $ListView2 = GUICtrlCreateListView("Online", 224, 48, 170, 342)
    GUICtrlSendMsg($ListView2, $LVM_SETCOLUMNWIDTH, 0, 160)
    $ListView3 = GUICtrlCreateListView("Offline", 424, 48, 186, 342)
    GUICtrlSendMsg($ListView3, $LVM_SETCOLUMNWIDTH, 0, 160)
    $hostladen = GUICtrlCreateButton("PC`s Laden", 24, 400, 60, 25, 0)
    $check = GUICtrlCreateButton("Check", 24, 432, 50, 25, 0)
    $stop = GUICtrlCreateButton("Stop", 24, 460, 50, 25, 0)

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

    $checkall = GUICtrlCreateButton("Check All", 75, 432, 50, 25, 0)
    $export1 = GUICtrlCreateButton("export1", 136, 400, 59, 25, 0)
    $export2 = GUICtrlCreateButton("export2", 336, 400, 59, 25, 0)
    $export3 = GUICtrlCreateButton("export3", 552, 400, 59, 25, 0)
    $chost = GUICtrlCreateButton("Clear Host", 80, 20, 59, 25, 0)

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

    $countoffline = GUICtrlCreateLabel("", 575, 20, 65, 25)
    $conline = GUICtrlCreateButton("Clear Online", 270, 20, 65, 25, 0)
    $countonline = GUICtrlCreateLabel("", 360, 20, 65, 25)

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

    $coffline = GUICtrlCreateButton("Clear Offline", 490, 20, 65, 25, 0)
    $counthost = GUICtrlCreateLabel("", 160, 20, 65, 25)

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

    GUISetState(@SW_SHOW)
    GUIRegisterMsg($WM_COMMAND, "WM_COMMAND")
    #EndRegion ### END Koda GUI section ###
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $hostladen
    _Load()
    Case $check

    _pingitem()
    case $checkall
    _pingall()
    Case $coffline
    _GUICtrlListView_DeleteAllItems($ListView3)
    Case $conline
    _GUICtrlListView_DeleteAllItems($ListView2)
    Case $chost

    _GUICtrlListView_DeleteAllItems($ListView1)

    case $export1
    _export1()
    case $export2
    _export2()
    case $export3
    _export2()

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

    EndSwitch
    WEnd

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

    Func _export1()
    ; $path = FileSaveDialog('ListView-Export speichern', @ScriptDir, '(*.txt)')
    ; $hWnd = $listview1
    ; FileWrite($path, _GUICtrlListView_Export $hWnd, 1, ',')

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

    ;FileWrite($path, _GUICtrlListView_Export ($hWnd, 1, ',')
    $hWnd = $listview1
    $path = FileSaveDialog('ListView-Export speichern', @ScriptDir, "CSV Datei (*.csv)")
    If @error Then Exit MsgBox(0, 'Fehler', 'Keine Zieldatei gewählt.')
    FileWrite($path & ".csv", _GUICtrlListView_Export($hWnd, 1, ','))

    EndFunc

    Func _export2()
    ; $path = FileSaveDialog('ListView-Export speichern', @ScriptDir, '(*.txt)')
    ; $hWnd = $listview1
    ; FileWrite($path, _GUICtrlListView_Export $hWnd, 1, ',')

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

    ;FileWrite($path, _GUICtrlListView_Export ($hWnd, 1, ',')
    $hWnd = $listview2
    $path = FileSaveDialog('ListView-Export speichern', @ScriptDir, "CSV Datei (*.csv)")
    If @error Then Exit MsgBox(0, 'Fehler', 'Keine Zieldatei gewählt.')
    FileWrite($path & ".csv", _GUICtrlListView_Export($hWnd, 1, ','))

    EndFunc

    Func _export3()
    ; $path = FileSaveDialog('ListView-Export speichern', @ScriptDir, '(*.txt)')
    ; $hWnd = $listview1
    ; FileWrite($path, _GUICtrlListView_Export $hWnd, 1, ',')

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

    ;FileWrite($path, _GUICtrlListView_Export ($hWnd, 1, ',')
    $hWnd = $listview3
    $path = FileSaveDialog('ListView-Export speichern', @ScriptDir, "CSV Datei (*.csv)")
    If @error Then Exit MsgBox(0, 'Fehler', 'Keine Zieldatei gewählt.')
    FileWrite($path & ".csv", _GUICtrlListView_Export($hWnd, 1, ','))

    EndFunc

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


    Func _Load() ; Datenbank-Datei laden
    _GUICtrlListView_DeleteAllItems($ListView1) ; Das Handle eben noch bestimmen (s. Anfang des Threads)
    _count()
    Local $sItem
    $FileOpenDialog = FileOpenDialog("Pc Liste Wählen", @ScriptDir & "\", "Pc Liste (*.txt;*.csv)", 1 + 4)
    Local $hFile = FileOpen($FileOpenDialog, 0) ; Datei zum lesen öffnen
    If $hFile <> -1 Then ; wenn das öffnen erfolgreich war, dann...
    _GUICtrlListView_BeginUpdate($ListView1) ; Listview sperren
    While True ; Endlosschleife
    $sItem = FileReadLine($hFile) ; Zeile aus der Datei lesen
    If @error Then ExitLoop ; wenn das Ende der Datei erreicht ist, dann Endlosschleife verlassen
    GUICtrlCreateListViewItem($sItem, $ListView1) ; mit den eingelesenen Daten einen neuen Listview-Eintrag erstellen
    WEnd
    _GUICtrlListView_EndUpdate($ListView1) ; Listview wieder freigeben
    FileClose($hFile) ; Datei schließen
    _count()
    EndIf
    EndFunc ;==>_Load

    Func _insert()
    $string = FileOpenDialog("Pc Liste Wählen", @ScriptDir & "\", "Pc Liste (*.txt;*.csv)", 1 + 4 )
    _GUICtrlListView_DeleteAllItems($ListView1)
    _GUICtrlListView_DeleteAllItems($ListView2)
    _GUICtrlListView_DeleteAllItems($ListView3)
    $array = StringSplit(FileRead($string),@CR)
    For $i = 0 To UBound($array) - 1
    GUICtrlCreateListViewItem($array[$i], $ListView1)
    Next
    EndFunc

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

    Func _pingall()
    _count()
    _GUICtrlListView_DeleteAllItems($ListView2)
    _GUICtrlListView_DeleteAllItems($ListView3)
    local $icount = _GUICtrlListView_GetItemCount($ListView1)
    for $i = 0 to $icount -1
    if $dummy = 1 then
    $dummy = 0
    return
    endif
    $ListViewText = _GUICtrlListView_GetItemTextArray($listview1, $i)
    ;consolewrite($ListViewText[1]&@CRLF)
    $var = Ping($ListViewText[1],250)
    Switch @error
    Case 1
    GUICtrlCreateListViewItem($ListViewText[1], $ListView3)
    _count()
    Case 2
    GUICtrlCreateListViewItem($ListViewText[1], $ListView3)
    _count()
    Case 3
    GUICtrlCreateListViewItem($ListViewText[1], $ListView3)
    _count()
    Case 4
    GUICtrlCreateListViewItem($ListViewText[1], $ListView3)
    _count()
    case Else
    GUICtrlCreateListViewItem($ListViewText[1], $ListView2)
    _count()
    EndSwitch
    next
    EndFunc

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

    Func _pingitem()
    _count()
    $ListViewText = _GUICtrlListView_GetItemTextArray($listview1)
    consolewrite($ListViewText[1]&@CRLF)
    $var = Ping($ListViewText[1],100)
    If $var Then
    GUICtrlCreateListViewItem($ListViewText[1] & " online Antwortzeit: " & $var , $ListView2)
    _count()
    ;Msgbox(0,"Status","Online, Antwortzeit war:" & $var)
    Else
    GUICtrlCreateListViewItem($ListViewText[1] & " offline Fehler: " & @error , $ListView3)
    _count()
    ;Msgbox(0,"Status","Es ist ein Fehler mit der Nummer " & @error & " aufgetreten.")
    EndIf
    EndFunc

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

    Func _GUICtrlListView_Export($hWnd, $exType=0, $Delim=Default) ; $exType=0 Array / $exType=1 String
    If Not IsHWnd($hWnd) Then $hWnd = GUICtrlGetHandle($hWnd)
    Local $row = _GUICtrlListView_GetItemCount($hWnd)
    If $exType Then
    If $Delim <> Default Then Local $oldDelim = Opt('GUIDataSeparatorChar', $Delim)
    Local $sOut = ''
    For $i = 0 To $row -1
    $sOut &= _GUICtrlListView_GetItemTextString($hWnd, $i) & @CRLF
    Next
    If $Delim <> Default Then Opt('GUIDataSeparatorChar', $oldDelim)
    Return $sOut
    EndIf
    Local $col = _GUICtrlListView_GetColumnCount($hWnd)
    Local $aOut[$row][$col]
    If $col = 1 Then
    ReDim $aOut[$row]
    For $i = 0 To UBound($aOut) -1
    $aOut[$i] = _GUICtrlListView_GetItemText($hWnd, $i)
    Next
    Return $aOut
    EndIf
    For $i = 0 To UBound($aOut) -1
    For $j = 0 To UBound($aOut, 2) -1
    $aOut[$i][$j] = _GUICtrlListView_GetItemText($hWnd, $i, $j)
    Next
    Next
    Return $aOut
    EndFunc

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

    Func _count()
    $lv1count = _GUICtrlListView_GetItemCount($ListView1)
    $lv2count = _GUICtrlListView_GetItemCount($ListView2)
    $lv3count = _GUICtrlListView_GetItemCount($ListView3)
    GUICtrlSetData($counthost, $lv1count)
    GUICtrlSetData($countonline, $lv2count)
    GUICtrlSetData($countoffline, $lv3count)

    EndFunc

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

    Func WM_COMMAND($hWnd, $iMsg, $iwParam, $ilParam)
    Local $hWndFrom, $iIDFrom, $iCode, $hWndListBox
    If Not IsHWnd($stop) Then $hWndbutton = GUICtrlGetHandle($stop)
    $hWndFrom = $ilParam
    Switch $hWndFrom
    Case $stop, $hWndbutton
    $dummy = 1
    EndSwitch
    Return $GUI_RUNDEFMSG
    EndFunc ;==>WM_COMMAND (Bugfix - http://www.autoit.de)

    [/autoit]

    Punkt2: Ist dabei nicht Windows die eigentliche Bremse?

  • Text unlesbar machen

    • nuts
    • 19. Juni 2009 um 00:33

    Erlaubt ists nicht, allerdings gibt es verschiedene Decompilierer (kann ja danach mal googeln, mir sind solch dubiose Seiten aber nicht ganz geheuer).

    Poste doch einfach mal deine Methode.
    Schadet nicht und bringt vielleicht die ein oder andere Einschätzung.

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™