Thread-Watcher - [ v1.0.3 & Updater]

  • Es besteht leider ein kleines "Versions-Debakel" bei Deinem interessanten Tool ...

    Im Code-Header steht 1.0.2, im Code selber 1.0.1, im Tray-Menü 1.0.1 Beta ...
    ... und obwohl ich die Version 1.0.2 downgeloaded habe, checkt er, dass es eine neuere Version gibt.
    Dann bietet das Programm den Download an, legt aber nur eine 0-Byte-Datei ohne Inhalt an ...

    Und eine Threadliste habe ich auch nirgends entdeckt ... :(

    Klär mich mal bitte über den Sachverhalt auf, würde mich doch interessieren, da die Idee wirklich gut ist!

    -Rasta-

  • Öhm.. ist das bei den Anderen auch so? Weil normal kommt diese Meldung nur wenn das Script nicht google anpingen kann, sprich kein Internet.

    Wenn das Problem weiterbesteht nehme ich halt den Internetteil heraus.

    • Offizieller Beitrag

    Bei mir funzt es einwandfrei. Das einzige was ich festgestellt habe, des Prog beendet sich nach ner Zeit selbst. Weiß aber nicht woran des liegt .Edit: Sehr komisch. Habe deinen Thread in der beobachtung. Irschendwie bekomme ich aber keine Nachricht. Sollte ich eigentlich, da ich ja eine Antwort erstellt habe .

    • Offizieller Beitrag

    Ist dein Scriptcode immer noch für alle verfügbar ? Wenn ja, pack ihn mal in deinen Download mit rein.

    • Offizieller Beitrag

    Das ist fein. Hätte noch einen Verbesserungsvorschlag/Wunsch: Wenn man nich dauernd darauf achtet ,ob ein Tooltipp oder MSGBOX koomt, dann verpasst man einen Nachrichteneingang. Ändere dein Script doch so, das das Icon blinkt wenn neue Nachrichten da sind. Da könnte man gleich beim Blick auf die Taskleiste sehen das was neues da ist.

  • Gute Idee! Du meinst sicherlich wie bei Icq, wenn man eine Nachricht bekommt. Kann ich gerne ändern :thumbup:

    Mfg
    Jautois

  • Du hast leider nicht auf meine Antwort reagiert ...
    Nur kommentarlos ne neue Version bereit gestellt.

    In deiner neuen Version tauchen auch immer noch die falschen Vorgängerversionsnummern auf.
    Bei mir finde ich immer noch keine Threadliste (siehe deinen Screenshot).
    Wie ruft man die auf?
    In der config.ini wird auch nichts an Links mit geplottet.

    -Rasta-

  • Hej, da ist mir wohl ein Fehler unterlaufen den ich habe schon alles berücksichtigt. Ich habe ausversehn die falsche exe in die Installation eingebunden. Großes Sorry ;)

    Ich werde ein Patch-Script schreiben das dann die richtige Version immer vom Server zieht. So muss auch nicht eine neue Version neu installiert werden.

    Mfg Jautois

  • So für alle die, die den Thread-Watcher schon über das TW-1.0.3-setup installiert haben, gibt es nun hier ein Updater Script. Es downloadet immer direkt die neuste Version.

    Wichtig hierbei: Das Script oder das kompilierte Programm (Exe) muss, wenn es ausgeführt werden soll, im Installationsordner des Thread Watchers sein!

    Spoiler anzeigen
    [autoit]


    ;*****************************************************************************
    ; Programmname: Updater - Thread Watcher
    ; Version: 1.0.0
    ;
    ; Author: Johannes Kneip
    ;
    ;*****************************************************************************

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

    #include <Date.au3>
    #include <GuiAVI.au3>
    #include <WindowsConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #NoTrayIcon

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

    Global $size = 0, $time, $dt, $edit = ""

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

    Time()

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

    If FileExists(@ScriptDir & "\dl.avi") Then
    Else
    InetGet("http://autoit.spacequadrat.de/Downloads/Thread-Watcher/dl.avi", @ScriptDir & "\dl.avi", 0, 0)
    EndIf

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

    ;GUI;
    $updatemain = GUICreate("Updater - Thread Watcher", 466, 322, 844, 346)
    GUISetIcon("shell32.dll", -14, $updatemain)
    TraySetIcon("shell32.dll", -14)
    $Label1 = GUICtrlCreateLabel("Die Updates werden gedownloadet und installiert.", 80, 40, 286, 17)
    GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")
    $Edit1 = GUICtrlCreateEdit("", 24, 112, 417, 121, BitOR($ES_AUTOVSCROLL, $ES_AUTOHSCROLL, $ES_READONLY, $ES_WANTRETURN, $WS_VSCROLL))
    $Button1 = GUICtrlCreateButton("Beenden", 368, 288, 89, 25, 0)
    $Progress1 = GUICtrlCreateProgress(24, 240, 417, 25)
    $Group1 = GUICtrlCreateGroup("", 8, 8, 449, 273)
    $Avi1 = GUICtrlCreateAvi("dl.avi", 10, 24, 30, 32, 32)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $Label2 = GUICtrlCreateLabel("Installationsstatus:", 24, 88, 90, 17)
    GUISetState(@SW_SHOW)
    ;
    FileWrite(@ScriptDir & "\log.txt", "*****************************> " & $dt & @CRLF)
    Edittxt("Verbindungsaufbau zum Server ...")

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

    $read = IniRead(@ScriptDir & "\config.ini", "Version", "V", "default")
    If $read = "default" Then
    Edittxt("Verbindung fehlgeschlagen...")
    Edittxt("Mögliches Problem: Updater im falschen Ordner!")
    Edittxt(">> Bitte in den Thread Watcher Programmordner verschieben")
    Edittxt("Programm kann beendet werden!")
    Else
    _UpdateCheck()
    EndIf

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    Exit
    EndSwitch
    WEnd

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

    Func _UpdateCheck()
    Global $size[100]
    InetGet("http://autoit.spacequadrat.de/Downloads/Thread-Watcher/update/update.txt", @TempDir & "\update.txt", 1, 0)
    If Not @error Then
    Edittxt("Erfolgreich hergestellt!")
    $file = FileOpen(@TempDir & "\update.txt", 0)
    $line = FileReadLine($file, 1)
    $line3 = FileReadLine($file, 3)
    Else
    Edittxt("Es konnte keine Verbindung zum Server hergestellt werden!")
    Edittxt("Mögliches Problem: Keine Internetverbindung!")
    Sleep(2000)
    Exit
    EndIf
    Edittxt("Aktuelle Version: " & $read)
    $str = "Thread-Watcher-" & $line
    If $line = $read Then
    $fgs = FileGetSize(@ScriptDir & "\tw-" & $line & ".exe")
    $size = InetGetSize("http://autoit.spacequadrat.de/Downloads/Thread-Watcher/" & $str & "/" & "tw-" & $line & ".exe")
    If Round($fgs, 1) <> Round($size, 1) Then
    $var = FileDelete(@ScriptDir & "\" & "tw-" & $line & ".exe")
    _GUICtrlAVI_Play($Avi1)
    $dl = InetGet("http://autoit.spacequadrat.de/Downloads/Thread-Watcher/" & $str & "/" & "tw-" & $line & ".exe", @ScriptDir & "\tw-" & $line & ".exe", 1, 1)
    While @InetGetActive
    $rechnung = @InetGetBytesRead / $size * 100
    Time()
    $progress = $edit & "[" & $time & "]: Download: " & Round($rechnung / 1000, 1) & "% - " & Round(@InetGetBytesRead / 1000, 1) & " KB von " & $size & " KB"
    GUICtrlSetData($Progress1, $rechnung)
    GUICtrlSetData($Edit1, $progress)
    WEnd
    _GUICtrlAVI_Stop($Avi1)
    FileClose($file)
    FileDelete(@TempDir & "\update.txt")
    Edittxt("Thread Watcher " & $line & " gepatcht...")
    Else
    Edittxt("Aktuelle Version schon installiert!")
    EndIf
    Else
    Edittxt("Neue Version " & $line & " verfügbar!")
    _GUICtrlAVI_Play($Avi1)
    $size = (InetGetSize("http://autoit.spacequadrat.de/Downloads/Thread-Watcher/" & $str & "/" & "tw-" & $line & ".exe") / 1000)
    $dl = InetGet("http://autoit.spacequadrat.de/Downloads/Thread-Watcher/" & $str & "/" & "tw-" & $line & ".exe", @ScriptDir & "\tw-" & $line & ".exe", 1, 1)
    While @InetGetActive
    $rechnung = @InetGetBytesRead / $size * 100
    Time()
    $progress = $edit & "[" & $time & "]: Download: " & Round($rechnung / 1000, 1) & "% - " & Round(@InetGetBytesRead / 1000, 1) & " KB von " & $size & " KB"
    GUICtrlSetData($Progress1, $rechnung)
    GUICtrlSetData($Edit1, $progress)
    WEnd
    _GUICtrlAVI_Stop($Avi1)
    FileClose($file)
    FileDelete(@TempDir & "\update.txt")
    Edittxt("Thread Watcher " & $line & " wird installiert...")
    $var = FileDelete(@ScriptDir & "\" & "tw-" & $read & ".exe")
    If $var = 1 Then
    Edittxt("Erfolgreich installiert!")
    IniWrite(@ScriptDir & "\config.ini", "Version", "V", $line)
    Else
    Edittxt("Fehler bei der Installation - Alte Version konnte nicht gefunden werden!")
    EndIf
    EndIf
    Edittxt("Programm kann beendet werden...")
    FileWrite(@ScriptDir & "\log.txt", "*****************************" & @CRLF)
    EndFunc ;==>_UpdateCheck

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

    Func Time()
    $tSystem = _Date_Time_EncodeSystemTime(@MON, @MDAY, @YEAR, @HOUR, @MIN, @SEC)
    $time = StringTrimLeft(_Date_Time_SystemTimeToDateTimeStr($tSystem), 11)
    $dt = _Date_Time_SystemTimeToDateTimeStr($tSystem)
    EndFunc ;==>Time

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

    Func Edittxt($text)
    Global $edit, $set
    Time()
    $edit = $edit & "[" & $time & "]: " & $text & @CRLF
    FileWrite(@ScriptDir & "\log.txt", "[" & $time & "]: " & $text & @CRLF)
    GUICtrlSetData($Edit1, $edit)
    EndFunc ;==>Edittxt

    [/autoit]

    Das Script der Version 1.0.3: (noch nicht Bugfrei)

    Spoiler anzeigen
    [autoit]


    #include <Array.au3>
    #NoTrayIcon
    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_Icon=..\..\..\..\TW.ico
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
    ;*****************************************************************************
    ; Programmname: Thread Watcher
    ; Version: 1.0.3
    ;
    ; Author: Johannes Kneip
    ;
    ;*****************************************************************************

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

    #include <String.au3>
    #include <GUIConstantsEx.au3>
    #include <Inet.au3>
    #include <ModernMenuRaw.au3>
    #include <ComboConstants.au3>

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

    Opt("TrayMenuMode", 1)

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

    ;*** VARIABLEN ***;
    Global $newestpage, $threadid, $tempsave_posts, $posts, $pages, $tempsave_pages, $tempsave_posts, $postssec, $refreshrate, $threadid[100], $checks = 0, $numallposts, $posternames, $withposter, $inspostsft
    Dim $posts = 0
    Dim $tempsave_posts = 0
    Dim $container = 1
    Dim $newestpage = ""
    Dim $ver = "1.0.3"
    Dim $i = 1
    Dim $inipath = @ScriptDir & "\config.ini"
    Dim $tempsave_clip = 10
    Dim $posterl = ""
    ;

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

    IniWrite($inipath, "Version", "V","1.0.3")

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

    ;*** Internet-Check ***;
    $inetcheck = Ping("www.google.de")
    If @error = 0 Then
    Else
    MsgBox(0, "Error", "Kein Internet verfügbar!", 5)
    Exit
    EndIf
    ;

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

    ;*** INI-Read ***;

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

    $refreshread = IniRead($inipath, "Main", "RefreshRate", "default")
    If $refreshread = "default" Then
    Dim $refreshrate = 60000
    IniWrite($inipath, "Main", "RefreshRate", "60000")
    Else
    If $refreshread < 60000 Then
    $refreshrate = 60000
    Else
    $refreshrate = $refreshread
    EndIf
    EndIf
    ;******

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

    ;*** GUI's ***;
    ;>* Check-Fenster *<;

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

    $gui = GUICreate("Thread-Watcher - v1.0.3", 438, 38, 193, 125)
    GUISetIcon(@ScriptDir & "\autoitdeicon.ico")
    $threadlink = GUICtrlCreateInput("", 40, 8, 300, 21)
    GUICtrlCreateLabel("Link:", 8, 11, 32, 18)
    GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")
    $checkbut = GUICtrlCreateButton("Check", 356, 7, 73, 24, 0)
    GUISetState(@SW_SHOW)
    ;

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

    ;>* Thread-Liste *<;

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

    $guitl = GUICreate("Thread-Liste", 539, 331, 193, 125)
    $ListView1 = GUICtrlCreateListView("Thread-Name|Kategorie|Posts|Letzter Post von|Datum", 0, 0, 537, 329)
    GUICtrlSendMsg(-1, 0x101E, 0, 200)
    GUICtrlSendMsg(-1, 0x101E, 1, 50)
    GUICtrlSendMsg(-1, 0x101E, 2, 120)
    GUICtrlSendMsg(-1, 0x101E, 3, 90)
    GUISetState(@SW_HIDE, $guitl)
    ;

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

    ;>* Settings-GUI *<;

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

    $guiSet = GUICreate("Settings", 291, 128, 300, 216)
    GUISetIcon(@ScriptDir & '\k-cm-system.ico')
    GUICtrlCreateLabel("Benachrichtigung:", 16, 14, 107, 19)
    GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")
    $meboxradio = GUICtrlCreateRadio("MessageBox ", 128, 9, 81, 27)
    $tooltipradio = GUICtrlCreateRadio("TrayTip", 216, 13, 73, 20)
    GUICtrlCreateLabel("Check-Intervall:", 16, 46, 94, 17)
    GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")
    $Combo1 = GUICtrlCreateCombo("1.", 128, 44, 49, 25, BitOR($CBS_DROPDOWNLIST, $CBS_AUTOHSCROLL))
    GUICtrlSetData(-1, "5.|10.|30")
    GUICtrlCreateLabel("Minute(n)", 184, 46, 48, 17)
    $setokbut = GUICtrlCreateButton("Ok", 112, 95, 65, 25, 0)
    $Label4 = GUICtrlCreateLabel("Start:", 16, 74, 35, 17)
    GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")
    $startold = GUICtrlCreateRadio("alter Link", 80, 72, 65, 17)
    $startnew = GUICtrlCreateRadio("neuer Link", 168, 68, 73, 25)
    GUISetState(@SW_HIDE, $guiSet)
    ;

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

    ;>* About *<;

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

    $guiabout = GUICreate("About", 324, 176, 246, 153)
    GUISetIcon("shell32.dll", -171)
    GUICtrlCreateLabel("Name: Thread Watcher", 16, 24, 116, 17)
    GUICtrlCreateLabel("Version: 1.0.3", 16, 48, 69, 17)
    GUICtrlCreateLabel("Comments:", 16, 96, 56, 17)
    GUICtrlCreateLabel("Copyright by Johannes Kneip", 16, 72, 141, 17)
    GUICtrlCreateLabel("-bei Bugs:", 80, 96, 51, 17)
    GUICtrlCreateLabel("- im Forum melden", 136, 96, 89, 17)
    GUICtrlCreateLabel("- email: autoit.report@web.de", 136, 112, 142, 17)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $okbut = GUICtrlCreateButton("&OK", 88, 144, 76, 25)
    $checkversionbut = GUICtrlCreateButton("Check Version", 168, 144, 82, 25, 0)
    GUISetState(@SW_HIDE, $guiabout)
    ;

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

    ;*** INI-Read 2 ***;
    $meshwread = IniRead($inipath, "Main", "MessageShow", "default")
    If $meshwread = "default" Then
    Dim $meshwtooltip = True
    IniWrite($inipath, "Main", "MessageShow", "true")
    GUICtrlSetState($tooltipradio, $GUI_CHECKED)
    Else
    If $meshwread = "true" Then
    $meshwtooltip = True
    GUICtrlSetState($tooltipradio, $GUI_CHECKED)
    Else
    $meshwtooltip = False
    GUICtrlSetState($meboxradio, $GUI_CHECKED)
    EndIf
    EndIf

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

    $linkread = IniRead($inipath, "Main", "Linklist", "default")
    If $linkread <> "default" Then
    GUICtrlSetData($threadlink, $linkread)
    EndIf
    ;

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

    ;*** TRAY-Menü ***;

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

    $nTrayIcon1 = _TrayIconCreate("Thread Watcher v1.0.3", @ScriptDir & "\autoitdeicon.ico")
    _TrayIconSetClick(-1, 16)
    _TrayIconSetState()

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

    $nTrayMenu1 = _TrayCreateContextMenu()
    $nSideItem3 = _CreateSideMenu($nTrayMenu1)
    _SetSideMenuText($nSideItem3, "TW - v1.0.3")
    _SetSideMenuColor($nSideItem3, 0x00FFFF)
    _SetSideMenuBkColor($nSideItem3, 0x802222)
    _SetSideMenuBkGradColor($nSideItem3, 0x4477AA)

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

    $TrayLinkOpen = _TrayCreateitem("Link ändern")
    $TrayThread = _TrayCreateMenu("Thread")
    $ThreadOpen = _TrayCreateItem("Öffnen", $TrayThread)
    _TrayItemSetIcon(-1, "", 0)
    $ThreadListe = _TrayCreateItem("Liste", $TrayThread)
    _TrayItemSetIcon(-1, "", 0)
    _TrayCreateItem("")
    _TrayItemSetIcon(-1, "", 0)
    $TrayOptions = _TrayCreateItem("Optionen")
    _TrayCreateItem("")
    _TrayItemSetIcon(-1, "", 0)
    $TrayHelp = _TrayCreateItem("Hilfe")
    _TrayItemSetIcon(-1, "", 0)
    $TrayAbout = _TrayCreateItem("About")
    _TrayItemSetIcon(-1, "", 0)
    $TrayExit = _TrayCreateItem("Beenden")
    _TrayItemSetIcon(-1, "", 0)

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

    _TrayItemSetIcon($TrayThread, "shell32.dll", -15)
    _TrayItemSetIcon($TrayLinkOpen, "shell32.dll", -239)
    _TrayItemSetIcon($TrayOptions, "shell32.dll", -217)
    _TrayItemSetIcon($TrayHelp, "shell32.dll", -24)
    _TrayItemSetIcon($TrayAbout, "shell32.dll", -171)
    _TrayItemSetIcon($TrayExit, "shell32.dll", -28)

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

    GUICtrlSetState($TrayHelp, $GUI_DEFBUTTON)
    Dim $nTrayIcon2 = 0

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

    _TrayIconSetState()

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

    If $nTrayIcon2 > 0 Then _TrayIconDelete($nTrayIcon2)
    ;
    Dim $check = 1

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

    While 1
    ;MsgBox(1,"$checkbefore",$check)
    $clipzal = _StringSplit(ClipGet(), "autoit.de/index.php?page=Thread&threadID=", 1)
    If $clipzal[0] = "http://" Or $clipzal[0] = "www" Then
    If $clipzal[1] <> $tempsave_clip Then
    $check = 1
    If $clipzal[1] = $threadid Then
    Else
    If $check = 1 Then
    $mgb = MsgBox(4, "", "Link überwachen?")
    If $mgb = 6 Then
    $checks = 0
    $threadid[1] = $clipzal[1]
    GUICtrlSetData($threadlink, 'http://autoit.de/index.php?page=Thread&threadID=' & $threadid[1])
    GUISetState(@SW_HIDE, $gui)
    $tempsave_clip = $clipzal[1]
    $newestpage = 'http://autoit.de/index.php?page=Thread&threadID=' & $threadid[1]
    _Alib()
    EndIf
    If $mgb = 7 Then
    $tempsave_clip = $clipzal[1]
    $check = 0
    EndIf
    EndIf
    EndIf
    EndIf
    EndIf
    $msg = GUIGetMsg(1)
    Switch $msg[0]
    Case $GUI_EVENT_CLOSE, $TrayExit
    If $msg[1] = $guiabout Then GUISetState(@SW_HIDE, $guiabout)
    If $msg[1] = $guiSet Then GUISetState(@SW_HIDE, $guiSet)
    If $msg[1] = $gui Then GUISetState(@SW_HIDE, $gui)
    If $msg[1] = $guitl Then GUISetState(@SW_HIDE, $guitl)
    If $msg[0] = $TrayExit Then Exit
    Case $checkbut
    $checks = 0
    MsgBox(1, "", $linkread)
    If $linkread = "default" Then
    IniWrite($inipath, "Main", "Linklist", GUICtrlRead($threadlink))
    EndIf
    $newestpage = GUICtrlRead($threadlink)
    $threadid = _StringSplit($newestpage, "&threadID=", 1)
    If @error Then
    MsgBox(1, "", "Kann den Thread nicht checken!")
    Else
    If Not @error Then
    _Alib()
    GUISetState(@SW_HIDE, $gui)
    Else
    MsgBox(1, "", "Link checken!")
    EndIf
    EndIf
    Case $setokbut
    $temp_refreshread = GUICtrlRead($Combo1)
    If $temp_refreshread = "1." Then $refreshrate = 60000
    If $temp_refreshread = "5." Then $refreshrate = 300000
    If $temp_refreshread = "10." Then $refreshrate = 600000
    If $temp_refreshread = "30." Then $refreshrate = 1800000
    _Alib()
    $setread = GUICtrlRead($tooltipradio)
    If $setread = 1 Then
    IniWrite($inipath, "Main", "MessageShow", "true")
    Else
    IniWrite($inipath, "Main", "MessageShow", "false")
    EndIf
    GUISetState(@SW_HIDE, $guiSet)
    Case $ThreadOpen
    $temp_read = GUICtrlRead($threadlink)
    If $temp_read = "" Then
    MsgBox(1, "", "Kein Link eingeben!")
    Else
    $IEC = ShellExecute($temp_read)
    EndIf
    Case $ThreadListe
    _Inireadlist()
    GUISetState(@SW_SHOW, $guitl)
    Case $TrayHelp
    ShellExecute("http://autoit.spacequadrat.de/Downloads/Thread-Watcher/Hilfe/komplett/")
    Case $TrayAbout
    GUISetState(@SW_SHOW, $guiabout)
    Case $okbut
    GUISetState(@SW_HIDE, $guiabout)
    Case $checkversionbut
    _UpdateCheck()
    Case $TrayLinkOpen
    GUISetState(@SW_SHOW, $gui)
    Case $TrayOptions
    GUISetState(@SW_SHOW, $guiSet)

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

    EndSwitch
    WEnd

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

    ;*** UDF's ***;

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

    Func _Check()
    $ingetone = _INetGetSource($newestpage)
    ;test only
    $test = _StringBetween($ingetone, '<p class="userName">', '<a href=')
    $inspostsft = UBound($test); Anzahl der Posts in dem Thread
    $p = 0
    Global $posternames[$inspostsft]
    For $p = 0 To $inspostsft - 1
    $var = _StringBetween($test[$p], 'title="&raquo;', '&laquo;')
    $posternames[$p] = $var[0]
    Next
    ;_ArrayDisplay($posternames)
    ;ThreadName:
    $temp_thn = _StringBetween($ingetone, '<title>', ' -')
    ;ThreadSection:
    $temp_thc = _StringBetween($ingetone, '<title>' & $temp_thn[0] & " -", '-')
    $tempsave_posts = $posts
    $site = '<li><a href="index.php?page=Thread&amp;threadID=' & $threadid[1] & '&amp;pageNo='
    $strsite = _StringBetween($ingetone, $site, '"')
    $pages = (UBound($strsite) / 2) + 1
    $newestpage = 'http://autoit.de/index.php?page=Thread&threadID=' & $threadid[1] & '&pageNo=' & $pages
    $postssec = StringRegExp($ingetone, "messageNumber", 3)
    $posts = UBound($postssec)
    If $pages > 1 Then
    $numallposts = ($pages - 1) * 20 + $posts
    Else
    If $pages = 1 Then
    $numallposts = $posts
    EndIf
    EndIf

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

    If $checks > 0 Then
    $lastposter = $posternames[$inspostsft - 1]
    If $posts > $tempsave_posts Then
    If $container = 1 Then
    $container = 0
    Else
    $Couposts = $posts - $tempsave_posts
    If $meshwtooltip = True Then
    If $withposter = True Then
    $posterl = " von " & $lastposter
    Else
    $posterl = ""
    EndIf
    If $Couposts > 1 Then
    TrayTip($Couposts & " neue Nachrichten!", " 2", 5, 0)
    Else
    TrayTip($Couposts & " neue Nachricht" & $posterl & "!", " 1", 5, 1)
    EndIf
    Else
    If $Couposts > 1 Then
    MsgBox(64, "", $Couposts & " neue Nachrichten!")
    Else
    MsgBox(64, "", $Couposts & " neue Nachricht" & $posterl & "!")
    EndIf
    $posterl = ""
    EndIf
    EndIf
    EndIf
    ;ThreadLink|Postanzahl|Letzter Poster|Datum|ThreadName|ThreadSection
    IniWrite($inipath, "Threads", $threadid[1], 'http://autoit.de/index.php?page=Thread&threadID=' & $threadid[1] & "|" & $numallposts & "|" & $lastposter & "|" & @MDAY & "." & @MON & "." & @YEAR & "|" & $temp_thn[0] & "|" & $temp_thc[0])
    EndIf
    ;
    $ingetone = ""
    $checks = $checks + 1
    EndFunc ;==>_Check

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

    Func _Alib()
    AdlibDisable()
    AdlibEnable("_Check", $refreshrate)
    EndFunc ;==>_Alib

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

    Func _UpdateCheck()
    InetGet("http://autoit.spacequadrat.de/Downloads/Thread-Watcher/update/update.txt", @TempDir & "\update.txt", 1, 0)
    $file = FileOpen(@TempDir & "\update.txt", 0)
    $line = FileReadLine($file, 1)
    $line3 = FileReadLine($file, 3)
    If $line = $ver Then
    MsgBox(64, "", "Neuste Version: (" & $ver & ")")
    FileClose($file)
    FileDelete(@TempDir & "\update.txt")
    Else
    $newver = $line & "_" & $line3
    MsgBox(64, "Update!", "Neuere Version verfügbar!")
    $fg = MsgBox(4, "Updaten?", "Möchtest du die neuste Version downloaden?")
    If $fg = 6 Then
    InetGet("http://autoit.spacequadrat.de/Downloads/Thread-Watcher/" & $newver & "/" & $newver & ".au3", $line3, 1, 1)
    FileClose($file)
    FileDelete(@TempDir & "\update.txt")
    EndIf
    EndIf
    EndFunc ;==>_UpdateCheck

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

    Func _Inireadlist()
    $var = IniReadSection($inipath, "Threads")
    If @error Then
    MsgBox(4096, "", "Es ist ein Fehler aufgetreten. Noch keine Threads gespeichert!")
    Else
    For $i = 1 To $var[0][0]
    $split = StringSplit($var[$i][1], "|")
    GUICtrlCreateListViewItem($split[5] & "|" & $split[6] & "|" & $split[2] & "|" & $split[3] & "|" & $split[4], $ListView1)
    Next
    EndIf
    EndFunc ;==>_Inireadlist

    [/autoit]

    Mfg
    Jautois

    2 Mal editiert, zuletzt von Jautois (16. Dezember 2008 um 20:00)

  • Noch sagt er beim ersten Start (direkt nach dem Setup) das die INI fehlt. Am besten diese während des Setup's mit installieren.
    Ansonsten gute Idee.

    LG,
    Lina.

    Lieben Gruß,
    Alina

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Geheime Information: ;)
    OuBVU5ebLhHu5QvlnAyQB4A7SzBrvWulwL7RLl2BdH5tI6sIYspeMKeXMSXl