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

Beiträge von Pandteranodon

  • Wie sieht euer Desktop aus?

    • Pandteranodon
    • 17. Oktober 2013 um 14:49

    Mein Desktop scheint wohl der leerste hier zu sein xD

    Rechter Bildschirm sind Programme (z.B. Steam, Teamspeak³, AutoIt, Origin)
    Linker Bildschirm laufen die Games und mein Browser :D

    [Blockierte Grafik: http://www7.pic-upload.de/thumb/17.10.13/5r3j5zrqbkd1.png]

  • E-Mail Adresse auslesen und in eine Datei schreiben

    • Pandteranodon
    • 14. Oktober 2013 um 18:08

    Ach du heiliger xDDDDD

    Ich hab grade net schlecht geguckt als ich das gesehen habe xD
    Aber es funzt, und es hilft mir sehr die Liste für meine Studien Kameraden zu vervollständigen ;)

    Ich bedanke mich recht herzlich bei Euch beiden für die Hilfe.

    Friesel:
    Klar sind dort nicht alle E-Mail Adressen vorhanden, aber so kann ich schon einige in Excel überführen und den Rest selbst nachschlagen. Aber dadurch das die Namen schon alle vorhanden sind, hat mir dein Script schon richtig gut geholfen und einiges an arbeit abgenommen.

    Lg und FETTES Danke an euch beide
    Tak|Jochen

  • E-Mail Adresse auslesen und in eine Datei schreiben

    • Pandteranodon
    • 14. Oktober 2013 um 17:05

    Erstmal sau fettes danke für die Rückmeldungen.

    Friesel, leider gibt er mir bei deinen Lösungsansätzen nen Fehler aus.

    Hab von deinem Lösungsansatz die Zeilen 8 und 9 abgeändert.

    Spoiler anzeigen
    [autoit]

    #include <IE.au3>
    #include <Array.au3>

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

    $i=1
    $oIE = _IECreate("http://www2.dasoertliche.de/?context=11&form_name=search_nat&zbuab=40000057%2C40000064%2C40000068%2C40000067%2C40000074%2C40000075%2C40000053%2C40000065%2C40000084&buc=2244&action=56&recFrom="&$i&"&zvo_ok=1&radius=5&orderby=name&kw=Grundst%FCcksverwaltungen&page=78&buab=40000058&ttforderby=rel&ci=Hamburg", 0, 0)
    $sHtml = _IEBodyReadHTML($oIE)
    ClipPut($sHtml)

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

    $ergebnis1 = StringRegExp($sHtml, ' this\)"><span class="">(.*)&nbsp;</span>', 3)
    $ergebnis = StringRegExp($sHtml, '<a href="mailto:(.*)" onclick', 3)
    _ArrayDisplay($ergebnis1,"Ergebnis_")
    _ArrayDisplay($ergebnis,"Ergebnis")

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

    For $i=1 to 19
    FileWriteLine(@ScriptDir&"\ergebnis.txt",$ergebnis1[$i])
    Next

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

    For $p= 0 to 19
    FileWriteLine(@ScriptDir&"\ergebnis1.txt",$ergebnis[$p])
    next

    [/autoit]

    Fehlermeldung:

    Code
    C:\Users\Rageclaw666\Desktop\syf.au3 (14) : ==> Subscript used with non-Array variable.:
    FileWriteLine(@ScriptDir&"\ergebnis.txt",$ergebnis1[$i])
    FileWriteLine(@ScriptDir&"\ergebnis.txt",$ergebnis1^ ERROR
    >Exit code: 1    Time: 2.625

    reeky
    Leider hab ich die FF3.au3 nicht, hab es zwar gezogen und Eingebunden doch funktioniert dies auch nicht, er gibt mir die Error-Message aus "Can't connect to FireFox"


    Hoffe ihr könnt mir dort helfen die Fehler aus zu finden.


    EDIT 17.27h - 14.10

    Spoiler anzeigen
    [autoit]

    #include <IE.au3>
    #include <Array.au3>

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

    $ready= "http://www4.dastelefonbuch.de/?bi=8&kw=Hausverwaltung&ci=Hamburg&ciid=8816&cmd=search&seed=1298105593&ort_ok=1&vert_ok=1&buab=400000&cx=-34824&cy=283796&lat=53.549813&lon=9.973249&mdest=sec1.www1%2Csec3.www3&aktion=44&sp=&mergerid=&recfrom=1&orderby=name"
    $oIE = _IECreate($ready, 0, 0)
    $sHtml = _IEBodyReadHTML($oIE)
    ClipPut($sHtml)

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

    $ergebnis1 = StringRegExp($sHtml,' this\)"><span class="">(.*)</span>',3) ;~ dies funktioniert nicht
    $ergebnis = StringRegExp($sHtml,'<a title="E-Mail" class="ico topmailpriv" href="#" rel="nofollow">([^<]+)</a>',3) ;~ So wird mir die E-Mail gefiltert
    _ArrayDisplay($ergebnis1,"Ergebnis_")
    _ArrayDisplay($ergebnis,"Ergebnis")

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

    ProcessClose("iexplore.exe")

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

    For $i=0 to 19
    FileWriteLine(@ScriptDir&"\ergebnis.txt",$ergebnis1[$i])
    Next

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

    For $p = 0 to 19
    $new = " "
    $new = $new & $ergebnis[$p] & @CRLF
    FileWriteLine(@ScriptDir&"\ergebnis.txt",$new)
    Next

    [/autoit]


    Lg
    Tak|Jochen

  • E-Mail Adresse auslesen und in eine Datei schreiben

    • Pandteranodon
    • 12. Oktober 2013 um 17:35

    Also ich habe mich nochmal im StringRegExp Tutorial durchgefuttert aber konnte nichts finden was mir helfen würde, auch die ganzen Zeichen sind etwas verwirrend für mich :D

    Ich hoffe wirklich das mir jemand da helfen könnte, ich habe nix schlimmes vor mit den Adressen falls dies im Verdacht steht, das ist ne liste für meine Klassenkameraden (Mache gerade eine Umschulung an ner Privaten Schule zum Bauzeichner und Technischer Zeichner) für die Bewerbungen im nächsten Jahr, da haben wir die Umschulung abgeschlossen.

    Falls mir keiner helfen möchte, sagt es bitte einfach :)

    Lg
    Tak | Jochen

  • E-Mail Adresse auslesen und in eine Datei schreiben

    • Pandteranodon
    • 11. Oktober 2013 um 17:22

    Hallo AuoItler,
    ich habe ein kleines Problem was das Auslesen von HTML Dateien betrifft.

    Und zwar möchte ich für mich eine Liste erstellen die es mir ermöglicht "Firmen Namen + E-Mail Adressen" in eine Textdatei zu speichern. Das mit den Namen klappt alles super gut nur die E-Mail Adresse will nicht ausgelesen und gespeichert werden.

    Den Vorab Code habe ich so gemacht, nur die E-Mail will nicht ausgelesen werden.

    Quellcode sieht so aus:

    Code
    <a href="http://www2.dasoertliche.de/?id=2244123438621226015924&recuid=V43QT6NUIEERU5OAKLB2U44PF2P65QLWZEOCKAI&action=58&pagePos=1&dar=1&kw=Grundst%fccksverwaltungen&form_name=detail&lastFormName=search_nat&ci=Hamburg&hitno=0&buab=40000058&backbuab=40000058&zvo_ok=1&zbuab=40000057%2c40000064%2c40000068%2c40000067%2c40000074%2c40000075%2c40000053%2c40000065%2c40000084&orderby=name&ttforderby=rel&buc=2244&verlNr=1126&page=78&context=11&arkey=90400058"   class="preview" onclick="return logDetail('2244123438621', 'name', this)"><span class="">Boelter Immobilien GmbH Immobilien&nbsp;</span> <!-- Name -->
       <a href="mailto:info@boelter-immo.de" onclick="logEmail('http://www2.dasoertliche.de/', '314_100907_1234_0122_20131012014332987_5164', '3014D4B84B832F72B535B6F56EC255D3', '0122', '112', '2244123438621', '400058', '1', '1', '6', 'Grundstücksverwaltungen');" class="topmail" title="E-Mail versenden">info@boelter-immo.de</a>  <!-- E-Mail Adresse -->
    Spoiler anzeigen
    [autoit]

    #include <IE.au3>
    #include <Array.au3>
    $i=1
    $oIE = _IECreate("http://www2.dasoertliche.de/?context=11&form_name=search_nat&zbuab=40000057%2C40000064%2C40000068%2C40000067%2C40000074%2C40000075%2C40000053%2C40000065%2C40000084&buc=2244&action=56&recFrom="&$i&"&zvo_ok=1&radius=5&orderby=name&kw=Grundst%FCcksverwaltungen&page=78&buab=40000058&ttforderby=rel&ci=Hamburg", 0, 0)
    $sHtml = _IEBodyReadHTML($oIE)
    ClipPut($sHtml)

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

    $ergebnis1 = StringRegExp($sHtml,' this)"><span class="">([^<]+)',3)
    $ergebnis = StringRegExp($sHtml,'<a href="mailto:[^<]+)"',3)
    _ArrayDisplay($ergebnis1,"Ergebnis_")
    _ArrayDisplay($ergebnis,"Ergebnis")

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

    For $i=1 to 19
    FileWriteLine(@ScriptDir&"\ergebnis.txt",$ergebnis1[$i])
    Next

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

    For $p= 0 to 19
    FileWriteLine(@ScriptDir&"\ergebnis1.txt",$ergebnis[$p])
    next

    [/autoit]

    Also das sind ca. 1140 Adressen kann aber immer nur 20 aufeinmal auslesen (wünschte würden mehr gehen :D)

    Auch habe ich das problem wenn ich das _ArrayDisplay ausschalte gibt er mir nen Error aus, was ich auch nicht verstehe.

    Hoffe Ihr könnt mir dort helfen oder wenigstens Anregungen geben wie ich das am besten hin bekomme.


    EDIT 01:41h

    Also nur mit der Zeile ändern hat es leider nix gebracht. in den Ersten Anläufen funzte es aber danach motzte das Script rum das das Array nicht existiert.

  • 2 Fragen wegen ListView

    • Pandteranodon
    • 24. September 2012 um 23:35

    Hey,

    also imo sieht es wie folgt aus.

    Dadurch das du mich auf die Funktion

    [autoit]

    _GUICtrlListView_GetItemText

    [/autoit]

    geschubst hast, hab ich es nun hinbekommen.

    Zitat

    DIES IST KEIN BOT NUR EIN RECHNER FÜR NEUE SPAWNZEITEN NACH LEGUNG DES BOSSES!!!

    Hatte ich eingefügt weil es damals schon probleme gab wegen der Zeit ausrechnen bei einem anderen Programm (Boss Calculator von einem anderen MMO) Link dazu: https://autoit.de/index.php?page=Thread&amp;postID=100526

    daher der Hinweis ^^


    Aber Problem gelöst, danke ^^

  • 2 Fragen wegen ListView

    • Pandteranodon
    • 24. September 2012 um 23:02

    Hallo autoBert und ty für deine Antwort.

    Das Programm rechnet eigendlich nur die neuen Spawnzeiten aus.
    In dem Spiel War of the Immortals sind die Spawnzeiten der Bosse selbst schon integriert, da muss man eigendlich nur die Zeit drauf rechnen und gut ist.

    Nen kumpel von mir zockt das intensiv und der hat schon ne ganze Zettelwirtschaft von PostIts wo die Spawnzeiten drauf stehen etc.

    Code
    _GUICtrlListView_GetItemCount
    _GUICtrlListView_DeleteItem
    _GUICtrlListView_GetItemTextArray

    Muss ich mir noch anschauen aber werde ich bestimmt hinbekommen.


    Beep <=== kenn ich und ist auch für die Ton ausgabe wichtig
    FileWriteLine <=== benutz ich ja ist ja auch im code drinne ^^


    Den Code hast du ja auch oben, da kannst du ja schauen ob das ein Bot ist oder nicht. Die Log Files sind ja nur für die Eingaben vom Programm selbst um später nachzuvollziehen was ich selbst für eingaben gemacht habe. Die Daten werden nicht an mich gesendet oder sonst irgendetwas.

    Mfg.
    Jochen

  • 2 Fragen wegen ListView

    • Pandteranodon
    • 24. September 2012 um 21:33

    Hallo AutoItler,
    Ich hab ein kleines Problemchen was ListView betrifft.

    Ich habe vier Spalten, in der ersten Spalte wird immer ein Name durch eine ComboBox eingetragen, zweite und dritte wird durch Computer Zeit und Datum definiert und vierte wieder durch eine ComboBox.

    Nun möchte ich gerne aber die Zeit und das Datum auslesen und vergleichen, wenn dieses eintrifft soll ein Beep Ton ausgegeben werden.
    Auch soll danach diese Zeile nach eintreffen gelöscht werden und einen Eintrag in ein externes Textdokument geschrieben werden.

    Hier mal der Code:

    Spoiler anzeigen
    [autoit]

    ;~ GUI und Windows Daten
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <StaticConstants.au3>
    #include <EditConstants.au3>
    #include <GuiListView.au3>
    #Include <Array.au3>
    #Include <File.au3>
    #Include <Date.au3>

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

    ;~ Internet
    #include <INet.au3>
    #include <IE.au3>

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

    ;~ Tab Items
    #include <StaticConstants.au3>
    #include <TabConstants.au3>

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

    #NoTrayIcon

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

    Global $AnzBosse, $Bosse[50][50], $File, $i, $z, $verlaufsanzeige

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

    If Not FileExists(@ScriptDir & "\verlauf."&@MDAY&"."&@MON&".spawn") Then
    FileWrite(@ScriptDir & "\verlauf."&@MDAY&"."&@MON&".spawn", "Verlauf für den "&@MDAY&"."&@MON&"."&@YEAR)
    FileWriteLine(@ScriptDir & "\verlauf."&@MDAY&"."&@MON&".spawn", "")
    EndIf

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

    _dataload()

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

    #Region ### START Koda GUI section ### Form=
    $calculator = GUICreate("Boss Calculator", 264, 600, 193, 125)

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

    $bossl = GUICtrlCreateLabel("Boss Wählen:", 8, 8, 88, 20)
    GUICtrlSetFont(-1, 10, 800, 6, "Arial")
    $boss = GUICtrlCreateCombo("Boss Wählen:", 136, 8, 121, 25)

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

    For $i=1 to $AnzBosse
    GUIctrlSetData($boss, $bosse[$i][0] & "|")
    Next

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

    $realml = GUICtrlCreateLabel("Aktueller Realm:", 8, 32, 110, 20)
    GUICtrlSetFont(-1, 10, 800, 4, "Arial")
    $realm = GUICtrlCreateCombo("Realm Wählen:", 136, 32, 121, 25)
    GUICtrlSetData(-1, "1|2|3|4|5|6|7|8")

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

    $respawntimel = GUICtrlCreateLabel("Respawnzeit:", 8, 56, 85, 20)
    GUICtrlSetFont(-1, 10, 800, 6, "Arial")
    $respawntime = GUICtrlCreateInput("SELECT BOSS", 136, 56, 121, 21)
    GUICtrlSetState(-1, $GUI_DISABLE)

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

    $timel = GUICtrlCreateLabel("Aktuelle Uhrzeit:", 8, 80, 109, 20)
    GUICtrlSetFont(-1, 10, 800, 4, "Arial")
    $time = GUICtrlCreateInput(@HOUR&":"&@MIN&":"&@SEC, 136, 80, 121, 21)

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

    $datel = GUICtrlCreateLabel("Aktuelles Datum:", 8, 104, 111, 20)
    GUICtrlSetFont(-1, 10, 800, 4, "Arial")
    $date = GUICtrlCreateInput(@YEAR&"/"&@MON&"/"&@MDAY, 136, 104, 121, 21)

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

    $calc = GUICtrlCreateButton("Berechnen", 8, 128, 123, 25, 0)
    $aktu = GUICtrlCreateButton("Aktualisieren", 136, 128, 123, 25, 0)
    $delete = GUICtrlCreateButton("Spawn löschen", 8, 568, 123, 25, 0)
    $verlauf = GUICtrlCreateButton("Verlauf anzeigen >>", 136, 568, 123, 25, 0)

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

    $spawnlistl = GUICtrlCreateLabel("Spawnliste:", 8, 160, 75, 20)
    GUICtrlSetFont(-1, 10, 800, 6, "Arial")
    $spawnlist = GUICtrlCreateListView("Boss Name:|Spawnt um:|Am:|Auf Realm:", 8, 184, 250, 382)
    GUISetState(@SW_SHOW)

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

    $verlaufsanzeigen = GUICreate("Form1", 405, 469, 475, 256, BitOR($WS_SYSMENU,$WS_POPUP,$WS_POPUPWINDOW,$WS_BORDER,$WS_CLIPSIBLINGS, $WS_EX_TOOLWINDOW), BitOr($WS_EX_TOOLWINDOW,$WS_EX_WINDOWEDGE))
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
    $verlaufhide = GUICtrlCreateButton("<< Verlauf verbergen", 0, 440, 137, 25, 0)
    GUISetState(@SW_HIDE, $verlaufsanzeige)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $Msg = GUIGetMsg()

    If $msg = GUICtrlRead($boss) Then
    For $i = 1 to $AnzBosse
    If GUIctrlRead($boss) == $bosse[$i][0] Then
    GUICtrlSetData($respawntime, $bosse[$i][4])
    ElseIf GUIctrlRead($boss) = "Boss Wählen:" Then
    GUICtrlSetData($respawntime, "SELECT BOSS")
    EndIf
    Next
    EndIf

    If $msg = $calc Then
    If guictrlread($respawntime) <> "SELECT BOSS" and guictrlread($realm) <> "Realm Wählen:" Then
    local $sdate = stringsplit(_ADD(), " ")
    GUICtrlCreateListViewItem(GUIctrlRead($boss)&"|"&$sdate[2]&"|"&$sdate[1]&"|"&GUIctrlRead($Realm), $spawnlist)
    FileWrite(@ScriptDir & "\verlauf."&@MDAY&"."&@MON&".spawn", "Eintragung von: "&GUIctrlRead($boss)&" um "&guictrlread($time)&" am "&@MDAY&"."&@MON&"."&@YEAR)
    FileWriteLine(@ScriptDir & "\verlauf."&@MDAY&"."&@MON&".spawn", "")
    Else
    MsgBox(16, "ERROR", "PLEASE SELECT BOSS AND REALM")
    EndIf
    EndIf

    If $msg = $delete Then
    If GUICtrlRead($spawnlist) Then
    GUICtrlDelete(GUICtrlRead($spawnlist))
    FileWrite(@ScriptDir & "\verlauf."&@MDAY&"."&@MON&".spawn", "Löschung von: "&_GUICtrlListView_GetItemText($spawnlist, 1)&" um "&@HOUR&":"&@MIN&":"&@SEC&" am "&@MDAY&"."&@MON&"."&@YEAR) ;<=== schreibt immer eine 0 in eine Datei
    FileWriteLine(@ScriptDir & "\verlauf."&@MDAY&"."&@MON&".spawn", "")
    Else
    MsgBox(16, "ERROR", "PLEASE SELECT SPAWN")
    EndIf
    EndIf

    If $msg = $aktu Then
    GUIctrlSetData($time, @HOUR&":"&@MIN&":"&@SEC)
    GUiCtrlSetData($date, @YEAR&"/"&@MON&"/"&@MDAY)
    EndIf

    If $msg = $verlauf Then
    GUISetState(@SW_SHOW, $verlaufsanzeigen)
    $verlaufsanzeige = GUICtrlCreateEdit("", 0, 0, 401, 441, BitOR($ES_AUTOVSCROLL,$ES_AUTOHSCROLL,$ES_READONLY,$ES_WANTRETURN,$WS_VSCROLL))
    GUICtrlSetData(-1, FileRead(@ScriptDir & "\verlauf."&@MDAY&"."&@MON&".spawn"))
    GUICtrlSetState($verlauf, $GUI_DISABLE)
    EndIf

    If $msg = $verlaufhide Then
    GUISetState(@SW_HIDE, $verlaufsanzeigen)
    GUICtrlDelete($verlaufsanzeige)
    GUICtrlSetState($verlauf, $GUI_ENABLE)
    EndIf

    If $msg = $GUI_EVENT_CLOSE Then Exit
    WEnd

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

    Func _dataload()
    $File=FileOpen(@ScriptDir & "\bosse.spawn")
    $AnzBosse=FileReadLine($File)
    FileReadLine($File)
    For $i=1 to $AnzBosse
    For $z=0 to 5
    $Bosse[$i][$z]=FileReadLine($File)
    Next
    Next
    FileClose($File)
    EndFunc

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

    Func _ADD()
    $stime = stringsplit(guictrlread($respawntime), ":")
    $addhour = _DateAdd("h", $stime[1], GUICtrlRead($date) & " "& GUICtrlRead($time))
    $addminutes = _DateAdd("n", $stime[2], $addhour)
    return $addminutes
    endfunc

    [/autoit]

    Das hier steht in der "bosse.spawn" drinne:

    Spoiler anzeigen
    Code
    15
    Name, Karte, Realm, Realm Spawn, Respawn Zeit*
    Enrit Behemote
    Immerfrost Zentrum 1
    4
    2,4,6,8
    04:00:00
    *
    Torro Hrimthors
    Immerfrost Zentrum 2
    4
    2,4,6,8
    04:00:00
    *
    Drachentöter Nergal
    Immerfrost Zentrum 3
    4
    2,4,6,8
    04:00:00
    *
    Wolfkönig Karth
    Halbgottwiesen
    2
    7,8
    03:00:00
    *
    Bolt
    Nordland
    1
    4
    03:00:00
    *
    Frostdrache Eltha
    Nordland
    2
    1,2
    02:30:00
    *
    Dariel
    Brennende Lande
    2
    3,4
    02:30:00
    *
    Feuerdrache Piseh
    Ewigruh-Lande
    2
    5,6
    02:30:00
    *
    Kugor
    Ewigruh-Lande
    1
    5
    04:00:00
    *
    Zerberus
    Ebene der Verzweiflung
    2
    7,8
    02:30:00
    *
    Hypnos
    Schloss des Urteils 1
    4
    2,4,6,8
    06:00:00
    *
    Morpheus
    Schloss des Urteils 2
    4
    2,4,6,8
    06:00:00
    *
    Hades
    Hades Tempel
    4
    2,4,6,8
    06:00:00
    *
    Titanengeist
    Stadt der Engel
    2
    1,2
    02:30:00
    *
    Edafra
    Verfluchte Wüste
    2
    5,6
    03:00:00
    *
    Alles anzeigen

    DIES IST KEIN BOT NUR EIN RECHNER FÜR NEUE SPAWNZEITEN NACH LEGUNG DES BOSSES!!!

    Ich hoffe Ihr könnt mir helfen ohne den Code zu stark umzuformen.

    Mfg.
    Tak | Jochen

  • Bestimmten Teil eines HTML Dokuments auslesen

    • Pandteranodon
    • 31. Oktober 2011 um 20:20

    Jou so hab ich mir das vorgestellt, nurnicht die beiden Fenster die kommen bevor das in die Datei geschrieben wird.

    So aber nu kommt das nächste. In manchen Dokumenten sind bestimmte Felder nicht vorhanden, dann soll dort n/a bzw. nichts drinne stehen.

    Auch wenn ich die nächsten Daten einlesen lassen möchte, speichert der nur einen Teil und der rest fällt weg.

  • Bestimmten Teil eines HTML Dokuments auslesen

    • Pandteranodon
    • 30. Oktober 2011 um 19:20

    Hallo Autoitler,

    ich bräuchte da mal eine kleine Hilfe, und zwar möchte ich aus einem Bestimmten HTML Dokumten Daten auslesen und in eine TExtdatei schreiben.

    Um diese Tabelle dreht es sich "http://de.wikipedia.org/wiki/Phobos_(Mond)" (Auf der Rechten Seite die Tabelle mit den Eigenschaften des Mondes und der Physikalischen Beschffenheit) davon alles bis auf das Bild.

    Versucht habe ich es so (War nur ein Test Teil aber er liest das komplette Dokument aus und speichert den gesamten Quellcode)

    [autoit]

    #include <IE.au3>

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

    Global $Planet[10]=['Merkur', 'Venus', 'Erde', 'Mars', 'Jupiter', 'Saturn', 'Uranus', 'Neptun', 'Pluto']

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

    $oIE = _IECreate("http://de.wikipedia.org/wiki/Phobos_(Mond)", 0, 0)
    $sHtml = _IEBodyReadHTML($oIE)
    $sHtml = $sHtml & _IEDocReadHTML('<td>Zentralkörper</td><td nowrap="nowrap"><a href="/wiki/'&$Planet[9]&'_(Planet)" title="'&$Planet[9]&' (Planet)">'&$Planet[9]&'</a></td></tr>')

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

    FileWriteLine(@ScriptDir & "\TEXT.txt", $sHtml)

    [/autoit]

    Die Variable $Planet[10] habe ich deshalb gesetzt, da er unterscheiden soll, welcher Mond zu welchem Planeten gehört, da ich später mehrere Monde auslesen möchte (Und diese zu unterschiedlichen Planeten gehören). Ich habe auch schon die $Planet[10] Variable komplett ausgeklammert und den richtigen Quellcode eingegeben, aber er schreibt immernoch den kompletten Quellcode in eine Datei.

    Grund warum ich das mache:
    Im letzten Schulhalbjahr (Ja ihr habt richtig gehört) in Erdkunde hatten wir das Thema "Sonnensystem". Da ich mich schon länger für Astronomie interessiere hab ich angefangen ein kleines "Lexikon" zu schreiben.
    Dies wird komplett Grafisch von AutoIt später dargestellt.

    Diese Ausgelesenen Daten, nur die werte in der 2ten Spalte sollen später in eine TExtdatei geschrieben werden. Dies soll etwa so aussehen.

    Code
    Phobos
    Mars
    9378
    9236
    9519
    0,0151
    0,175°
    0,3189 Tage
    2,139 km/s
    // Es folgen noch die Physikalischen Eigenschaften //
    * <=== Ende des "Phobos Teils" bzw. Trennzeichen für den nächsten Mond (bessere übersicht)
    Deimos
    Mars
    ...
    Alles anzeigen


    Einige Mondseiten bieten aber auch nicht alle Daten (Orbitalischen oder Physikalischen) dort soll dann einfach nichts drinne stehen.

    Da ich nicht alle 178 Monde unseres Sonnensystems per Hand abtippen möchte (Dauert lange hatte es schon hintermir, nur heute komplett Bluescreen und ich hatte keine Sicherung "-.- shit happens), wäre dies ne kleine erleichterung ^^

    Ich hoffe Ihr könnt mir da helfen.

    Mfg.
    Tak | Jochen

  • Happy Birthday Progandy

    • Pandteranodon
    • 11. Oktober 2010 um 18:36

    Dann mal alles gute zum BDay und viel Erfolg beim Studium ^^

  • Aus textdokument senden

    • Pandteranodon
    • 17. Juli 2010 um 14:18

    So wie ich das geschrieben habe, war auch nur nen kleiner Teil aus nem Guide den ich grade schreiben (Ja fürn Game und nein kein Bot).

    Jeder hat es so anderst wie man es schreibt und so finde ich es besser du magst deine Form, ich habe meistens die * im Textdokument um das zu trennen weil da steht meistens nicht nur 1 Zeile zwischen den * sondern so ca. 5-12 Zeilen, die Sternchen kann man auch ersetzen xD die werden eh übersprungen ^^


    mfg.
    Tak|Jochen

  • Aus textdokument senden

    • Pandteranodon
    • 17. Juli 2010 um 04:40

    Also groß und bündig

    Spoiler anzeigen
    [autoit]

    Global $AnzZeilen, $Woerter[5][3] ;~ Immer eins mehr wie im Textdokument ^^

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

    HotKeySet("^1", "_send")

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

    $File=FileOpen("text.txt", 0) ;~ Öffnet das Textdokument

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

    $AnzZeilen=FileReadLine($file) ;~ Im Textdokument ne Zahl am Anfang des Dokuments hinterlegen damit das Script weiss wieviel drinne steht

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

    FileReadLine($file);~ Setzt das FileReadLine auf 0 zurück

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

    For $i=1 to 4 ;~ Hier deine Zeilen reintippen wieviel das Textdokument hat

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

    For $z=1 to 2 ;~ Hier rein wieviel abstand dazwischen ist

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

    $Woerter[$i][$z]=FileReadLine($File) ;~ Liest die Zeilen nochmal ein

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

    Next

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

    Next
    FileClose($file)

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

    While 1
    Sleep(100)
    WEnd

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

    Func _send()
    For $i=1 to 4
    Send($Woerter[$i][1] & "{ENTER}") ;~ Sendet immmer die 1+1 Zeile ab
    Sleep(100)
    Next
    EndFunc

    [/autoit]

    so ist es etwas umfangreicher aber ich hoffe die erklärung reicht, achja schön mit STRG+1 starten ^^

    in der Textdatei steht dann das drinne (Beispiel von dir)

    Code
    3 ;~ zwischen den Sternchen stehen steht Hallo*du*da sprich wenn noch eins dazu kommt muss du hier 4 hinschreiben
    Wort*
    Hallo
    *
    du
    *
    da
    *

    Achja wenn du da weiter dann reinschreibst (Kann sogar nen komplette Zeile sein) musst du dadrauf achten das du immer

    Satz
    *
    Satz
    *

    schreibst ^^

    mfg.
    Tak|Jochen

  • Programm multilingual machen

    • Pandteranodon
    • 29. April 2010 um 13:27

    Löst es doch so

    [autoit]


    Const $ConfigPath=@ScriptDir & "\ini\config.ini"

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

    If Not FileExists($ConfigPath) Then
    IniWrite($ConfigPath, "Language", "Lang", "German")
    EndIf

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

    $Language=IniRead($ConfigPath, "Language", "Lang", "")
    $Langpath=@ScriptDir & "\lang\"&$language&"\lang_"&$language&".ini"

    [/autoit]

    In der Config.ini steht dann ja dann in der Language German drinne, dann einfach auslesen lassen

    z.B. so

    [autoit]

    $start = GUICtrlCreateButton(IniRead($LangPath, $Language, "start", "start"), 248, 0, 75, 25, $WS_GROUP)

    [/autoit]

    Dann steht in der datei \lang\German\lang_german.ini in etwa dies

    Code
    [German]
    
    
    start=Starten ; falls Variable nicht gesetzt fügt er an die Stelle einfach nur start hin

    habe ich bei meinem String Starter so gemacht gehabt ^^

    Hier mal der Code

    Spoiler anzeigen
    [autoit]

    ;~ GUI und Windows Daten
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <StaticConstants.au3>
    #include <EditConstants.au3>
    #include <GuiListView.au3>
    #Include <Array.au3>
    #Include <File.au3>

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

    ;~ Internet
    #include <INet.au3>
    #include <IE.au3>

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

    ;~ Modern Menü
    #include <ModernMenu.au3>

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

    ;~ Tab Items
    #include <StaticConstants.au3>
    #include <TabConstants.au3>

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

    ;~ $_MD5Opcode wird für die Funktion _MD5() benötigt
    Global $_MD5Opcode = "0xC85800005356576A006A006A008D45A850E8280000006A00FF750CFF75088D45A850E8440000006A006A008D45A850FF7510E8710700005F5E5BC9C210005589E58B4D0831C0894114894110C70101234567C7410489ABCDEFC74108FEDCBA98C7410C765432105DC21000C80C0000538B5D088B4310C1E80383E03F8945F88B4510C1E0030143103943107303FF43148B4510C1E81D0143146A40582B45F88945F4394510724550FF750C8B45F88D44031850E8A00700008D43185053E84E0000008B45F48945FC8B45FC83C03F39451076138B450C0345FC5053E8300000008345FC40EBE28365F800EB048365FC008B45102B45FC508B450C0345FC508B45F88D44031850E84D0700005BC9C21000C84000005356576A40FF750C8D45C050E8330700008B45088B088B50048B70088B780C89D021F089D3F7D321FB09D801C1034DC081C178A46AD7C1C10701D189C821D089CBF7D321F309D801C7037DC481C756B7C7E8C1C70C01CF89F821C889FBF7D321D309D801C60375C881C6DB702024C1C61101FE89F021F889F3F7D321CB09D801C20355CC81C2EECEBDC1C1C21601F289D021F089D3F7D321FB09D801C1034DD081C1AF0F7CF5C1C10701D189C821D089CBF7D321F309D801C7037DD481C72AC68747C1C70C01CF89F821C889FBF7D321D309D801C60375D881C6134630A8C1C61101FE89F021F889F3F7D321CB09D801C20355DC81C2019546FDC1C21601F289D021F089D3F7D321FB09D801C1034DE081C1D8988069C1C10701D189C821D089CBF7D321F309D801C7037DE481C7AFF7448BC1C70C01CF89F821C889FBF7D321D309D801C60375E881C6B15BFFFFC1C61101FE89F021F889F3F7D321CB09D801C20355EC81C2BED75C89C1C21601F289D021F089D3F7D321FB09D801C1034DF081C12211906BC1C10701D189C821D089CBF7D321F309D801C7037DF481C7937198FDC1C70C01CF89F821C889FBF7D321D309D801C60375F881C68E4379A6C1C61101FE89F021F889F3F7D321CB09D801C20355FC81C22108B449C1C21601F289D021F889FBF7D321F309D801C1034DC481C162251EF6C1C10501D189C821F089F3F7D321D309D801C7037DD881C740B340C0C1C70901CF89F821D089D3F7D321CB09D801C60375EC81C6515A5E26C1C60E01FE89F021C889CBF7D321FB09D801C20355C081C2AAC7B6E9C1C21401F289D021F889FBF7D321F309D801C1034DD481C15D102FD6C1C10501D189C821F089F3F7D321D309D801C7037DE881C753144402C1C70901CF89F821D089D3F7D321CB09D801C60375FC81C681E6A1D8C1C60E01FE89F021C889CBF7D321FB09D801C20355D081C2C8FBD3E7C1C21401F289D021F889FBF7D321F309D801C1034DE481C1E6CDE121C1C10501D189C821F089F3F7D321D309D801C7037D"
    $_MD5Opcode &= "F881C7D60737C3C1C70901CF89F821D089D3F7D321CB09D801C60375CC81C6870DD5F4C1C60E01FE89F021C889CBF7D321FB09D801C20355E081C2ED145A45C1C21401F289D021F889FBF7D321F309D801C1034DF481C105E9E3A9C1C10501D189C821F089F3F7D321D309D801C7037DC881C7F8A3EFFCC1C70901CF89F821D089D3F7D321CB09D801C60375DC81C6D9026F67C1C60E01FE89F021C889CBF7D321FB09D801C20355F081C28A4C2A8DC1C21401F289D031F031F801C1034DD481C14239FAFFC1C10401D189C831D031F001C7037DE081C781F67187C1C70B01CF89F831C831D001C60375EC81C622619D6DC1C61001FE89F031F831C801C20355F881C20C38E5FDC1C21701F289D031F031F801C1034DC481C144EABEA4C1C10401D189C831D031F001C7037DD081C7A9CFDE4BC1C70B01CF89F831C831D001C60375DC81C6604BBBF6C1C61001FE89F031F831C801C20355E881C270BCBFBEC1C21701F289D031F031F801C1034DF481C1C67E9B28C1C10401D189C831D031F001C7037DC081C7FA27A1EAC1C70B01CF89F831C831D001C60375CC81C68530EFD4C1C61001FE89F031F831C801C20355D881C2051D8804C1C21701F289D031F031F801C1034DE481C139D0D4D9C1C10401D189C831D031F001C7037DF081C7E599DBE6C1C70B01CF89F831C831D001C60375FC81C6F87CA21FC1C61001FE89F031F831C801C20355C881C26556ACC4C1C21701F289F8F7D009D031F001C1034DC081C1442229F4C1C10601D189F0F7D009C831D001C7037DDC81C797FF2A43C1C70A01CF89D0F7D009F831C801C60375F881C6A72394ABC1C60F01FE89C8F7D009F031F801C20355D481C239A093FCC1C21501F289F8F7D009D031F001C1034DF081C1C3595B65C1C10601D189F0F7D009C831D001C7037DCC81C792CC0C8FC1C70A01CF89D0F7D009F831C801C60375E881C67DF4EFFFC1C60F01FE89C8F7D009F031F801C20355C481C2D15D8485C1C21501F289F8F7D009D031F001C1034DE081C14F7EA86FC1C10601D189F0F7D009C831D001C7037DFC81C7E0E62CFEC1C70A01CF89D0F7D009F831C801C60375D881C6144301A3C1C60F01FE89C8F7D009F031F801C20355F481C2A111084EC1C21501F289F8F7D009D031F001C1034DD081C1827E53F7C1C10601D189F0F7D009C831D001C7037DEC81C735F23ABDC1C70A01CF89D0F7D009F831C801C60375C881C6BBD2D72AC1C60F01FE89C8F7D009F031F801C20355E481C291D386EBC1C21501F28B4508010801500401700801780C5F5E5BC9C20800C814000053E840000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008F45EC8B5D0C6A088D4310508D"
    $_MD5Opcode &= "45F850E8510000008B4310C1E80383E03F8945F483F838730B6A38582B45F48945F0EB096A78582B45F48945F0FF75F0FF75ECFF750CE831F8FFFF6A088D45F850FF750CE823F8FFFF6A1053FF7508E8050000005BC9C210005589E55156578B7D088B750C8B4D10FCF3A45F5E595DC20C00"

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

    HotKeySet("^q", "_end")
    HotKeySet("^n", "_new_p")
    HotKeySet("^a", "_stringlist")

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

    #NoTrayIcon

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

    Global $AnzItems, $item[999999][5], $items[9999999]
    Global $Browser

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

    Const $ConfigPath=@ScriptDir & "\ini\config.ini"
    Const $StringPath=@ScriptDir & "\ini\string.trf"
    Const $VersionPath=@ScriptDir & "\ini\version.ini"
    Const $ChangelogPath=@ScriptDir & "\changelog.txt"
    Const $PassPath=@ScriptDir & "\ini\pass.ini"

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

    FileDelete("Updates\*.*")

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

    If Not FileExists("\ini") Then DirCreate(@ScriptDir & "\ini")

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

    ;~ If Not FileExists("\Updates") Then DirCreate(@ScriptDir & "\Updates")

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

    If Not FileExists($StringPath) Then
    FileWrite($StringPath, "String, Pfad zum Ordner, EXE Datei, Name*")
    FileWriteLine($StringPath, "")
    EndIf

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

    If Not FileExists($ConfigPath) Then
    IniWrite($ConfigPath, "Transparenz", "Tranz", 100)
    IniWrite($ConfigPath, "Anzahl", "Anzahl", 0)
    IniWrite($ConfigPath, "Language", "Lang", "German")

    IniWrite($ConfigPath, "Checks", "Update", "1")
    IniWrite($ConfigPath, "Checks", "Passwort", "1")
    IniWrite($ConfigPath, "Checks", "Transmeldung", "1")
    IniWrite($ConfigPath, "Checks", "WinMove", "1")
    EndIf

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

    $Language=IniRead($ConfigPath, "Language", "Lang", "")
    $Langpath=@ScriptDir & "\lang\"&$language&"\lang_"&$language&".ini"

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

    If Not FileExists($Langpath) Then
    If $Language="German" Then
    MsgBox(16, "Fehler Language Datei nicht gefunden!", "Die Language File '"&$Language&"' wurde nicht gefunden. Das Programm wird daher geschlossen!")
    EMail()
    ElseIf $Language="English" Then
    MsgBox(16, "Error Language File not found!", "The Language File '"&$Language&"' was not found. Programm was closed!")
    EndIf
    Exit
    EndIf

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

    If Not FileExists($PassPath) Then
    $pass=InputBox(IniRead($LangPath, $Language, "password", "password"), IniRead($LangPath, $Language, "pls_password", "pls_password"), "", "*")
    IniWrite($PassPath, "Passwort", "Passwort", _MD5($pass))
    Else
    If IniRead($ConfigPath, "Checks", "Passwort", "")=1 Then
    ; Prüfe ob Angabe richtig
    $res = InputBox(IniRead($LangPath, $Language, "password", "password"),IniRead($LangPath, $Language, "pls_password", "pls_password"),'','*')
    If IniRead($PassPath, "Passwort", "Passwort", "nix") <> _MD5($res) then
    MsgBox(16, IniRead($LangPath, $Language, "bad_password", "bad_password"), IniRead($LangPath, $Language, "bad_password1", "bad_password"))
    Exit
    EndIf
    EndIf
    EndIf

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

    dataload()
    #Region ### START Koda GUI section ### Form=Language wird hier meistens benutzt
    $MainWindow = GUICreate("", @DesktopWidth, 5, 0, 0, BitOR($WS_SYSMENU,$WS_POPUP,$WS_POPUPWINDOW,$WS_BORDER,$WS_CLIPSIBLINGS, $WS_EX_TOOLWINDOW), BitOr($WS_EX_TOOLWINDOW,$WS_EX_WINDOWEDGE))
    WinSetTrans($MainWindow, "", IniRead($ConfigPath, "Transparenz", "Tranz", 0) * 2.55)

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

    ;~ String eingabe um Programm zu starten
    $Stringl = GUICtrlCreateLabel(IniRead($LangPath, $Language, "string_label", "string_label"), 0, 0, 120, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    GUICtrlSetBkColor($Stringl, $GUI_BKCOLOR_TRANSPARENT)
    $eingabe = GUICtrlCreateInput(IniRead($LangPath, $Language, "string_input", "string_input"), 120, 0, 121, 21)

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

    ;~ Menü aufbauen
    ;~~ Menü "Optionen"
    $options = GUICtrlCreateMenu(IniRead($LangPath, $Language, "mainmenu", "mainmenu"))
    $new_programm = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "new_programm", "new_programm"), $options)
    _GUICtrlODMenuItemSetIcon($new_programm, @ScriptDir & "\gfx\add_programm.ico") ;~ Icon zuweissen
    _SetMenuIconBkColor(0xFFFFFF)
    _SetMenuBkColor(0xFFFFFF)

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

    $programmlistshow = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "specified", "specified"), $options)
    _GUICtrlODMenuItemSetIcon($programmlistshow, @ScriptDir & "\gfx\stringlist.ico") ;~ Icon zuweissen

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

    GUICtrlCreateMenuItem("", $options)
    $closed = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "closed", "closed"), $options)
    _GUICtrlODMenuItemSetIcon($closed, @ScriptDir & "\gfx\closed.ico") ;~ Icon zuweissen

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

    ;~~ Menü "Einstellungen"
    $options = GUICtrlCreateMenu(IniRead($LangPath, $Language, "options", "options"))
    $optionsedit= _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "options", "options"), $options)
    _GUICtrlODMenuItemSetIcon($optionsedit, @ScriptDir & "\gfx\options.ico") ;~ Icon zuweissen
    ;GUICtrlSetState(-1, $GUI_DISABLE)

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

    ;~~ Menü "Help"
    $help = GUICtrlCreateMenu(IniRead($LangPath, $Language, "help", "help"))
    $link1 = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "homepage", "homepage"), $help)
    _GUICtrlODMenuItemSetIcon($link1, @ScriptDir & "\gfx\homepage.ico") ;~ Icon zuweissen

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

    $link2 = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "board", "board"), $help)
    _GUICtrlODMenuItemSetIcon($link2, @ScriptDir & "\gfx\board.ico") ;~ Icon zuweissen

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

    $changelog = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "changelog_read", "changelog_read"), $help)
    _GUICtrlODMenuItemSetIcon($changelog, @ScriptDir & "\gfx\changelog.ico") ;~ Icon zuweissen

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

    $updatecheck = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "update_check", "update_check"), $help)
    _GUICtrlODMenuItemSetIcon($updatecheck, @ScriptDir & "\gfx\ucheck.ico") ;~ Icon zuweissen
    GUICtrlSetState(-1, $GUI_DISABLE)

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

    GUICtrlCreateMenuItem("", $help)
    $email = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "email-send", "email_send"), $help)
    _GUICtrlODMenuItemSetIcon($email, @ScriptDir & "\gfx\email.ico") ;~ Icon zuweissen

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

    $other = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "other", "other"), $help)
    _GUICtrlODMenuItemSetIcon($other, @ScriptDir & "\gfx\other.ico") ;~ Icon zuweissen

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

    ;~ Slider erstellen und Label mit Slider umstellen
    $Slider = GUICtrlCreateSlider(608, 0, 118, 21)
    GUICtrlSetLimit(-1, 100, 15)
    GUICtrlSetData($slider, 100)

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

    ;~ Tranzparenz aus Ini laden und $Slider einstellen
    GUICtrlSetData($Slider, IniRead($ConfigPath, "Transparenz", "Tranz", 0))
    $trans = GUICtrlCreateLabel(IniRead($LangPath, $Language, "transparency", "transpareny"), 512, 0, 94, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    GUICtrlSetBkColor($trans, $GUI_BKCOLOR_TRANSPARENT)
    $transprozent = GUICtrlCreateLabel("0%", 728, 0, 38, 19)
    GUICtrlSetFont(-1, 9, 400, 0, "Arial")
    GUICtrlSetBkColor($transprozent, $GUI_BKCOLOR_TRANSPARENT)
    GUICtrlSetData($transprozent, "100%")

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

    ;~ Tranzparenz aus Ini laden und $tranzprozent einstellen
    GUICtrlSetData($transprozent, IniRead($ConfigPath, "Transparenz", "Tranz", 0)&"%")

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

    ;~ Start Button um Programm mit dem eingegebenen String zu starten
    $start = GUICtrlCreateButton(IniRead($LangPath, $Language, "start", "start"), 248, 0, 75, 25, $WS_GROUP)

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

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

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

    ;********************************************************************************************
    ; Programmliste zeigen mit String zugehörigkeit
    ;********************************************************************************************

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

    $programmlist = GUICreate("", 281, 460, 0, 45, BitOR($WS_SYSMENU,$WS_POPUP,$WS_POPUPWINDOW,$WS_BORDER,$WS_CLIPSIBLINGS, $WS_EX_TOOLWINDOW), BitOr($WS_EX_TOOLWINDOW,$WS_EX_WINDOWEDGE))
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
    $listviewbk = GUICtrlCreateLabel("", 0, 0, 276, 428)
    GUICtrlSetState(-1, $GUI_DISABLE)
    $listview = GUICtrlCreateListView(IniRead($LangPath, $Language, "string", "string")&"|"&IniRead($LangPath, $Language, "name", "name"), 0, 0, 273, 425)
    GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 0, 100)
    GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 1, 150)

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

    $programmlistclose = GUICtrlCreateButton(IniRead($LangPath, $Language, "window_close", "window_close"), 176, 432, 99, 25, $WS_GROUP)
    $programmlistaktu = GUICtrlCreateButton(IniRead($LangPath, $Language, "update", "update"), 0, 432, 75, 25, $WS_GROUP)
    $auswahl_delete = GUICtrlCreateButton(IniRead($LangPath, $Language, "string_delete", "string_delete"), 80, 432, 91, 25, $WS_GROUP)
    GUICtrlSetState(-1, $GUI_DISABLE)

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

    ;********************************************************************************************
    ; "Neues Programm einfügen" Fenster öffnen
    ;********************************************************************************************

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

    $programme = GUICreate("", 286, 187, 0, 45, BitOR($WS_SYSMENU,$WS_POPUP,$WS_POPUPWINDOW,$WS_BORDER,$WS_CLIPSIBLINGS, $WS_EX_TOOLWINDOW), BitOr($WS_EX_TOOLWINDOW,$WS_EX_WINDOWEDGE))
    $Label1 = GUICtrlCreateLabel(IniRead($LangPath, $Language, "name_programm", "name_programm"), 8, 8, 143, 17)
    $Label2 = GUICtrlCreateLabel(IniRead($LangPath, $Language, "path_to_folder", "path_to_folder"), 64, 40, 86, 17)
    $Label3 = GUICtrlCreateLabel(IniRead($LangPath, $Language, "enter_string_one", "enter_string_one"), 72, 112, 81, 17)
    $Label4 = GUICtrlCreateLabel(IniRead($LangPath, $Language, "path_to_folder", "path_to_folder"), 48, 72, 98, 17)
    $Label5 = GUICtrlCreateLabel(IniRead($LangPath, $Language, "sample", "sample"), 72, 88, 79, 17)

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

    $gamename = GUICtrlCreateInput(IniRead($LangPath, $Language, "insert_name", "insert_name"), 160, 8, 121, 21)
    $programm1 = GUICtrlCreateInput(IniRead($LangPath, $Language, "specifying_path", "specifying_path"), 160, 40, 121, 21)
    $exedata = GUICtrlCreateInput(IniRead($LangPath, $Language, "sample_exe", "sample_exe"), 160, 80, 121, 21, BitOR($ES_AUTOVSCROLL,$ES_AUTOHSCROLL))
    $Wort1 = GUICtrlCreateInput(IniRead($LangPath, $Language, "current_string", "current_string"), 160, 112, 121, 21)
    $stringgen = GUICtrlCreateButton(IniRead($LangPath, $Language, "generate_string", "generate_string"), 0, 136, 99, 25, $WS_GROUP)
    $tutorial = GUICtrlCreateButton(IniRead($LangPath, $Language, "tutorial", "tutorial"), 104, 136, 75, 25, $WS_GROUP)
    $programmesave = GUICtrlCreateButton(IniRead($LangPath, $Language, "save", "save"), 104, 160, 75, 25, $WS_GROUP)
    $programmeclose = GUICtrlCreateButton(IniRead($LangPath, $Language, "window_close", "window_close"), 184, 136, 99, 25, $WS_GROUP)

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

    ;********************************************************************************************
    ; "Changelog" Fenster öffnen
    ;********************************************************************************************

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

    $changelogwindow = GUICreate("Changelog", 405, 445, 302, 218)
    $changlogedit = GUICtrlCreateEdit("", 0, 0, 401, 441, BitOR($ES_AUTOHSCROLL,$ES_READONLY,$ES_WANTRETURN,$WS_VSCROLL))

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

    ;********************************************************************************************
    ; Other Menü Aufbauen und GUI Erzeugen
    ;********************************************************************************************

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

    $othermenu = GUICreate(IniRead($LangPath, $Language, "other_string_starter", "other_string_starter"), 400, 90, 302, 220)
    $PageControl = GUICtrlCreateTab(0, 0, 396, 88)
    GUICtrlSetResizing(-1, $GUI_DOCKWIDTH+$GUI_DOCKHEIGHT)
    $otherss = GUICtrlCreateTabItem(IniRead($LangPath, $Language, "other_string_starter", "other_string_starter"))
    GUICtrlSetState(-1,$GUI_SHOW)
    $createdlabel = GUICtrlCreateLabel(IniRead($LangPath, $Language, "created", "created") & " AutoIt", 8, 32, 195, 24)
    GUICtrlSetFont(-1, 15, 400, 0, "Aharoni")
    GUICtrlSetBkColor(-1, 0xFFFFFF)
    $writtenlabel = GUICtrlCreateLabel(IniRead($LangPath, $Language, "written", "written") & " Tak", 8, 56, 149, 24)
    GUICtrlSetFont(-1, 15, 400, 0, "Aharoni")
    GUICtrlSetBkColor(-1, 0xFFFFFF)
    $idea = GUICtrlCreateTabItem(IniRead($LangPath, $Language, "idea", "idea"))
    $idealable = GUICtrlCreateLabel(IniRead($LangPath, $Language, "idea_by", "idea_by") & " Strom666", 48, 32, 274, 42)
    GUICtrlSetFont(-1, 20, 400, 0, "Arial Black")
    GUICtrlCreateTabItem("")

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

    ;*******************************************************************************************
    ; Options Fenster aufbauen
    ;*******************************************************************************************

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

    $optionswindow = GUICreate("", 286, 187, 0, 45, BitOR($WS_SYSMENU,$WS_POPUP,$WS_POPUPWINDOW,$WS_BORDER,$WS_CLIPSIBLINGS, $WS_EX_TOOLWINDOW), BitOr($WS_EX_TOOLWINDOW,$WS_EX_WINDOWEDGE))
    $optionsl = GUICtrlCreateLabel(IniRead($LangPath, $Language, "options", "options"), 8, 8, 273, 26)
    GUICtrlSetFont(-1, 14, 400, 4, "Arial")
    $winmove = GUICtrlCreateCheckbox(IniRead($LangPath, $Language, "checkboxes", "checkboxes"), 192, 40, 97, 17)
    $updatecheckc = GUICtrlCreateCheckbox(IniRead($LangPath, $Language, "checkboxes", "checkboxes"), 192, 64, 97, 17)
    GUICtrlSetState(-1, $GUI_DISABLE)
    $passcheckc = GUICtrlCreateCheckbox(IniRead($LangPath, $Language, "checkboxes", "checkboxes"), 192, 88, 97, 17)
    $tranzcheckc = GUICtrlCreateCheckbox(IniRead($LangPath, $Language, "checkboxes", "checkboxes"), 192, 112, 97, 17)
    checks()
    $speak = GUICtrlCreateCombo($Language , 192, 136, 97, 25)
    Local $file_A = _fileList(@ScriptDir & "\lang\", "*", 0)
    Local $a_A = _ArrayToString($file_A, "|")
    GUICtrlSetData($speak, $a_A)
    $winmovel = GUICtrlCreateLabel(IniRead($LangPath, $Language, "winmove_lable", "winmove_lable"), 8, 40, 150, 17)
    $updatecheckl = GUICtrlCreateLabel(IniRead($LangPath, $Language, "update_lable", "update_lable"), 8, 64, 150, 17)
    $passcheckl = GUICtrlCreateLabel(IniRead($LangPath, $Language, "password_lable", "passwort_lable"), 8, 88, 168, 17)
    $tranzparentl = GUICtrlCreateLabel(IniRead($LangPath, $Language, "transpareny_lable", "transpareny_lable"), 8, 112, 165, 17)
    $speakl = GUICtrlCreateLabel(IniRead($LangPath, $Language, "speak_lable", "speak_lable"), 8, 136, 47, 17)
    $savedoptions = GUICtrlCreateButton(IniRead($LangPath, $Language, "save", "save"), 8, 160, 75, 25, $WS_GROUP)
    $optionsclosed = GUICtrlCreateButton(IniRead($LangPath, $Language, "window_close", "window_close"), 96, 160, 107, 25, $WS_GROUP)

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

    ;~ GUI Transparenz aus Ini laden und einstellen
    WinSetTrans($programmlist, "", IniRead($ConfigPath, "Transparenz", "Tranz", 0) * 2.55)
    WinSetTrans($optionswindow, "", IniRead($ConfigPath, "Transparenz", "Tranz", 0) * 2.55)
    WinSetTrans($programme, "", IniRead($ConfigPath, "Transparenz", "Tranz", 0) * 2.55)

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

    ;********************************************************************************************
    ; Eigendlicher Code beginnt hier!
    ;********************************************************************************************

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

    While 1
    $msg = GUIGetMsg()

    ;~ GUI wie Taskleiste einklappen
    If IniRead($ConfigPath, "Checks", "WinMove", "1")=1 Then
    $WPos = WinGetPos($MainWindow)
    $MPos = MouseGetPos()
    If ($MPos[0] >= $WPos[0]) And ($MPos[0] <= ($WPos[0] + $WPos[2])) And ($MPos[1] >= $WPos[1]) And ($MPos[1] <= ($WPos[1] + $WPos[3])) Then
    WinSetOnTop($MainWindow, "", 1)
    WinMove($MainWindow, "", 0, 0, @DesktopWidth, 45, 3)
    Else
    WinSetOnTop($MainWindow, "", 1)
    WinMove($MainWindow, "", 0, 0, @DesktopWidth, 5, 3)
    EndIf
    Else
    WinSetOnTop($MainWindow, "", 1)
    WinMove($MainWindow, "", 0, 0, @DesktopWidth, 45, 3)
    EndIf

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


    ;~ Eingegebenen String mit Ini Einträgen abgleichen und Programm starten
    If $msg=$start Then
    dataload()
    For $i=1 to $AnzItems
    If GUICtrlRead($eingabe)==$item[$i][0] Then
    ShellExecute($item[$i][1] & $item[$i][2], "", $item[$i][1])
    EndIf
    Next
    EndIf

    ;~ Stringangaben Zeigen
    If $msg=$programmlistshow Then
    dataload()
    GUISetState(@SW_SHOW, $programmlist)

    $Read=GUICtrlRead($Slider)
    For $i=1 to $Read Step 1
    WinSetTrans($programmlist, "", $i * 2.55)
    Sleep(10)
    Next
    Sleep(100)

    For $i=1 to $AnzItems
    GUICtrlDelete($items[$i])
    $items[$i]=GUICtrlCreateListViewItem($item[$i][0]&"|"&$item[$i][3], $listview)
    Next
    EndIf

    ;~ Programmliste aktualisieren
    If $msg=$programmlistaktu Then
    dataload()
    For $i=1 to $AnzItems
    GUICtrlDelete($items[$i])
    $items[$i]=GUICtrlCreateListViewItem($item[$i][0]&"|"&$item[$i][3], $listview)
    Next
    EndIf

    If $msg=$auswahl_delete Then
    EndIf

    If $msg=$programmlistclose Then
    $Read=GUICtrlRead($Slider)
    For $i=$Read to 1 Step -1
    WinSetTrans($programmlist, "", $i * 2.55)
    Sleep(10)
    Next
    Sleep(10)
    GUISetState(@SW_HIDE, $programmlist)
    EndIf

    ;~ Neues Programm Hinzufügen Fenster öffnen
    If $msg=$new_programm Then
    GUISetState(@SW_SHOW, $programme)

    $Read=GUICtrlRead($Slider)
    For $i=1 to $Read Step 1
    WinSetTrans($programme, "", $i * 2.55)
    Sleep(10)
    Next
    EndIf

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

    ;~ String Generieren
    If $msg=$stringgen Then
    $Zeichen = Random(3, 10)

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

    $Wort = ""
    For $i = 1 to $Zeichen
    $Buchstabe = Random(65, 90) & Random(65, 90) & Random(65, 90) & Random(65, 90) & Random(65, 90) & Random(65, 90)
    If $Buchstabe > 57 AND $Buchstabe < 65 OR $Buchstabe > 90 AND $Buchstabe < 97 Then
    $i -= 1
    Else
    $Wort &= Chr($Buchstabe)
    EndIf
    Next
    GUICtrlSetData($Wort1, $Wort)
    EndIf

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

    ;~ Programm mit String in ini Schreiben
    If $msg=$programmesave Then
    save()
    EndIf

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

    If $msg=$tutorial Then
    tuthinweis()
    EndIf

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

    ;~ Neues Programm Hinzufügen Fenster schliessen
    If $msg=$programmeclose Then
    $Read=GUICtrlRead($Slider)
    For $i=$Read to 1 Step -1
    WinSetTrans($programme, "", $i * 2.55)
    Sleep(10)
    Next
    Sleep(1000)
    GUISetState(@SW_HIDE, $programme)
    EndIf

    ;~ Options Fenster aufbauen
    If $msg=$optionsedit Then
    GUISetState(@SW_SHOW, $optionswindow)
    $Read=GUICtrlRead($Slider)
    For $i=1 to $Read
    WinSetTrans($optionswindow, "", $i * 2.55)
    Sleep(10)
    Next
    Sleep(1000)
    If GUICtrlRead($updatecheckc)=$GUI_UNCHECKED Then
    MsgBox(16, IniRead($LangPath, $Language, "update_check", "update_check"), IniRead($LangPath, $Language, "update_check_false", "update_check_false"))
    EndIf
    EndIf

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

    If $msg=$savedoptions Then
    saveo()
    MsgBox(64, "Gespeichert", "Änderungen wurden gespeichert")
    EndIf

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

    ;~ Options Fenster schliessen
    If $msg=$optionsclosed Then
    $Read=GUICtrlRead($Slider)
    For $i=$Read to 1 Step -1
    WinSetTrans($optionswindow, "", $i * 2.55)
    Sleep(10)
    Next
    Sleep(1000)
    saveo()
    GUISetState(@SW_HIDE, $optionswindow)
    EndIf

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

    If $msg=$link1 Then
    GoLink1()
    EndIf

    If $msg=$link2 Then
    GoLink2()
    EndIf

    If $msg=$email Then
    email()
    EndIf

    ;~ Changelog Fenster öffnen
    If $msg=$changelog Then
    $changelogedit ="=========================================================================="&@CRLF
    $changelogedit &=" String Starter - Programm Changelog"&@CRLF
    $changelogedit &=" Copyright (c) by Tak"&@CRLF
    $changelogedit &=" E-Mail: tak90@gmx.de"&@CRLF
    $changelogedit &="==============================================================================="&@CRLF
    $changelogedit &=" + Neues Feature oder änderungen"&@CRLF
    $changelogedit &=" - Bug fix oder entfernungen"&@CRLF
    $changelogedit &=" # Neues Feature geplant"&@CRLF
    $changelogedit &=" * Änderung an informationen"&@CRLF
    $changelogedit &=" ! Wichtig - Bitte Lesen!"&@CRLF
    $changelogedit &="==============================================================================="&@CRLF&@CRLF

    GUISetState(@SW_SHOW, $changelogwindow)
    $Read=GUICtrlRead($Slider)
    For $i=1 to $Read Step 1
    WinSetTrans($changelogwindow, "", $i * 2.55)
    Sleep(10)
    Next
    Sleep(10)
    If Not FileExists($ChangelogPath) Then
    GUICtrlSetData($changelogedit, "No Changelog File Found!!!")
    Else
    GUICtrlSetData($changlogedit, $changelogedit & FileRead($ChangelogPath))
    EndIf
    EndIf

    ;~ Changelog Fenster schliessen
    If $msg=$GUI_EVENT_CLOSE Then
    $Read=GUICtrlRead($Slider)
    For $i=$Read to 1 Step -1
    WinSetTrans($changelogwindow, "", $i * 2.55)
    Sleep(10)
    Next
    Sleep(10)
    GUISetState(@SW_HIDE, $changelogwindow)
    EndIf

    ;~ Other Fenster öffnen
    If $msg=$other Then
    GUISetState(@SW_SHOW, $othermenu)

    $Read=GUICtrlRead($Slider)
    For $i=1 to $Read Step 1
    WinSetTrans($othermenu, "", $i * 2.55)
    Sleep(10)
    Next
    Sleep(100)
    EndIf

    ;~ Other Fenster schliessen
    If $msg=$GUI_EVENT_CLOSE Then
    $Read=GUICtrlRead($Slider)
    For $i=$Read to 1 Step -1
    WinSetTrans($othermenu, "", $i * 2.55)
    Sleep(10)
    Next
    Sleep(100)

    GUISetState(@SW_HIDE, $othermenu)
    EndIf

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

    ;~ Transparent Slider Lesen und Transparenz einstellen
    If $msg=$Slider Then
    $Read=GUICtrlRead($Slider)

    WinSetTrans($MainWindow, "", $Read * 2.55)
    WinSetTrans($programmlist, "", $Read * 2.55)
    WinSetTrans($programme, "", $Read * 2.55)
    WinSetTrans($optionswindow, "", $Read * 2.55)

    GUICtrlSetData($transprozent, 100/100*$Read&"%")
    EndIf

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

    ;~ String Starter schliessen und Werte in ini Speichern
    If $msg=$closed Then
    $Read=GUICtrlRead($Slider)
    For $i=$Read to 1 Step -1
    WinSetTrans($MainWindow, "", $i * 2.55)
    WinSetTrans($programmlist, "", $i * 2.55)
    WinSetTrans($programme, "", $i * 2.55)
    WinSetTrans($othermenu, "", $i * 2.55)
    WinSetTrans($optionswindow, "", $i * 2.55)
    Sleep(10)
    Next
    Sleep(100)

    IniWrite($ConfigPath, "Transparenz", "Tranz", GUICtrlRead($Slider))
    ConsoleWrite("Transparenz wurde auf "&GUICtrlRead($Slider)&"% gespeichert"&@CRLF)
    If IniRead($ConfigPath, "Checks", "Transmeldung", "")=1 Then
    MsgBox(64, IniRead($LangPath, $Language, "trans_check", "trans_check"), IniRead($LangPath, $Language, "trans_message_one", "trans_message")&" "&GUICtrlRead($Slider)&"% "&IniRead($LangPath, $Language, "trans_message_two", "trans_message"))
    EndIf
    Exit
    EndIf
    WEnd

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

    ;~ tutorial hinweis
    Func tuthinweis()
    $tut=FileRead(@ScriptDir & "\lang\"&$language&"\tut_"&$language&".txt")

    If Not FileExists(@ScriptDir & "\lang\"&$language&"\tut_"&$language&".txt") Then
    MsgBox(64,IniRead($LangPath, $Language, "tutorial_h", "tutorial_h"), "tut file not found!")
    Else
    MsgBox(64,IniRead($LangPath, $Language, "tutorial_h", "tutorial_h"), $tut)
    EndIf
    EndFunc

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

    ;~ Checks für Optionen
    Func checks()
    If IniRead($ConfigPath, "Checks", "WinMove", "1")=1 Then
    GUICtrlSetState($winmove, $GUI_CHECKED)
    Else
    GUICtrlSetState($winmove, $GUI_UNCHECKED)
    EndIf

    If IniRead($ConfigPath, "Checks", "Update", "1")=1 Then
    GUICtrlSetState($updatecheckc, $GUI_CHECKED)
    Else
    GUICtrlSetState($updatecheckc, $GUI_UNCHECKED)
    EndIf

    If IniRead($ConfigPath, "Checks", "Passwort", "1")=1 Then
    GUICtrlSetState($passcheckc, $GUI_CHECKED)
    Else
    GUICtrlSetState($passcheckc, $GUI_UNCHECKED)
    EndIf

    If IniRead($ConfigPath, "Checks", "Transmeldung", "1")=1 Then
    GUICtrlSetState($tranzcheckc, $GUI_CHECKED)
    Else
    GUICtrlSetState($tranzcheckc, $GUI_UNCHECKED)
    EndIf
    EndFunc

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

    ;~ Speichern von den Optionen
    Func saveo()
    If GUICtrlRead($winmove)=$GUI_CHECKED Then
    IniWrite($ConfigPath, "Checks", "WinMove", "1")
    Else
    IniWrite($ConfigPath, "Checks", "WinMove", "0")
    EndIf

    If GUICtrlRead($updatecheckc)=$GUI_CHECKED Then
    IniWrite($ConfigPath, "Checks", "Update", "1")
    Else
    IniWrite($ConfigPath, "Checks", "Update", "0")
    EndIf

    If GUICtrlRead($passcheckc)=$GUI_CHECKED Then
    IniWrite($ConfigPath, "Checks", "Passwort", "1")
    Else
    IniWrite($ConfigPath, "Checks", "Passwort", "0")
    EndIf

    If GUICtrlRead($tranzcheckc)=$GUI_CHECKED Then
    IniWrite($ConfigPath, "Checks", "Transmeldung", "1")
    Else
    IniWrite($ConfigPath, "Checks", "Transmeldung", "0")
    EndIf

    IniWrite($ConfigPath, "Language", "Lang", GUICtrlRead($speak))
    EndFunc

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

    ;~ daten aus der String.tft laden
    Func dataload()
    $File=FileOpen($StringPath, 0)
    $AnzItems=IniRead($ConfigPath, "Anzahl", "Anzahl", "")
    FileReadLine($file)
    For $i=1 to $AnzItems
    For $z=0 to 4
    $item[$i][$z]=FileReadLine($file)
    Next
    Next
    FileClose($file)
    EndFunc

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

    ;~ Neues Programm einfügen Fenster in den Vordergrund holen
    Func _new_p()
    GUISetState(@SW_SHOW, $programme)

    $Read=GUICtrlRead($Slider)
    For $i=1 to $Read Step 1
    WinSetTrans($programme, "", $i * 2.55)
    Sleep(10)
    Next
    EndFunc

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

    ;~ String Angaben Fenster in den Vordergrund holen wenn STRG+A gedrückt wurde
    Func _stringlist()
    dataload()
    GUISetState(@SW_SHOW, $programmlist)

    $Read=GUICtrlRead($Slider)
    For $i=1 to $Read Step 1
    WinSetTrans($programmlist, "", $i * 2.55)
    Sleep(10)
    Next
    Sleep(100)

    For $i=1 to $AnzItems
    GUICtrlDelete($items[$i])
    $items[$i]=GUICtrlCreateListViewItem($item[$i][0]&"|"&$item[$i][3], $listview)
    Next
    EndFunc

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

    ;~ _end ausführen wenn STRG+Q gedrückt wird
    Func _end()
    IniWrite($ConfigPath, "Transparenz", "Tranz", GUICtrlRead($Slider))
    $Read=GUICtrlRead($Slider)
    For $i=$Read to 1 Step -1
    WinSetTrans($MainWindow, "", $i * 2.55)
    WinSetTrans($programmlist, "", $i * 2.55)
    WinSetTrans($programme, "", $i * 2.55)
    WinSetTrans($othermenu, "", $i * 2.55)
    WinSetTrans($optionswindow, "", $i * 2.55)
    Sleep(10)
    Next
    Sleep(100)
    ConsoleWrite("Transparenz wurde auf "&GUICtrlRead($Slider)&"% gespeichert"&@CRLF)
    If IniRead($ConfigPath, "Checks", "Transmeldung", "")=1 Then
    $yesno=MsgBox(68, IniRead($LangPath, $Language, "trans_check", "trans_check"), IniRead($LangPath, $Language, "trans_message_one", "trans_message")&" "&GUICtrlRead($Slider)&"% "&IniRead($LangPath, $Language, "trans_message_two", "trans_message")&@CRLF&IniRead($LangPath, $Language, "trans_message_three", "trans_message"))
    If $yesno=7 Then
    IniWrite($ConfigPath, "Checks", "Transmeldung", "0")
    EndIf
    EndIf
    Exit
    EndFunc

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

    ;*******************************************
    ; Speicher Funktion für neues Programm
    ;*******************************************

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

    Func save()
    $dateiinhalt=FileRead($StringPath)
    $array1=stringsplit($dateiinhalt,@crlf,3)
    $reg=IniRead($ConfigPath, "Anzahl", "Anzahl",0)
    $array=number($reg)+1
    IniWrite($ConfigPath, "Anzahl", "Anzahl", $array)
    $dateiinhalt=_ArrayToString($array1,@crlf)
    filedelete($StringPath)
    FileWrite($StringPath, $dateiinhalt)
    FileWriteLine($StringPath, GUICtrlRead($Wort1))
    FileWriteLine($StringPath, GUICtrlRead($programm1))
    FileWriteLine($StringPath, GUICtrlRead($exedata))
    FileWriteLine($StringPath, GUICtrlRead($gamename))
    FileWriteLine($StringPath, "*")
    $s=GUICtrlRead($gamename)
    $u=GUICtrlRead($Wort1)
    MsgBox(0, IniRead($LangPath, $Language, "new_string_h", "new_string_header"), IniRead($LangPath, $Language, "new_string_message_one", "new_string_message_one")&GUICtrlRead($gamename)&IniRead($LangPath, $Language, "new_string_message_two", "new_string_message_two")&GUICtrlRead($Wort1)&IniRead($LangPath, $Language, "new_string_message_three", "new_string_message_three"))
    EndFunc

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

    ;********************************************
    ; Browser erstellen und öffnen!
    ;********************************************
    Func GoLink1()
    $Browser="http://autoit.de"
    Browsen()
    EndFunc

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

    Func GoLink2()
    $Browser="http://autoit.de/index.php?page=Thread&postID=135535&highlight=#post135535"
    Browsen()
    EndFunc

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

    Func Browsen()
    ShellExecute($Browser)
    EndFunc

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

    Func EMail()
    _INetMail("tak90@gmx.de", "Fehler/Hinweis melden", "")
    EndFunc

    ;*******************************************************
    ; MD5 Code
    ;*******************************************************
    ; MD5-Funktion um einen String mit MD5 zu verschlüsseln
    ;*******************************************************

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

    Func _MD5($Data)
    Local $CodeBuffer = DllStructCreate("byte[" & BinaryLen($_MD5Opcode) & "]")
    DllStructSetData($CodeBuffer, 1, $_MD5Opcode)

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

    Local $Input = DllStructCreate("byte[" & BinaryLen($Data) & "]")
    DllStructSetData($Input, 1, $Data)

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

    Local $Digest = DllStructCreate("byte[16]")

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

    DllCall("user32.dll", "none", "CallWindowProc", "ptr", DllStructGetPtr($CodeBuffer), _
    "ptr", DllStructGetPtr($Input), _
    "int", BinaryLen($Data), _
    "ptr", DllStructGetPtr($Digest), _
    "int", 0)

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

    Local $Ret = DllStructGetData($Digest, 1)
    $Input = 0
    $Digest = 0
    $CodeBuffer = 0
    Return StringLower(StringTrimLeft($Ret, 2))
    EndFunc ;==>_MD5

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

    Func _fileList($s_path = "C:\", $s_pattern = "*", $i_opt = 0)
    Local $result = _FileListToArray($s_path, $s_pattern, $i_opt)
    If (Not IsArray($result)) and (@error = 1) Then
    MsgBox(0, "", "No Folders Found.")
    Exit
    EndIf
    Return $result
    EndFunc ;==>_fileList

    [/autoit]

    Und das was dann in der "\lang\German\lang_german.ini" steht

    Spoiler anzeigen

    [german]
    ; Passwörter :: Password
    new_password=Neues Passwort
    password=Passwort
    pls_password=Bitte gib ein Passwort ein
    bad_password=Falsches Passwort
    bad_password1=Sie haben ein falsches Passwort eingegeben, Programm wird geschlossen!

    ; String :: String
    string_label=String Eingeben:
    string_input=Bitte wählen

    ; Hauptmenü :: Main Menu
    mainmenu=Hauptmenü
    new_programm=Neues Programm (STRG+N)
    specified=String Angaben (STRG+A)
    closed=Beenden (STRG+Q)

    ; Einstellungs Menü :: Options Menu
    options=Einstellungen

    ; Hilfe Menü :: Help Menu
    help=Hilfe
    homepage=AutoIt Website
    board=Zum Forum Thema
    email-send=E-Mail an den Entwickler
    changelog_read=Changelog lesen
    update_check=Auf Aktualisierung prüfen
    other=Über String Starter

    ; Transparenz :: Transparency
    transparency=Sichtbarkeit

    ; Starten :: Start
    start=Starten

    ; Fenster Schliessen :: Window Close
    window_close=Fenster Schliessen


    ; Transparent Meldung :: Transpareny message
    trans_check=Transparenz Meldung!
    trans_message_one=Transparenz wurde mit
    trans_message_two=in die config.ini gespeichert!

    ;**************************;Fenster Aufbau :: Window Buildings;***************************************;

    ; Programmlisten Menü :: Programmlist Menu
    string=String
    name=Name
    update=Aktualisieren
    string_delete=String löschen


    ; Neues Programm Fenster :: New Programm Window
    name_programm=Name des Programms/Spiels:
    path_to_folder=Pfad zum Ordner:
    enter_string_one=String eingeben:
    file_type=EXE Datei Eingeben:
    sample=(z.B. firefox.exe)
    sample_exe=Datei (z.B. firefox.exe) angeben

    ; Options Fenster :: Options Window
    checkboxes=Standart: aktiv
    winmove_lable=Fenster einklappen?:
    update_lable=Auf Updates Prüfen?:
    password_lable=Passwort beim Start Prüfen?:
    transpareny_lable=Transparenz Meldung anzeigen?:
    speak_lable=Sprache:

    ; Input Felder :: Input fields
    insert_name=Name Eintragen
    specifying_path=Pfad Angeben
    enter_string_two=String Eingeben
    current_string=Aktueller String
    generate_string=String Generieren
    tutorial=Tutorial
    tutorial_h=Tutorial Hinweis!
    save=Speichern


    ; Über String Starter :: Other String Starter
    other_string_starter=Über String Starter
    created=Erstellt mit:
    written=Code by:
    idea=Idee
    idea_by=Idea by:

    ; Programme einspeichern :: Programm saved
    new_string_h=Neuer String gespeichert
    new_string_message_one=Ihr String für das Programm/Spiel "
    new_string_message_two=" lautet "
    new_string_message_three=". Alle Strings können Sie nochmal über das Hauptmenü abrufen.

    ; Updates :: Updates !!! UPDATE FUNKTION NICHT IMPLEMENTIERT !!!
    update_check=Update Check
    aktu_version=Sie benutzen die Aktuellste Version:
    new_version=Neues Update Verfügbar
    new_version_load=Ein neues Update ist Verfügbar! String Starter (Version:
    new_version_load_two=) Soll das Programm auf den neusten Stand gebracht werden?
    load_finish=Update geladen
    install=Das Update wurde geladen und wird nun Installiert. Programm wird dazu geschlossen.
    error=Fehler!
    error_server=Konnte aktuelle Version nicht vom Aktualisierungsserver abfragen.

    dann hoffe ich mal das ich dies so etwas erklären konnte

  • String Starter

    • Pandteranodon
    • 1. Februar 2010 um 16:49

    So deine "einklapp" Funktion ist nun auch drinne ^^

    Als nächstes will ich wieder ne Funktionsfähige Update Funktion einbauen, die die *.rar Archive runterläd (Dort wird dann der Code mit bei sein), dann sollte noch ne "Lösch" Funktion eingebaut werden die die "Strings" rauslöscht (Mit allem drum und dran), nur dort weiss ich es noch nicht wie ich es lösen soll.


    Hoffe ist alles zufrieden stellend umgesetzt Scripter192 ^^

  • String Starter

    • Pandteranodon
    • 28. Januar 2010 um 17:22

    Jop moritz das geht, aber es gibt noch viele Nutzer die XP oder Vista nutzen ^^


    Also das mit der Taskleiste ist gelöst, war eigendlich simpel bin aber die ganze Zeit nicht drauf gekommen.

    Was ich aber nicht lösen konnte (auf die schnelle) war, das beim Changelog und beim "über String Starter" Fenster, weil dann der schliessen button oben rechts fehlt (Kommt aber noch ein Button hin, der es dann löst).


    Beim Changelog stand noch was mit "+ Update Funktion überarbeitet" <--- hatte ich vergessen zu ändern, die hatte ich wieder rausgeschmissen weil es dort dauernt fehlfunktionen gab (URL wurde aus der Config.ini nicht richtig erkannt)


    das mit dem AlwaysOnTop-Attribut weiss ich nicht wie ich es umsetzen kann, hab da nichts in der Sufu oder in der Hilfe gefunden, werde mich aber mal im Englischem Forum umschauen.


    Der neue Code steht dann oben (was nur geringfügige änderungen erleiden musste xD)


    mfg.

    Tak | Jochen

  • String Starter

    • Pandteranodon
    • 28. Januar 2010 um 16:11

    Also das mit der Taskleiste unsichtbar machen, hatte ich versucht.


    Da ich aber Windows 7 habe, kann ich machen was ich will es bleibt da.... leider -.-

    Aber ich werde es mal versuchen "weg" zu bekommen.


    Das AlwaysOnTop Attribut hört sich nicht schlecht an. werde ich mal ausprobieren ^^


    mfg.

    Tak | Jochen

  • String Starter

    • Pandteranodon
    • 28. Januar 2010 um 02:10

    Hallo,

    ich habe mich mal die letzten Tage hingesetzt um was (für meine Bedürfnisse) sehr hilfreiches zu schreiben.

    Und zwar hab ich das Teil String Starter getauft, es legt sich oben wie eine Taskleiste am Desktop ab, zwar sind es keine Strings in diesemfalle, aber man kann ein programm mit seiner persönlichen Zeichenkette starten.

    z.B. ich habe in einer Datei den Pfad zum Firefox angegeben.

    also FF=Firefox (ff funzt nicht, der beachtet Groß und Kleinschreibung ^^)

    Man kann 999.999 Programme einfügen (was die wenigsten haben werden, aber lieber zuviel als zuwenig xD )

    Also immoment kann das Programm:
    - Programme starten und neue Einfügen
    - Transparents (per Regler einstellbar)
    - Groß und Kleinschreibung wird beachtet
    - Sprachen kann man einbinden

    was noch fehlt:
    - Fehlermeldung wenn "String" nicht vorhanden ist
    - Update Funktion
    - "Strings" aus der Datei löschen ohne das andere beschädigt werden


    Code:

    Spoiler anzeigen
    [autoit]

    ;~ GUI und Windows Daten
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <StaticConstants.au3>
    #include <EditConstants.au3>
    #include <GuiListView.au3>
    #Include <Array.au3>
    #Include <File.au3>

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

    ;~ Internet
    #include <INet.au3>
    #include <IE.au3>

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

    ;~ Modern Menü
    #include <ModernMenu.au3>

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

    ;~ Tab Items
    #include <StaticConstants.au3>
    #include <TabConstants.au3>

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

    ;~ $_MD5Opcode wird für die Funktion _MD5() benötigt
    Global $_MD5Opcode = "0xC85800005356576A006A006A008D45A850E8280000006A00FF750CFF75088D45A850E8440000006A006A008D45A850FF7510E8710700005F5E5BC9C210005589E58B4D0831C0894114894110C70101234567C7410489ABCDEFC74108FEDCBA98C7410C765432105DC21000C80C0000538B5D088B4310C1E80383E03F8945F88B4510C1E0030143103943107303FF43148B4510C1E81D0143146A40582B45F88945F4394510724550FF750C8B45F88D44031850E8A00700008D43185053E84E0000008B45F48945FC8B45FC83C03F39451076138B450C0345FC5053E8300000008345FC40EBE28365F800EB048365FC008B45102B45FC508B450C0345FC508B45F88D44031850E84D0700005BC9C21000C84000005356576A40FF750C8D45C050E8330700008B45088B088B50048B70088B780C89D021F089D3F7D321FB09D801C1034DC081C178A46AD7C1C10701D189C821D089CBF7D321F309D801C7037DC481C756B7C7E8C1C70C01CF89F821C889FBF7D321D309D801C60375C881C6DB702024C1C61101FE89F021F889F3F7D321CB09D801C20355CC81C2EECEBDC1C1C21601F289D021F089D3F7D321FB09D801C1034DD081C1AF0F7CF5C1C10701D189C821D089CBF7D321F309D801C7037DD481C72AC68747C1C70C01CF89F821C889FBF7D321D309D801C60375D881C6134630A8C1C61101FE89F021F889F3F7D321CB09D801C20355DC81C2019546FDC1C21601F289D021F089D3F7D321FB09D801C1034DE081C1D8988069C1C10701D189C821D089CBF7D321F309D801C7037DE481C7AFF7448BC1C70C01CF89F821C889FBF7D321D309D801C60375E881C6B15BFFFFC1C61101FE89F021F889F3F7D321CB09D801C20355EC81C2BED75C89C1C21601F289D021F089D3F7D321FB09D801C1034DF081C12211906BC1C10701D189C821D089CBF7D321F309D801C7037DF481C7937198FDC1C70C01CF89F821C889FBF7D321D309D801C60375F881C68E4379A6C1C61101FE89F021F889F3F7D321CB09D801C20355FC81C22108B449C1C21601F289D021F889FBF7D321F309D801C1034DC481C162251EF6C1C10501D189C821F089F3F7D321D309D801C7037DD881C740B340C0C1C70901CF89F821D089D3F7D321CB09D801C60375EC81C6515A5E26C1C60E01FE89F021C889CBF7D321FB09D801C20355C081C2AAC7B6E9C1C21401F289D021F889FBF7D321F309D801C1034DD481C15D102FD6C1C10501D189C821F089F3F7D321D309D801C7037DE881C753144402C1C70901CF89F821D089D3F7D321CB09D801C60375FC81C681E6A1D8C1C60E01FE89F021C889CBF7D321FB09D801C20355D081C2C8FBD3E7C1C21401F289D021F889FBF7D321F309D801C1034DE481C1E6CDE121C1C10501D189C821F089F3F7D321D309D801C7037D"
    $_MD5Opcode &= "F881C7D60737C3C1C70901CF89F821D089D3F7D321CB09D801C60375CC81C6870DD5F4C1C60E01FE89F021C889CBF7D321FB09D801C20355E081C2ED145A45C1C21401F289D021F889FBF7D321F309D801C1034DF481C105E9E3A9C1C10501D189C821F089F3F7D321D309D801C7037DC881C7F8A3EFFCC1C70901CF89F821D089D3F7D321CB09D801C60375DC81C6D9026F67C1C60E01FE89F021C889CBF7D321FB09D801C20355F081C28A4C2A8DC1C21401F289D031F031F801C1034DD481C14239FAFFC1C10401D189C831D031F001C7037DE081C781F67187C1C70B01CF89F831C831D001C60375EC81C622619D6DC1C61001FE89F031F831C801C20355F881C20C38E5FDC1C21701F289D031F031F801C1034DC481C144EABEA4C1C10401D189C831D031F001C7037DD081C7A9CFDE4BC1C70B01CF89F831C831D001C60375DC81C6604BBBF6C1C61001FE89F031F831C801C20355E881C270BCBFBEC1C21701F289D031F031F801C1034DF481C1C67E9B28C1C10401D189C831D031F001C7037DC081C7FA27A1EAC1C70B01CF89F831C831D001C60375CC81C68530EFD4C1C61001FE89F031F831C801C20355D881C2051D8804C1C21701F289D031F031F801C1034DE481C139D0D4D9C1C10401D189C831D031F001C7037DF081C7E599DBE6C1C70B01CF89F831C831D001C60375FC81C6F87CA21FC1C61001FE89F031F831C801C20355C881C26556ACC4C1C21701F289F8F7D009D031F001C1034DC081C1442229F4C1C10601D189F0F7D009C831D001C7037DDC81C797FF2A43C1C70A01CF89D0F7D009F831C801C60375F881C6A72394ABC1C60F01FE89C8F7D009F031F801C20355D481C239A093FCC1C21501F289F8F7D009D031F001C1034DF081C1C3595B65C1C10601D189F0F7D009C831D001C7037DCC81C792CC0C8FC1C70A01CF89D0F7D009F831C801C60375E881C67DF4EFFFC1C60F01FE89C8F7D009F031F801C20355C481C2D15D8485C1C21501F289F8F7D009D031F001C1034DE081C14F7EA86FC1C10601D189F0F7D009C831D001C7037DFC81C7E0E62CFEC1C70A01CF89D0F7D009F831C801C60375D881C6144301A3C1C60F01FE89C8F7D009F031F801C20355F481C2A111084EC1C21501F289F8F7D009D031F001C1034DD081C1827E53F7C1C10601D189F0F7D009C831D001C7037DEC81C735F23ABDC1C70A01CF89D0F7D009F831C801C60375C881C6BBD2D72AC1C60F01FE89C8F7D009F031F801C20355E481C291D386EBC1C21501F28B4508010801500401700801780C5F5E5BC9C20800C814000053E840000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008F45EC8B5D0C6A088D4310508D"
    $_MD5Opcode &= "45F850E8510000008B4310C1E80383E03F8945F483F838730B6A38582B45F48945F0EB096A78582B45F48945F0FF75F0FF75ECFF750CE831F8FFFF6A088D45F850FF750CE823F8FFFF6A1053FF7508E8050000005BC9C210005589E55156578B7D088B750C8B4D10FCF3A45F5E595DC20C00"

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

    HotKeySet("^q", "_end")
    HotKeySet("^n", "_new_p")
    HotKeySet("^a", "_stringlist")

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

    #NoTrayIcon

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

    Global $AnzItems, $item[999999][5], $items[9999999]
    Global $Browser

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

    Const $ConfigPath=@ScriptDir & "\ini\config.ini"
    Const $StringPath=@ScriptDir & "\ini\string.trf"
    Const $VersionPath=@ScriptDir & "\ini\version.ini"
    Const $ChangelogPath=@ScriptDir & "\changelog.txt"
    Const $PassPath=@ScriptDir & "\ini\pass.ini"

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

    FileDelete("Updates\*.*")

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

    If Not FileExists("\ini") Then DirCreate(@ScriptDir & "\ini")

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

    ;~ If Not FileExists("\Updates") Then DirCreate(@ScriptDir & "\Updates")

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

    If Not FileExists($StringPath) Then
    FileWrite($StringPath, "String, Pfad zum Ordner, EXE Datei, Name*")
    FileWriteLine($StringPath, "")
    EndIf

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

    If Not FileExists($ConfigPath) Then
    IniWrite($ConfigPath, "Transparenz", "Tranz", 100)
    IniWrite($ConfigPath, "Anzahl", "Anzahl", 0)
    IniWrite($ConfigPath, "Language", "Lang", "German")

    IniWrite($ConfigPath, "Checks", "Update", "1")
    IniWrite($ConfigPath, "Checks", "Passwort", "1")
    IniWrite($ConfigPath, "Checks", "Transmeldung", "1")
    IniWrite($ConfigPath, "Checks", "WinMove", "1")
    EndIf

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

    $Language=IniRead($ConfigPath, "Language", "Lang", "")
    $Langpath=@ScriptDir & "\lang\"&$language&"\lang_"&$language&".ini"

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

    If Not FileExists($Langpath) Then
    MsgBox(16, "Fehler Language Datei nicht gefunden!", "Die Language File '"&$Language&"' wurde nicht gefunden. Das Programm wird daher geschlossen!")
    EMail()
    Exit
    EndIf

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

    If Not FileExists($PassPath) Then
    $pass=InputBox(IniRead($LangPath, $Language, "password", "password"), IniRead($LangPath, $Language, "pls_password", "pls_password"), "", "*")
    IniWrite($PassPath, "Passwort", "Passwort", _MD5($pass))
    Else
    If IniRead($ConfigPath, "Checks", "Passwort", "")=1 Then
    ; Prüfe ob Angabe richtig
    $res = InputBox(IniRead($LangPath, $Language, "password", "password"),IniRead($LangPath, $Language, "pls_password", "pls_password"),'','*')
    If IniRead($PassPath, "Passwort", "Passwort", "nix") <> _MD5($res) then
    MsgBox(16, IniRead($LangPath, $Language, "bad_password", "bad_password"), IniRead($LangPath, $Language, "bad_password1", "bad_password"))
    Exit
    EndIf
    EndIf
    EndIf

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

    dataload()

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

    #Region ### START Koda GUI section ### Form=
    $MainWindow = GUICreate("", @DesktopWidth, 5, 0, 0, BitOR($WS_SYSMENU,$WS_POPUP,$WS_POPUPWINDOW,$WS_BORDER,$WS_CLIPSIBLINGS, $WS_EX_TOOLWINDOW), BitOr($WS_EX_TOOLWINDOW,$WS_EX_WINDOWEDGE))
    WinSetTrans($MainWindow, "", IniRead($ConfigPath, "Transparenz", "Tranz", 0) * 2.55)

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

    ;~ String eingabe um Programm zu starten
    $Stringl = GUICtrlCreateLabel(IniRead($LangPath, $Language, "string_label", "string_label"), 0, 0, 120, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    GUICtrlSetBkColor($Stringl, $GUI_BKCOLOR_TRANSPARENT)
    $eingabe = GUICtrlCreateInput(IniRead($LangPath, $Language, "string_input", "string_input"), 120, 0, 121, 21)

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

    ;~ Menü aufbauen
    ;~~ Menü "Optionen"
    $options = GUICtrlCreateMenu(IniRead($LangPath, $Language, "mainmenu", "mainmenu"))
    $new_programm = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "new_programm", "new_programm") & " (STRG+N)", $options)
    _GUICtrlODMenuItemSetIcon($new_programm, @ScriptDir & "\gfx\add_programm.ico") ;~ Icon zuweissen
    _SetMenuIconBkColor(0xFFFFFF)
    _SetMenuBkColor(0xFFFFFF)

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

    $programmlistshow = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "specified", "specified") & " (STRG+A)", $options)
    _GUICtrlODMenuItemSetIcon($programmlistshow, @ScriptDir & "\gfx\stringlist.ico") ;~ Icon zuweissen

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

    GUICtrlCreateMenuItem("", $options)
    $closed = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "closed", "closed") & " (STRG+Q)", $options)
    _GUICtrlODMenuItemSetIcon($closed, @ScriptDir & "\gfx\closed.ico") ;~ Icon zuweissen

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

    ;~~ Menü "Einstellungen"
    $options = GUICtrlCreateMenu(IniRead($LangPath, $Language, "options", "options"))
    $optionsedit= _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "options", "options"), $options)
    _GUICtrlODMenuItemSetIcon($optionsedit, @ScriptDir & "\gfx\options.ico") ;~ Icon zuweissen
    ;GUICtrlSetState(-1, $GUI_DISABLE)

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

    ;~~ Menü "Help"
    $help = GUICtrlCreateMenu(IniRead($LangPath, $Language, "help", "help"))
    $link1 = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "homepage", "homepage"), $help)
    _GUICtrlODMenuItemSetIcon($link1, @ScriptDir & "\gfx\homepage.ico") ;~ Icon zuweissen

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

    $link2 = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "board", "board"), $help)
    _GUICtrlODMenuItemSetIcon($link2, @ScriptDir & "\gfx\board.ico") ;~ Icon zuweissen

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

    $changelog = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "changelog_read", "changelog_read"), $help)
    _GUICtrlODMenuItemSetIcon($changelog, @ScriptDir & "\gfx\changelog.ico") ;~ Icon zuweissen

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

    $updatecheck = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "update_check", "update_check"), $help)
    _GUICtrlODMenuItemSetIcon($updatecheck, @ScriptDir & "\gfx\ucheck.ico") ;~ Icon zuweissen
    GUICtrlSetState(-1, $GUI_DISABLE)

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

    GUICtrlCreateMenuItem("", $help)
    $email = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "email-send", "email_send"), $help)
    _GUICtrlODMenuItemSetIcon($email, @ScriptDir & "\gfx\email.ico") ;~ Icon zuweissen

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

    $other = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "other", "other"), $help)
    _GUICtrlODMenuItemSetIcon($other, @ScriptDir & "\gfx\other.ico") ;~ Icon zuweissen

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

    ;~ Slider erstellen und Label mit Slider umstellen
    $Slider = GUICtrlCreateSlider(608, 0, 118, 21)
    GUICtrlSetLimit(-1, 100, 15)
    GUICtrlSetData($slider, 100)

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

    ;~ Tranzparenz aus Ini laden und $Slider einstellen
    GUICtrlSetData($Slider, IniRead($ConfigPath, "Transparenz", "Tranz", 0))
    $trans = GUICtrlCreateLabel(IniRead($LangPath, $Language, "transparency", "transpareny"), 512, 0, 94, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    GUICtrlSetBkColor($trans, $GUI_BKCOLOR_TRANSPARENT)
    $transprozent = GUICtrlCreateLabel("0%", 728, 0, 38, 19)
    GUICtrlSetFont(-1, 9, 400, 0, "Arial")
    GUICtrlSetBkColor($transprozent, $GUI_BKCOLOR_TRANSPARENT)
    GUICtrlSetData($transprozent, "100%")

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

    ;~ Tranzparenz aus Ini laden und $tranzprozent einstellen
    GUICtrlSetData($transprozent, IniRead($ConfigPath, "Transparenz", "Tranz", 0)&"%")

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

    ;~ Start Button um Programm mit dem eingegebenen String zu starten
    $start = GUICtrlCreateButton(IniRead($LangPath, $Language, "start", "start"), 248, 0, 75, 25, $WS_GROUP)

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

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

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

    ;********************************************************************************************
    ; Programmliste zeigen mit String zugehörigkeit
    ;********************************************************************************************

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

    $programmlist = GUICreate("", 281, 460, 0, 45, BitOR($WS_SYSMENU,$WS_POPUP,$WS_POPUPWINDOW,$WS_BORDER,$WS_CLIPSIBLINGS, $WS_EX_TOOLWINDOW), BitOr($WS_EX_TOOLWINDOW,$WS_EX_WINDOWEDGE))
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
    $listviewbk = GUICtrlCreateLabel("", 0, 0, 276, 428)
    GUICtrlSetState(-1, $GUI_DISABLE)
    $listview = GUICtrlCreateListView(IniRead($LangPath, $Language, "string", "string")&"|"&IniRead($LangPath, $Language, "name", "name"), 0, 0, 273, 425)
    GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 0, 100)
    GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 1, 150)

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

    $programmlistclose = GUICtrlCreateButton(IniRead($LangPath, $Language, "window_close", "window_close"), 176, 432, 99, 25, $WS_GROUP)
    $programmlistaktu = GUICtrlCreateButton(IniRead($LangPath, $Language, "update", "update"), 0, 432, 75, 25, $WS_GROUP)
    $auswahl_delete = GUICtrlCreateButton(IniRead($LangPath, $Language, "string_delete", "string_delete"), 80, 432, 91, 25, $WS_GROUP)
    GUICtrlSetState(-1, $GUI_DISABLE)

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

    ;********************************************************************************************
    ; "Neues Programm einfügen" Fenster öffnen
    ;********************************************************************************************

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

    $programme = GUICreate("", 286, 187, 0, 45, BitOR($WS_SYSMENU,$WS_POPUP,$WS_POPUPWINDOW,$WS_BORDER,$WS_CLIPSIBLINGS, $WS_EX_TOOLWINDOW), BitOr($WS_EX_TOOLWINDOW,$WS_EX_WINDOWEDGE))
    $Label1 = GUICtrlCreateLabel(IniRead($LangPath, $Language, "name_programm", "name_programm"), 8, 8, 143, 17)
    $Label2 = GUICtrlCreateLabel(IniRead($LangPath, $Language, "path_to_folder", "path_to_folder"), 64, 40, 86, 17)
    $Label3 = GUICtrlCreateLabel(IniRead($LangPath, $Language, "enter_string_one", "enter_string_one"), 72, 112, 81, 17)
    $Label4 = GUICtrlCreateLabel(IniRead($LangPath, $Language, "path_to_folder", "path_to_folder"), 48, 72, 98, 17)
    $Label5 = GUICtrlCreateLabel(IniRead($LangPath, $Language, "sample", "sample"), 72, 88, 79, 17)

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

    $gamename = GUICtrlCreateInput(IniRead($LangPath, $Language, "insert_name", "insert_name"), 160, 8, 121, 21)
    $programm1 = GUICtrlCreateInput(IniRead($LangPath, $Language, "specifying_path", "specifying_path"), 160, 40, 121, 21)
    $exedata = GUICtrlCreateInput(IniRead($LangPath, $Language, "sample_exe", "sample_exe"), 160, 80, 121, 21, BitOR($ES_AUTOVSCROLL,$ES_AUTOHSCROLL))
    $Wort1 = GUICtrlCreateInput(IniRead($LangPath, $Language, "current_string", "current_string"), 160, 112, 121, 21)
    $stringgen = GUICtrlCreateButton(IniRead($LangPath, $Language, "generate_string", "generate_string"), 0, 136, 99, 25, $WS_GROUP)
    $tutorial = GUICtrlCreateButton(IniRead($LangPath, $Language, "tutorial", "tutorial"), 104, 136, 75, 25, $WS_GROUP)
    $programmesave = GUICtrlCreateButton(IniRead($LangPath, $Language, "save", "save"), 104, 160, 75, 25, $WS_GROUP)
    $programmeclose = GUICtrlCreateButton(IniRead($LangPath, $Language, "window_close", "window_close"), 184, 136, 99, 25, $WS_GROUP)

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

    ;********************************************************************************************
    ; "Changelog" Fenster öffnen
    ;********************************************************************************************

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

    $changelogwindow = GUICreate("Changelog", 405, 445, 302, 218)
    $changlogedit = GUICtrlCreateEdit("", 0, 0, 401, 441, BitOR($ES_AUTOHSCROLL,$ES_READONLY,$ES_WANTRETURN,$WS_VSCROLL))

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

    ;********************************************************************************************
    ; Other Menü Aufbauen und GUI Erzeugen
    ;********************************************************************************************

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

    $othermenu = GUICreate(IniRead($LangPath, $Language, "other_string_starter", "other_string_starter"), 400, 90, 302, 220)
    $PageControl = GUICtrlCreateTab(0, 0, 396, 88)
    GUICtrlSetResizing(-1, $GUI_DOCKWIDTH+$GUI_DOCKHEIGHT)
    $otherss = GUICtrlCreateTabItem(IniRead($LangPath, $Language, "other_string_starter", "other_string_starter"))
    GUICtrlSetState(-1,$GUI_SHOW)
    $createdlabel = GUICtrlCreateLabel(IniRead($LangPath, $Language, "created", "created") & " AutoIt", 8, 32, 195, 24)
    GUICtrlSetFont(-1, 15, 400, 0, "Aharoni")
    GUICtrlSetBkColor(-1, 0xFFFFFF)
    $writtenlabel = GUICtrlCreateLabel(IniRead($LangPath, $Language, "written", "written") & " Tak", 8, 56, 149, 24)
    GUICtrlSetFont(-1, 15, 400, 0, "Aharoni")
    GUICtrlSetBkColor(-1, 0xFFFFFF)
    $idea = GUICtrlCreateTabItem(IniRead($LangPath, $Language, "idea", "idea"))
    $idealable = GUICtrlCreateLabel(IniRead($LangPath, $Language, "idea_by", "idea_by") & " Strom666", 48, 32, 274, 42)
    GUICtrlSetFont(-1, 20, 400, 0, "Arial Black")
    GUICtrlCreateTabItem("")

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

    ;*******************************************************************************************
    ; Options Fenster aufbauen
    ;*******************************************************************************************

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

    $optionswindow = GUICreate("", 286, 187, 0, 45, BitOR($WS_SYSMENU,$WS_POPUP,$WS_POPUPWINDOW,$WS_BORDER,$WS_CLIPSIBLINGS, $WS_EX_TOOLWINDOW), BitOr($WS_EX_TOOLWINDOW,$WS_EX_WINDOWEDGE))
    $optionsl = GUICtrlCreateLabel(IniRead($LangPath, $Language, "options", "options"), 8, 8, 273, 26)
    GUICtrlSetFont(-1, 14, 400, 4, "Arial")
    $winmove = GUICtrlCreateCheckbox(IniRead($LangPath, $Language, "checkboxes", "checkboxes"), 192, 40, 97, 17)
    $updatecheckc = GUICtrlCreateCheckbox(IniRead($LangPath, $Language, "checkboxes", "checkboxes"), 192, 64, 97, 17)
    GUICtrlSetState(-1, $GUI_DISABLE)
    $passcheckc = GUICtrlCreateCheckbox(IniRead($LangPath, $Language, "checkboxes", "checkboxes"), 192, 88, 97, 17)
    $tranzcheckc = GUICtrlCreateCheckbox(IniRead($LangPath, $Language, "checkboxes", "checkboxes"), 192, 112, 97, 17)
    checks()
    $speak = GUICtrlCreateCombo($Language , 192, 136, 97, 25)
    Local $file_A = _fileList(@ScriptDir & "\lang\", "*", 0)
    Local $a_A = _ArrayToString($file_A, "|")
    GUICtrlSetData($speak, $a_A)
    $winmovel = GUICtrlCreateLabel(IniRead($LangPath, $Language, "winmove_lable", "winmove_lable"), 8, 40, 150, 17)
    $updatecheckl = GUICtrlCreateLabel(IniRead($LangPath, $Language, "update_lable", "update_lable"), 8, 64, 150, 17)
    $passcheckl = GUICtrlCreateLabel(IniRead($LangPath, $Language, "password_lable", "passwort_lable"), 8, 88, 168, 17)
    $tranzparentl = GUICtrlCreateLabel(IniRead($LangPath, $Language, "transpareny_lable", "transpareny_lable"), 8, 112, 165, 17)
    $speakl = GUICtrlCreateLabel(IniRead($LangPath, $Language, "speak_lable", "speak_lable"), 8, 136, 47, 17)
    $savedoptions = GUICtrlCreateButton("Speichern", 8, 160, 75, 25, $WS_GROUP)
    $optionsclosed = GUICtrlCreateButton(IniRead($LangPath, $Language, "window_close", "window_close"), 96, 160, 107, 25, $WS_GROUP)

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

    ;~ GUI Transparenz aus Ini laden und einstellen
    WinSetTrans($programmlist, "", IniRead($ConfigPath, "Transparenz", "Tranz", 0) * 2.55)
    WinSetTrans($optionswindow, "", IniRead($ConfigPath, "Transparenz", "Tranz", 0) * 2.55)
    WinSetTrans($programme, "", IniRead($ConfigPath, "Transparenz", "Tranz", 0) * 2.55)

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

    ;********************************************************************************************
    ; Eigendlicher Code beginnt hier!
    ;********************************************************************************************

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

    While 1
    $msg = GUIGetMsg()

    ;~ GUI wie Taskleiste einklappen
    If IniRead($ConfigPath, "Checks", "WinMove", "1")=1 Then
    $WPos = WinGetPos($MainWindow)
    $MPos = MouseGetPos()
    If ($MPos[0] >= $WPos[0]) And ($MPos[0] <= ($WPos[0] + $WPos[2])) And ($MPos[1] >= $WPos[1]) And ($MPos[1] <= ($WPos[1] + $WPos[3])) Then
    WinSetOnTop($MainWindow, "", 1)
    WinMove($MainWindow, "", 0, 0, @DesktopWidth, 45, 3)
    Else
    WinSetOnTop($MainWindow, "", 1)
    WinMove($MainWindow, "", 0, 0, @DesktopWidth, 5, 3)
    EndIf
    Else
    WinSetOnTop($MainWindow, "", 1)
    WinMove($MainWindow, "", 0, 0, @DesktopWidth, 45, 3)
    EndIf

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


    ;~ Eingegebenen String mit Ini Einträgen abgleichen und Programm starten
    If $msg=$start Then
    dataload()
    For $i=1 to $AnzItems
    If GUICtrlRead($eingabe)==$item[$i][0] Then
    ShellExecute($item[$i][1] & $item[$i][2], "", $item[$i][1])
    EndIf
    Next
    EndIf

    ;~ Stringangaben Zeigen
    If $msg=$programmlistshow Then
    dataload()
    GUISetState(@SW_SHOW, $programmlist)

    $Read=GUICtrlRead($Slider)
    For $i=1 to $Read Step 1
    WinSetTrans($programmlist, "", $i * 2.55)
    Sleep(10)
    Next
    Sleep(100)

    For $i=1 to $AnzItems
    GUICtrlDelete($items[$i])
    $items[$i]=GUICtrlCreateListViewItem($item[$i][0]&"|"&$item[$i][3], $listview)
    Next
    EndIf

    ;~ Programmliste aktualisieren
    If $msg=$programmlistaktu Then
    dataload()
    For $i=1 to $AnzItems
    GUICtrlDelete($items[$i])
    $items[$i]=GUICtrlCreateListViewItem($item[$i][0]&"|"&$item[$i][3], $listview)
    Next
    EndIf

    If $msg=$auswahl_delete Then
    EndIf

    If $msg=$programmlistclose Then
    $Read=GUICtrlRead($Slider)
    For $i=$Read to 1 Step -1
    WinSetTrans($programmlist, "", $i * 2.55)
    Sleep(10)
    Next
    Sleep(10)
    GUISetState(@SW_HIDE, $programmlist)
    EndIf

    ;~ Neues Programm Hinzufügen Fenster öffnen
    If $msg=$new_programm Then
    GUISetState(@SW_SHOW, $programme)

    $Read=GUICtrlRead($Slider)
    For $i=1 to $Read Step 1
    WinSetTrans($programme, "", $i * 2.55)
    Sleep(10)
    Next
    EndIf

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

    ;~ String Generieren
    If $msg=$stringgen Then
    $Zeichen = Random(3, 10)

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

    $Wort = ""
    For $i = 1 to $Zeichen
    $Buchstabe = Random(65, 90) & Random(65, 90) & Random(65, 90) & Random(65, 90) & Random(65, 90) & Random(65, 90)
    If $Buchstabe > 57 AND $Buchstabe < 65 OR $Buchstabe > 90 AND $Buchstabe < 97 Then
    $i -= 1
    Else
    $Wort &= Chr($Buchstabe)
    EndIf
    Next
    GUICtrlSetData($Wort1, $Wort)
    EndIf

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

    ;~ Programm mit String in ini Schreiben
    If $msg=$programmesave Then
    save()
    EndIf

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

    If $msg=$tutorial Then
    tuthinweis()
    EndIf

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

    ;~ Neues Programm Hinzufügen Fenster schliessen
    If $msg=$programmeclose Then
    $Read=GUICtrlRead($Slider)
    For $i=$Read to 1 Step -1
    WinSetTrans($programme, "", $i * 2.55)
    Sleep(10)
    Next
    Sleep(1000)
    GUISetState(@SW_HIDE, $programme)
    EndIf

    ;~ Options Fenster aufbauen
    If $msg=$optionsedit Then
    GUISetState(@SW_SHOW, $optionswindow)
    $Read=GUICtrlRead($Slider)
    For $i=1 to $Read
    WinSetTrans($optionswindow, "", $i * 2.55)
    Sleep(10)
    Next
    Sleep(1000)
    If GUICtrlRead($updatecheckc)=$GUI_UNCHECKED Then
    MsgBox(16, IniRead($LangPath, $Language, "update_check", "update_check"), IniRead($LangPath, $Language, "update_check_false", "update_check_false"))
    EndIf
    EndIf

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

    If $msg=$savedoptions Then
    saveo()
    MsgBox(64, "Gespeichert", "Änderungen wurden gespeichert")
    EndIf

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

    ;~ Options Fenster schliessen
    If $msg=$optionsclosed Then
    $Read=GUICtrlRead($Slider)
    For $i=$Read to 1 Step -1
    WinSetTrans($optionswindow, "", $i * 2.55)
    Sleep(10)
    Next
    Sleep(1000)
    saveo()
    GUISetState(@SW_HIDE, $optionswindow)
    EndIf

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

    If $msg=$link1 Then
    GoLink1()
    EndIf

    If $msg=$link2 Then
    GoLink2()
    EndIf

    If $msg=$email Then
    email()
    EndIf

    ;~ Changelog Fenster öffnen
    If $msg=$changelog Then
    $changelogedit="=========================================================================="&@CRLF
    $changelogedit &=" String Starter - Programm Changelog"&@CRLF
    $changelogedit &=" Copyright (c) by Tak"&@CRLF
    $changelogedit &=" E-Mail: tak90@gmx.de"&@CRLF
    $changelogedit &="==============================================================================="&@CRLF
    $changelogedit &=" + Neues Feature oder änderungen"&@CRLF
    $changelogedit &=" - Bug fix oder entfernungen"&@CRLF
    $changelogedit &=" # Neues Feature geplant"&@CRLF
    $changelogedit &=" * Änderung an informationen"&@CRLF
    $changelogedit &=" ! Wichtig - Bitte Lesen!"&@CRLF
    $changelogedit &="==============================================================================="&@CRLF&@CRLF

    GUISetState(@SW_SHOW, $changelogwindow)
    $Read=GUICtrlRead($Slider)
    For $i=1 to $Read Step 1
    WinSetTrans($changelogwindow, "", $i * 2.55)
    Sleep(10)
    Next
    Sleep(10)
    GUICtrlSetData($changlogedit, $changelogedit & FileRead($ChangelogPath))
    EndIf

    ;~ Changelog Fenster schliessen
    If $msg=$GUI_EVENT_CLOSE Then
    $Read=GUICtrlRead($Slider)
    For $i=$Read to 1 Step -1
    WinSetTrans($changelogwindow, "", $i * 2.55)
    Sleep(10)
    Next
    Sleep(10)
    GUISetState(@SW_HIDE, $changelogwindow)
    EndIf

    ;~ Other Fenster öffnen
    If $msg=$other Then
    GUISetState(@SW_SHOW, $othermenu)

    $Read=GUICtrlRead($Slider)
    For $i=1 to $Read Step 1
    WinSetTrans($othermenu, "", $i * 2.55)
    Sleep(10)
    Next
    Sleep(100)
    EndIf

    ;~ Other Fenster schliessen
    If $msg=$GUI_EVENT_CLOSE Then
    $Read=GUICtrlRead($Slider)
    For $i=$Read to 1 Step -1
    WinSetTrans($othermenu, "", $i * 2.55)
    Sleep(10)
    Next
    Sleep(100)

    GUISetState(@SW_HIDE, $othermenu)
    EndIf

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

    ;~ Transparent Slider Lesen und Transparenz einstellen
    If $msg=$Slider Then
    $Read=GUICtrlRead($Slider)

    WinSetTrans($MainWindow, "", $Read * 2.55)
    WinSetTrans($programmlist, "", $Read * 2.55)
    WinSetTrans($programme, "", $Read * 2.55)
    WinSetTrans($optionswindow, "", $Read * 2.55)

    GUICtrlSetData($transprozent, 100/100*$Read&"%")
    EndIf

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

    ;~ String Starter schliessen und Werte in ini Speichern
    If $msg=$closed Then
    $Read=GUICtrlRead($Slider)
    For $i=$Read to 1 Step -1
    WinSetTrans($MainWindow, "", $i * 2.55)
    WinSetTrans($programmlist, "", $i * 2.55)
    WinSetTrans($programme, "", $i * 2.55)
    WinSetTrans($othermenu, "", $i * 2.55)
    WinSetTrans($optionswindow, "", $i * 2.55)
    Sleep(10)
    Next
    Sleep(100)

    IniWrite($ConfigPath, "Transparenz", "Tranz", GUICtrlRead($Slider))
    ConsoleWrite("Transparenz wurde auf "&GUICtrlRead($Slider)&"% gespeichert"&@CRLF)
    If IniRead($ConfigPath, "Checks", "Transmeldung", "")=1 Then
    MsgBox(64, IniRead($LangPath, $Language, "trans_check", "trans_check"), IniRead($LangPath, $Language, "trans_message_one", "trans_message")&" "&GUICtrlRead($Slider)&"% "&IniRead($LangPath, $Language, "trans_message_two", "trans_message"))
    EndIf
    Exit
    EndIf
    WEnd

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

    ;~ tutorial hinweis
    Func tuthinweis()

    $tut=FileRead(@ScriptDir & "\lang\"&$language&"\tut_"&$language&".txt")

    If Not FileExists(@ScriptDir & "\lang\"&$language&"\tut_"&$language&".txt") Then
    MsgBox(64,IniRead($LangPath, $Language, "tutorial_h", "tutorial_h"), "tut file not found!")
    Else
    MsgBox(64,IniRead($LangPath, $Language, "tutorial_h", "tutorial_h"), $tut)
    EndIf
    EndFunc

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

    ;~ Checks für Optionen
    Func checks()
    If IniRead($ConfigPath, "Checks", "WinMove", "1")=1 Then
    GUICtrlSetState($winmove, $GUI_CHECKED)
    Else
    GUICtrlSetState($winmove, $GUI_UNCHECKED)
    EndIf

    If IniRead($ConfigPath, "Checks", "Update", "1")=1 Then
    GUICtrlSetState($updatecheckc, $GUI_CHECKED)
    Else
    GUICtrlSetState($updatecheckc, $GUI_UNCHECKED)
    EndIf

    If IniRead($ConfigPath, "Checks", "Passwort", "1")=1 Then
    GUICtrlSetState($passcheckc, $GUI_CHECKED)
    Else
    GUICtrlSetState($passcheckc, $GUI_UNCHECKED)
    EndIf

    If IniRead($ConfigPath, "Checks", "Transmeldung", "1")=1 Then
    GUICtrlSetState($tranzcheckc, $GUI_CHECKED)
    Else
    GUICtrlSetState($tranzcheckc, $GUI_UNCHECKED)
    EndIf
    EndFunc

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

    ;~ Speichern von den Optionen
    Func saveo()
    If GUICtrlRead($winmove)=$GUI_CHECKED Then
    IniWrite($ConfigPath, "Checks", "WinMove", "1")
    Else
    IniWrite($ConfigPath, "Checks", "WinMove", "0")
    EndIf

    If GUICtrlRead($updatecheckc)=$GUI_CHECKED Then
    IniWrite($ConfigPath, "Checks", "Update", "1")
    Else
    IniWrite($ConfigPath, "Checks", "Update", "0")
    EndIf

    If GUICtrlRead($passcheckc)=$GUI_CHECKED Then
    IniWrite($ConfigPath, "Checks", "Passwort", "1")
    Else
    IniWrite($ConfigPath, "Checks", "Passwort", "0")
    EndIf

    If GUICtrlRead($tranzcheckc)=$GUI_CHECKED Then
    IniWrite($ConfigPath, "Checks", "Transmeldung", "1")
    Else
    IniWrite($ConfigPath, "Checks", "Transmeldung", "0")
    EndIf

    IniWrite($ConfigPath, "Language", "Lang", GUICtrlRead($speak))
    EndFunc

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

    Func _WinMove($HWnd, $Command, $wParam, $lParam)
    If BitAND(WinGetState($HWnd), 32) Then Return $GUI_RUNDEFMSG
    DllCall("user32.dll", "long", "SendMessage", "hwnd", $HWnd, "int", $WM_SYSCOMMAND, "int", 0xF009, "int", 0)
    EndFunc ;==>_WinMove

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

    ;~ daten aus der String.tft laden
    Func dataload()
    $File=FileOpen($StringPath, 0)
    $AnzItems=IniRead($ConfigPath, "Anzahl", "Anzahl", "")
    FileReadLine($file)
    For $i=1 to $AnzItems
    For $z=0 to 4
    $item[$i][$z]=FileReadLine($file)
    Next
    Next
    FileClose($file)
    EndFunc

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

    ;~ Neues Programm einfügen Fenster in den Vordergrund holen
    Func _new_p()
    GUISetState(@SW_SHOW, $programme)

    $Read=GUICtrlRead($Slider)
    For $i=1 to $Read Step 1
    WinSetTrans($programme, "", $i * 2.55)
    Sleep(10)
    Next
    EndFunc

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

    ;~ String Angaben Fenster in den Vordergrund holen wenn STRG+A gedrückt wurde
    Func _stringlist()
    dataload()
    GUISetState(@SW_SHOW, $programmlist)

    $Read=GUICtrlRead($Slider)
    For $i=1 to $Read Step 1
    WinSetTrans($programmlist, "", $i * 2.55)
    Sleep(10)
    Next
    Sleep(100)

    For $i=1 to $AnzItems
    GUICtrlDelete($items[$i])
    $items[$i]=GUICtrlCreateListViewItem($item[$i][0]&"|"&$item[$i][3], $listview)
    Next
    EndFunc

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

    ;~ _end ausführen wenn STRG+Q gedrückt wird
    Func _end()
    IniWrite($ConfigPath, "Transparenz", "Tranz", GUICtrlRead($Slider))
    $Read=GUICtrlRead($Slider)
    For $i=$Read to 1 Step -1
    WinSetTrans($MainWindow, "", $i * 2.55)
    WinSetTrans($programmlist, "", $i * 2.55)
    WinSetTrans($programme, "", $i * 2.55)
    WinSetTrans($othermenu, "", $i * 2.55)
    WinSetTrans($optionswindow, "", $i * 2.55)
    Sleep(10)
    Next
    Sleep(100)
    ConsoleWrite("Transparenz wurde auf "&GUICtrlRead($Slider)&"% gespeichert"&@CRLF)
    If IniRead($ConfigPath, "Checks", "Transmeldung", "")=1 Then
    $yesno=MsgBox(68, IniRead($LangPath, $Language, "trans_check", "trans_check"), IniRead($LangPath, $Language, "trans_message_one", "trans_message")&" "&GUICtrlRead($Slider)&"% "&IniRead($LangPath, $Language, "trans_message_two", "trans_message")&@CRLF&IniRead($LangPath, $Language, "trans_message_three", "trans_message"))
    If $yesno=7 Then
    IniWrite($ConfigPath, "Checks", "Transmeldung", "0")
    EndIf
    EndIf
    Exit
    EndFunc

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

    ;*******************************************
    ; Speicher Funktion für neues Programm
    ;*******************************************

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

    Func save()
    $dateiinhalt=FileRead($StringPath)
    $array1=stringsplit($dateiinhalt,@crlf,3)
    $reg=IniRead($ConfigPath, "Anzahl", "Anzahl",0)
    $array=number($reg)+1
    IniWrite($ConfigPath, "Anzahl", "Anzahl", $array)
    $dateiinhalt=_ArrayToString($array1,@crlf)
    filedelete($StringPath)
    FileWrite($StringPath, $dateiinhalt)
    FileWriteLine($StringPath, GUICtrlRead($Wort1))
    FileWriteLine($StringPath, GUICtrlRead($programm1))
    FileWriteLine($StringPath, GUICtrlRead($exedata))
    FileWriteLine($StringPath, GUICtrlRead($gamename))
    FileWriteLine($StringPath, "*")
    $s=GUICtrlRead($gamename)
    $u=GUICtrlRead($Wort1)
    MsgBox(0, IniRead($LangPath, $Language, "new_string_h", "new_string_header"), IniRead($LangPath, $Language, "new_string_message_one", "new_string_message_one")&GUICtrlRead($gamename)&IniRead($LangPath, $Language, "new_string_message_two", "new_string_message_two")&GUICtrlRead($Wort1)&IniRead($LangPath, $Language, "new_string_message_three", "new_string_message_three"))
    EndFunc

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

    ;********************************************
    ; Browser erstellen und öffnen!
    ;********************************************
    Func GoLink1()
    $Browser="http://autoit.de"
    Browsen()
    EndFunc

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

    Func GoLink2()
    $Browser="http://www.autoit.de/index.php?page=Thread&threadID=17326"
    Browsen()
    EndFunc

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

    Func Browsen()
    _IECreate($Browser)
    EndFunc

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

    Func EMail()
    _INetMail("tak90@gmx.de", "Fehler/Hinweis melden", "")
    EndFunc

    ;*******************************************
    ; MD5 Code
    ;*******************************************
    ; MD5-Funktion um einen String mit MD5 zu verschlüsseln
    Func _MD5($Data)
    Local $CodeBuffer = DllStructCreate("byte[" & BinaryLen($_MD5Opcode) & "]")
    DllStructSetData($CodeBuffer, 1, $_MD5Opcode)

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

    Local $Input = DllStructCreate("byte[" & BinaryLen($Data) & "]")
    DllStructSetData($Input, 1, $Data)

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

    Local $Digest = DllStructCreate("byte[16]")

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

    DllCall("user32.dll", "none", "CallWindowProc", "ptr", DllStructGetPtr($CodeBuffer), _
    "ptr", DllStructGetPtr($Input), _
    "int", BinaryLen($Data), _
    "ptr", DllStructGetPtr($Digest), _
    "int", 0)

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

    Local $Ret = DllStructGetData($Digest, 1)
    $Input = 0
    $Digest = 0
    $CodeBuffer = 0
    Return StringLower(StringTrimLeft($Ret, 2))
    EndFunc ;==>_MD5

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

    Func _fileList($s_path = "C:\", $s_pattern = "*", $i_opt = 0)
    Local $result = _FileListToArray($s_path, $s_pattern, $i_opt)
    If (Not IsArray($result)) and (@error = 1) Then
    MsgBox(0, "", "No Folders Found.")
    Exit
    EndIf
    Return $result
    EndFunc ;==>_fileList

    [/autoit]

    Changelog:

    Spoiler anzeigen
    Code
    ==========================================================================
    		 	String Starter - Programm Changelog
    		     	Copyright (c) by Tak
    		      	E-Mail: tak90@gmx.de
    ===============================================================================
       + Neues Feature oder änderungen
       - Bug fix oder entfernungen
       # Neues Feature geplant
       * Änderung an informationen
       ! Wichtig - Bitte Lesen!
    ===============================================================================
    
    
    === String Starter Release 0.20 - 01 Feb 2010 ===
    + Einklappfunktion wurde eingebaut
    # Update Funktion
    # Strings aus der Datei löschen ohne das andere beschädigt werden
    
    
    === String Starter Release 0.19 - 28 Jan 2010 ===
    - Update Funktion wurde entfernt
    + Fenster werden nicht mehr in der Taskleiste angezeigt
    
    
    === String Starter Release 0.17 - 11 Jan 2010 ===
    + Einstellungen wurden fertig gestellt und implementiert
    - Fehler bei den HotKeys gefixt
    # Englische Sprache einbinden
    
    
    === String Starter Release 0.16-beta-9 - 09 Jan 2010 ===
    + Language Files können erstellt werden
    + Update Funktion überarbeitet
    + Passwort Funktion implementiert
    ! Einstellungen fast fertig implementiert
    - Transparenz Meldung (Meldung kam auch wenn man auf "Nein" gedrückt hat)
    
    
    === String Starter Release 0.14-beta5 - 05 Jan 2010 ===
    + "Über StringStarter" Fenster implementiert
    + Hotkey Funktionen wurden eingebaut (im Hauptmenü)
    * Links für Homepage und Forum wuren deaktiviert
    * Grundaufbau der Einstellungen wurden vorgenommen
    # Fehler Meldung wenn String nicht vorhanden ist
    # Fehler Meldung wenn das "String Eingeben" Feld leer ist
    # Hotkey Funktionen bei den anderen Fenstern einbauen
    
    
    === String Starter Release 0.12-beta4 - 04 Jan 2010 ===
    + Meldung für die Transparenz speicherung (Kann abgeschaltet werden)
    + Fenster werden mit Transparenz aufgebaut
    - Updatecheck Fehler. Dort wurde dauernt "Keine Verbindung" ausgegeben
    # Einstellungs Menü wird eingebaut
    # Hintergrundbild wird hinzugefügt
    # Fenster Aufbau (Transparenz) kann später eingestellt werden
    
    
    === String Starter Release 0.07-beta3 - 01 Jan 2010 ===
    + Groß und Kleinschreibung wird beachtet
    + Links für die Homepage und Forum hinzugefügt
    - Update Funktion, Fehlermeldung beim Start
    - Transparenz wird nun korregt geladen
    - Schreibfehler in der Tutorial Funktion wurden korrigiert
    
    
    === String Starter Release 0.05-beta2 - 30 Dec 2009 ===
    + Slider (Regler) für Transparenz Einstellung eingefügt
    + Tutorial wurde zum "Programm hinzufügen" erstellt
    - Wenn Daten nicht vorhanden werden Datein angelegt (gefixt)
    
    
    === String Starter Release 0.01-beta1 - 29 Dec 2009 === 
    ! Offizieller Beta Release
    Alles anzeigen

    Für die meisten wird der Code einfach sein zu verstehen, für neulinge wird es etwas schwer werden.

    die MD5 Funktion ist von einem Tutorial hier im Forum
    [Tutorial] Login + Registrierung über eine MySql-DB [+ Hilfedateien] von Jautois
    Func _fileList ist von Xenobiologist

    Bitte aber um Kritik und Anregungen die ich da eventuell einbauen könnte.

    Edit 1: Man sollte schon mal das Programm in einer .rar Datei hochladen -.-

    Edit 2: (01.02.2010 - 04:56 pm) String Starter Update wurde hochgeladen, alte Dateien wurden gelöscht. Changelog wurde hier im Post hinzugefügt

    mfg.
    Tak | Jochen

  • Bilder in Listview möglich?

    • Pandteranodon
    • 25. Januar 2010 um 21:38

    So nach langem probieren hab ich es geschafft ^^

    thx AutoBert

  • Bilder in Listview möglich?

    • Pandteranodon
    • 23. Januar 2010 um 15:36

    Also ich habe es versucht so zu lösen:

    Dort wo er die Daten Laden soll sieht es es aus

    Spoiler anzeigen
    [autoit]

    $File=FileOpen("stf\karten.stf", 0)
    $AnzKarten=FileReadLine($file)
    FileReadLine($file)
    For $i=1 to $AnzKarten
    For $z=0 to 5
    $Karten[$i][$z]=FileReadLine($file)
    Next
    for $tt=3 to 3
    if $Karten[$i][$tt]<>"" and $Karten[$i][$tt]<>"Für diesen Dämon sind keine Fusionsdaten vorhanden" Then
    $Test=$Karten[$i][$tt]
    $Karten[$i][$tt]=""
    $tz=1
    while $tz=1
    if StringInStr($Test,"Feuer") and StringInStr($Test,"Frost") and StringInStr($Test, "Schatten") and StringInStr($Test, "Natur") or StringInStr($Test, "Beliebig")=0 then
    $tz=0
    Else
    $Karten[$i][$tt]=$Karten[$i][$tt]&stringleft($Test,StringInStr($Test,"Feuer") and StringInStr($Test,"Frost") and StringInStr($Test, "Schatten") and StringInStr($Test, "Natur") or StringInStr($Test, "Beliebig")-1)&"gfx\sphaeren\"&$Karten[$i][$tt]&".gfx"
    $Test=stringright($Test,stringlen($Test)-StringInStr($Test,"Feuer") and StringInStr($Test,"Frost") and StringInStr($Test, "Schatten") and StringInStr($Test, "Natur") or StringInStr($Test, "Beliebig"))
    EndIf
    WEnd
    $Karten[$i][$tt]=$Karten[$i][$tt]&$Test
    Else
    if $Karten[$i][5]="*" then $Karten[$i][7]=$tt-2
    EndIf
    Next
    Next
    FileClose($file)

    [/autoit]

    Dies hatte ich mal ürgendwo gesehen aber ich weiss es nicht mehr wo (Leigt aber in einer Seperaten au3 File, wo ich es rauskopiert und abgeändert habe).

    Nur wenn er die Daten läd und ich mir die Lisview anzeigen lasse, kommt nur das Fgfx\sphaeren\.gfx

    Hier mal die ListView

    [autoit]

    $listview = GUICtrlCreateListView("Kartenname|Typ|Kosten|Spähren Stufe", 8, 50, 500, 580, $LVS_REPORT)
    GUICtrlSendMsg($listview, $LVM_SETEXTENDEDLISTVIEWSTYLE, $LVS_EX_GRIDLINES, $LVS_EX_GRIDLINES)
    GUICtrlSendMsg($listview, $LVM_SETEXTENDEDLISTVIEWSTYLE, $LVS_EX_FULLROWSELECT, $LVS_EX_FULLROWSELECT)

    [/autoit]

    So wie ich es zu lösen versucht habe

    [autoit]

    $Test=$Karten[$i][3]
    if StringInStr($Test,"Feuer") and StringInStr($Test,"Frost") and StringInStr($Test, "Schatten") and StringInStr($Test, "Natur") or StringInStr($Test, "Beliebig")=1 then
    _GUICtrlListView_SetItemImage($ListView, "gfx\sphaeren\"&$Karten[$i][3]&".gfx", "3")
    EndIf

    [/autoit]

    Hoffe mir kann da jemand helfen

    mfg.
    Tak | Jochen

    ps: Die Datei sieht etwa so aus

    [autoit]

    1 ;~ Liest den aktuellen Inhalt aus
    Kartenname, Typ, Kosten, Spähren Stufe, Natur/Feuer/Schatten/Frost* ;~ Diese Zeile wird übersprungen
    Test ;~ Ab hier liest er alles Zeile für Zeile ein
    -
    -
    -
    Feuer
    *

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