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

Beiträge von HassanMullah

  • Timer Funktion geht nicht

    • HassanMullah
    • 20. Juni 2012 um 12:15

    Hallo x0r,

    Danke für die Info, aber ich vermute wir sprechen gerade aneinander vorbei :whistling:

    Ich versuche es mal ein wenig anderst

    Beispiel 1:

    Wenn ich das Script wie in Beispiel 1 aufrufe, bekomme ich meine GUI "normal" daragestellt

    Spoiler anzeigen
    [autoit]

    GUI wird erstellt
    $GUI_main = GUICreate("PapaControl", $varGUIWindowWidth, $varGUIWindowHeight, -1, -1)

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

    ; Timer
    ;~ Local $i = 6
    ;~ Do
    ;~ $i = $i - 1
    ;~ GUICtrlCreateLabel("Noch " & $i & " Sekunden bis Reload", 200, 200, 200, 200)
    ;~ Sleep(1000)
    ;~ GUISetState(@SW_SHOW)
    ;~ If $i = 0 Then $i = 6
    ;~ Until $i = 0

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

    ; Überschrift
    GUISetFont(20)
    $Label02 = GUICtrlCreateLabel("Wo steckt mein Papa gerade ?", $varUeberschrift, -1)

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

    ; Browerfenster
    ;$browser = GUICtrlCreateObj($IE, 10, 50, $varGUIWindowWidth - 20, $varGUIWindowHeight - 65)
    $browser = GUICtrlCreateObj($IE, 100, 100, 100, 100)
    GUISetState(@SW_SHOW)

    [/autoit]

    Beispiel 2:

    Wenn ich das Script wie in Beispiel 2 aufrufe, bekomme ich meine GUI dargestellt, aber Sie bleibt in der Schleife von "Timer" hängen. Der Timer soll aber parallel ablaufen, d.h. der Rest des Scriptes soll auch aufgebaut werden.

    Spoiler anzeigen
    [autoit]

    ; Timer
    Local $i = 6
    Do
    $i = $i - 1
    GUICtrlCreateLabel("Noch " & $i & " Sekunden bis Reload", 200, 200, 200, 200)
    Sleep(1000)
    GUISetState(@SW_SHOW)
    If $i = 0 Then $i = 6
    Until $i = 0

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

    ; Überschrift
    GUISetFont(20)
    $Label02 = GUICtrlCreateLabel("Wo steckt mein Papa gerade ?", $varUeberschrift, -1)

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

    ; Browerfenster
    ;$browser = GUICtrlCreateObj($IE, 10, 50, $varGUIWindowWidth - 20, $varGUIWindowHeight - 65)
    $browser = GUICtrlCreateObj($IE, 100, 100, 100, 100)
    GUISetState(@SW_SHOW)

    [/autoit]

    Besser so ???

    Was muss ich machen (bitte mit Beispiel), damit alles läuft und sich parallel ein Label kontinierlich updatet ?

    Gruss Hassan

  • Timer Funktion geht nicht

    • HassanMullah
    • 20. Juni 2012 um 11:13

    Sorry, aber das ist die falsche Richtung. Ich will ja nicht den Zeitunterschied, sondern einen "ungefähren" Counter der von 20 nach 0 zählt und wieder anfängt - und dabei sich in die Anwendung (EXE) sauber integriert, sodass der Rest auch noch geht.

    Also mit einer Schleife ist das schon zu bewerkstelligen, aber wie genau ???

    Trotzdem Danke

  • Timer Funktion geht nicht

    • HassanMullah
    • 20. Juni 2012 um 11:03

    Hallo zusammen,

    Ich habe gerade ein Problem mit einem Label. Gebaut habe ich ein kleines Browserfenster für meine Tochter, in der eine iframe HTML Seite eingebaut ist. Das funktioniert auch alles soweit. Es gibt oben im Autoit eine Überschrift. Jetzt möchte ich zusätzlich am linken Rand eine zweite Textzeile einfügen, welche mitten drin von 20 auf 0 zählt (also 20 Sekunden) und dann wieder bei 20 anfängt.

    Irgendwie hänge ich hier aber voll und hoffe das mich jemand auf die richtige Spur setzen kann :thumbup:

    Anbei ein Teil Code:

    Spoiler anzeigen
    [autoit]

    ; GUI wird erstellt
    $GUI_main = GUICreate("PapaControl", $varGUIWindowWidth, $varGUIWindowHeight, -1, -1)

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

    ; Timer
    ;~ While 1
    ;~ For $i = 20 To 1 Step -1
    ;~ GUICtrlSetData($Label01, $i)
    ;~ Sleep(1000)
    ;~ $Label00 = GUICtrlCreateLabel("Seite wird alle" & $Label01 & " Sekunden aktualisiert", 5, 5)
    ;~ Next
    ;~ $i = 20
    ;~ WEnd

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

    ; Überschrift
    GUISetFont(20)
    $Label02 = GUICtrlCreateLabel("Wo steckt mein Papa gerade ?", $varUeberschrift, -1)

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

    ; Browerfenster
    $browser = GUICtrlCreateObj($IE, 10, 50, $varGUIWindowWidth - 20, $varGUIWindowHeight - 65)
    GUISetState(@SW_SHOW)
    _IENavigate($IE, @TempDir & "\latitude.htm")

    [/autoit]

    Kann mir hier jemand im Abschnitt "Timer" (Zeile 4 bis 12) vielleicht helfen. Das geht so gar nicht ?(

    Danke Hassan

  • Eigene Autoit EXE in den Focus bringen (alle 10 Minuten)

    • HassanMullah
    • 20. Juni 2012 um 09:29

    Danke an Alle. Es funktioniert :)

  • Eigene Autoit EXE in den Focus bringen (alle 10 Minuten)

    • HassanMullah
    • 19. Juni 2012 um 16:41

    Ja im Prinzip schon.

    Die Frage ist nur an welcher Stelle definiere ich die Variable $hGui und mit welchem Wert ?

  • Eigene Autoit EXE in den Focus bringen (alle 10 Minuten)

    • HassanMullah
    • 19. Juni 2012 um 14:54

    Hallo zusammen,

    ich möchte gerne die kompilierte EXE selbst prüfen lassen, ob Sie im Focus ist (also im Vordergrund) und wenn nicht, dieser dann selbst den Focus geben. Die Prüfung soll alle 10 Minuten automatisch erfolgen, solange die Anwendung läuft.

    Wie verwirkliche ich sowas ?

    Vielen Dank

    Gruss Hassan

  • AD Domänenpasswort von Standalone PC ändern ?

    • HassanMullah
    • 1. Februar 2012 um 15:33

    Ich habe das jetzt mal wie auf hier beschrieben getestet. Wir haben ja eine Windows 2008 Domäne.

    Hierbei habe ich einmal den Domänencontroller und einmal den Domänennamen versucht und bei ändern des Passworts folgende Fehlermeldung erhalten.

    "Das Netzwerkanbieterkennwort kann nicht geändert werden"

    Mache ich was falsch, oder geht das unter Windows 2008 nicht mehr

    Gruss Hassan

  • AD Domänenpasswort von Standalone PC ändern ?

    • HassanMullah
    • 31. Januar 2012 um 14:54

    Prinzipiell stimme ich der Geschichte mit RDP / ICA oder Streaming schon zu. Nur gibt es hier leider GPOs, die das unterbinden :(

  • AD Domänenpasswort von Standalone PC ändern ?

    • HassanMullah
    • 31. Januar 2012 um 14:28

    TheLuBu: Da ich mit dem Notebook in vielen unterschiedlichen Netzwerken unterwegs bin, habe ich festgestellt, das dieses einfach besser läuft, wenn ich die Hardware keiner Domäne angehört. Aber zum Verbindung von Netzwerkresourcen (Fileshares / Sharepoint usw.) habe ich schon einen Domänenaccount

    Micha_he: Habe das ausprobiert, aber wäre ja auch zu einfach. Da muss die Hardware ja Mitglied in der Domäne sein. Standalone geht das leider nicht.

    Gruss Hassan

  • AD Domänenpasswort von Standalone PC ändern ?

    • HassanMullah
    • 31. Januar 2012 um 13:37

    Servus,

    ich habe folgendes Problem. Mein PC soll nicht Mitglied der Domänen sein. Ich als Person habe jedoch einen Benutzeraccount auf der Domäne (Windows 2008). Jetzt müssen wir in Zukunft alle 30 Tage das Passwort ändern, mir fehlt jedoch sozusagen die Möglichkeit, da ich ja nicht Strg+Alt+Del drücken kann.

    Habe ich hier mit AutoIT eine Möglichkeit ? Wenn ja wäre ich um jede Hilfestellung sehr Dankbar.

    Gruss Hassan

    P.S. Ich habe noch 28 Tage Zeit :whistling:

  • Eingabe von Text und Counter fehlt. Wie geht das ?

    • HassanMullah
    • 6. April 2011 um 16:50

    Hi Chip,

    passt :thumbup:

    vielen Dank

  • Eingabe von Text und Counter fehlt. Wie geht das ?

    • HassanMullah
    • 6. April 2011 um 14:47

    Hallo,

    ich habe mir auf die Schnelle folgendes geschrieben:

    [autoit]

    AutoItSetOption("MouseCoordMode", 0)

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

    HotKeySet("^!-", "_exit") ; Strg+Alt+-

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

    While 1
    Sleep(1500)
    WinWait("Nachweise - eANVportal - Windows Internet Explorer")
    WinActivate("Nachweise - eANVportal - Windows Internet Explorer")
    MouseMove(231, 344, 1)
    MouseClick("left")
    Send("ENH12V700443{ENTER}")
    MouseMove(1534, 406, 1)
    MouseClick("left")
    Send("{ENTER}")
    WEnd

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

    Func _exit()
    Exit 0
    EndFunc ;==>_exit

    [/autoit]

    Momentan ist die Zeile

    [autoit]

    Send("ENH12V700443{ENTER}")

    [/autoit]

    statisch. Ich würde gerne beim Start vom Autoitscript ein Abfragefenster bekommen, wo ich in diesem Fall ENH12V700443 eintrage, oder halt einen anderen Wert.
    Danach brauche ich nochmal ein Abfragefenster, wo ich eine Zahl eintrage.

    Mit dieser Zahl soll dann die While Schleife entsprechend der Zahl durchlaufen werden.

    Bitte um Hilfe, wie ich das angehe.

    Gruss und Danke Hassan

  • Automatische Anmeldung im Internetexplorer 9 (IE9) auf einer Website

    • HassanMullah
    • 31. März 2011 um 11:42

    Hallo,

    wir betreiben für unsere Kunden verschiedene Webportale. Bei allen Portalen ist es das gleiche Anmeldeverfahren.

    Benutzername + Passwort dann Anmeldeknopf drücken

    Hier mal eine Screenshot: [Blockierte Grafik: http://www.hasenmueller.de/files4forum/pics4forum_27.png]

    Es ist IMMER der gleiche Name und das gleiche Passwort. Der Text in den Browsertabs ist auch immer gleich.

    Ich habe leider keine Ahnung, wie ich hier vorgehen muss. Ich vermute mal die IE.au3 mit einbinden zu müssen, aber dann ???

    Nachtrag: Ich kann ein

    [autoit]

    $oIE = _IECreate ("https://www.wasauchimmer.de")

    [/autoit]

    leider nicht gebrauchen.
    Die Websites werden von Hand geöffnet, d.h. das Script soll die aktive IE9 Sitzung nehmen.

    Hat mir hier jemand vielleicht einen Codeschnippsel :thumbup:

    Gruss und Dank Hassan

  • Doppelklick OHNE Maus ausführbar ?

    • HassanMullah
    • 24. Februar 2011 um 13:56

    Hi Pennywise,

    ich hatte wohl vergessen zu sagen, das es sich hierbei um eine Webbasierte Anwendung handelt, d.h. keine Controls, bzw. es sind immer unterschiedliche "Flächen" die ich per Doppelklick aufsuche.

  • Doppelklick OHNE Maus ausführbar ?

    • HassanMullah
    • 24. Februar 2011 um 10:40

    Hallo zusammen,

    ich habe mir vor einiger Zeit ein ganz kleines Script gebaut, welches an der Stelle, wo die Maus sich befindet alle 3 Sekunden einen Doppelklick macht. Wir brauchen das für QS Tests.

    Jetzt wäre es ja schön, wenn man via autoit ein Script laufen lassen kann, wo ein Doppelklick ausführt, jedoch ohne die Maus zu blockieren. Also ich möchte sozusagen eine "virutelle" Maus an XY Position doppelklicken lassen, wärend ich mit der realen Maus weiterarbeiten kann.

    Geht sowas ?

    Gruss Hassan

  • Kodierung von INI Datei beim speichern ändern ?

    • HassanMullah
    • 20. Januar 2011 um 14:52

    Also mit folgender Funktion geht es jetzt bei mir:

    [autoit]

    Func _func_write_ini($var_local_ini_file, $var_local_ini_sektion, $var_local_ini_key, $var_local_OUT_WERT); mit Übergabe an die Lokalen Variablen
    IniWrite($var_local_ini_file, $var_local_ini_sektion, $var_local_ini_key, $var_local_OUT_WERT); Zurückschreiben des jeweiligen Wertes in den Schlüssel einer Sektion
    $textuisystem_handle = FileOpen($var_local_ini_file, 16)
    $textuisystem_final_handle = FileOpen($var_ini_utf8_file, 266)
    $line = 0
    While 1
    $textuisystem_contents = FileReadLine($textuisystem_handle, $line)
    If @error = -1 Then ExitLoop
    FileWrite($textuisystem_final_handle, $textuisystem_contents & @CRLF)
    $line += 1
    WEnd
    FileClose($textuisystem_handle)
    FileClose($textuisystem_final_handle)
    FileDelete($var_local_ini_file)
    FileCopy($var_ini_utf8_file, $var_local_ini_file, 9)
    EndFunc ;==>_func_write_ini

    [/autoit]


    Gruss Hassan

  • Kodierung von INI Datei beim speichern ändern ?

    • HassanMullah
    • 20. Januar 2011 um 13:03

    Neue Erkenntnis :D

    Habe im Forum ein wenig nach ähnlichen Problemen gesucht und jetzt bin ich der Sache schon etwas näher

    Hier mal die neue Funktion:

    [autoit]

    Func _func_write_ini($var_local_ini_file, $var_local_ini_sektion, $var_local_ini_key, $var_local_OUT_WERT); mit Übergabe an die Lokalen Variablen
    IniWrite($var_local_ini_file, $var_local_ini_sektion, $var_local_ini_key, $var_local_OUT_WERT); Zurückschreiben des jeweiligen Wertes in den Schlüssel einer Sektion
    $textuisystem_handle = FileOpen($var_local_ini_file, 256)
    $textuisystem_final_handle = FileOpen($var_ini_utf8_file, 258)
    $line = 0
    While 1
    $textuisystem_contents = FileReadLine($textuisystem_handle, $line)
    If @error = -1 Then ExitLoop
    FileWrite($textuisystem_final_handle, $textuisystem_contents & @CRLF)
    $line += 1
    WEnd
    FileClose($textuisystem_handle)
    FileClose($textuisystem_final_handle)
    FileDelete($var_local_ini_file)
    FileCopy($var_ini_utf8_file, $var_local_ini_file, 9)
    EndFunc ;==>_func_write_ini

    [/autoit]

    Das entsprechende INI File sieht in Notepad++ jetzt so aus:

    [Blockierte Grafik: http://www.hasenmueller.de/files4forum/pics4forum_21.png]

    Im Klartext soll das so sein:

    OUT_KFZ=SÜD-ÄÖß

    In der eigentlichen Anwendung, also das Ziel, sieht es dann so aus.

    [Blockierte Grafik: http://www.hasenmueller.de/files4forum/pics4forum_22.png]

    Warum kommt das jetzt immer noch so komisch an ?

    Nachtrag:
    Abgesehen davon das die Kodierung noch nicht passt, habe ich noch ein weiteres Problem. Die INI Datei ist ja - wie man am Datum erkennen kann - jeweils 1 Tag gültig, d.h. am nächsten Tag gibt es eine neue Datei.

    Die INI Datei pro Tag füllt sich aber um einige Sektionen. Ab dem 2. Sektionseintrag will Autoit dann eine "ANSI as UTF8" Datei in eine "ANSI as UTF8" Datei wandeln. Was dabei rauskommt, kann sich jeder selbst denken :thumbdown:

    Gruss Hassan

  • Kodierung von INI Datei beim speichern ändern ?

    • HassanMullah
    • 20. Januar 2011 um 11:19

    Hallo Sprenger120,

    sorry das ich mich erst jetzt melde, hatte einiges um die Ohren.

    Ich habe jetzt mal einen ersten Versuch gemacht, der aber gründlich in die Hosen ging. Am besten ich zeige Euch mal was ich mache, bzw. was ich dann fehlerhaft raus bekomme.

    Von unserem Java Connector bekommen wir Daten von unserem Java Portal. Diese müssen in eine lokale Win32 Anwendung übertragen werden. Dann kommt eine Änderung in der Win32 Anwendung. Danach müssen diese Änderungen via Java Connector in das Java Portal. Den Step mit der Win32 Anwendung übernimmt Autoit. Als Datenaustausch verwenden der Java Connector und Autoit eine INI Datei, die immer das aktuelle Datum als Dateinamen hat, also am 20. Januar 2011 wäre das dann 20110120.ini

    Der Erzeuger der INI Datei ist der Java Connector. Zu diesem Zeitpunkt ist es noch eine INI Datei mit ANSI Kodierung. Beim Übertragen vom Java Connector zum Java Portal wird das jedoch in UTF-8 erwartet, d.h. was im ANSI INI File ein "Ü" ist, kommt dann am Ziel als "?" an ;(

    [Blockierte Grafik: http://www.hasenmueller.de/files4forum/pics4forum_20.png]

    Wir haben Testweise folgendes gemacht. Der Java Connector hat das INI File erzeugt. Dann habe ich mit Notepad++ der Inhalt in die Zwischenablage kopiert, das File geschlossen, eine neue Datei mit UTF-8 ohne BOM Kodierung geöffnet, den Inhalt aus der Zwischenablage reinkopiert und das ganze als 20110120.ini wieder gespeichert.

    Öffne ich das INI File nochmals mit Notepad++ öffne, sehe ich rechts unten, das die Kodierung UTF-8 ohne BOM ist. Wenn man dann via Autoit die Änderungen in diese INI File schreibt, haben wir wieder ein ANSI INI File :cursing:

    Hier mal meine orginal Funktion:

    [autoit]

    Func _func_write_ini($var_local_ini_file, $var_local_ini_sektion, $var_local_ini_key, $var_local_OUT_WERT); mit Übergabe an die Lokalen Variablen
    IniWrite($var_local_ini_file, $var_local_ini_sektion, $var_local_ini_key, $var_local_OUT_WERT); Zurückschreiben des jeweiligen Wertes in den Schlüssel einer Sektion
    EndFunc ;==>_func_write_ini

    [/autoit]

    und hier mal modifizert - was aber nicht geht:

    [autoit]

    Func _func_write_ini($var_local_ini_file, $var_local_ini_sektion, $var_local_ini_key, $var_local_OUT_WERT); mit Übergabe an die Lokalen Variablen
    IniWrite($var_local_ini_file, $var_local_ini_sektion, $var_local_ini_key, $var_local_OUT_WERT); Zurückschreiben des jeweiligen Wertes in den Schlüssel einer Sektion
    $varINIOpen = FileOpen($var_local_ini_file, 256)
    $varINIRead = FileRead($varINIOpen)
    FileWrite($var_local_ini_file, $varINIRead)
    EndFunc ;==>_func_write_ini

    [/autoit]

    Bevor ich das INI File beschreibe, sieht es so aus:

    Code
    [Aktueller BGS]
    IN_BGS_NR = 17113536286657
    
    
    [17113536286657]
    IN_KFZ = www
    IN_KFZ_ANHAENGER = 
    IN_VOLUMEN = 
    IN_ERZ_BEH_NR = AFUM10001
    IN_BEF_BEH_NR = AFUM00047
    IN_ENT_BEH_NR = AFUM10002
    IN_ENSN_NR = ENI000000003
    IN_AVV_NR = 130101
    Alles anzeigen

    Danach sieht es so aus:

    Spoiler anzeigen
    Code
    [Aktueller BGS]
    IN_BGS_NR = 17113536286657
    
    
    [17113536286657]
    IN_KFZ = www
    IN_KFZ_ANHAENGER = 
    IN_VOLUMEN = 
    IN_ERZ_BEH_NR = AFUM10001
    IN_BEF_BEH_NR = AFUM00047
    IN_ENT_BEH_NR = AFUM10002
    IN_ENSN_NR = ENI000000003
    IN_AVV_NR = 130101
    
    
    OUT_GEWICHT=54221
    OUT_KFZ=SÜD-WB123
    [Aktueller BGS]
    IN_BGS_NR = 17113536286657
    
    
    [17113536286657]
    IN_KFZ = www
    IN_KFZ_ANHAENGER = 
    IN_VOLUMEN = 
    IN_ERZ_BEH_NR = AFUM10001
    IN_BEF_BEH_NR = AFUM00047
    IN_ENT_BEH_NR = AFUM10002
    IN_ENSN_NR = ENI000000003
    IN_AVV_NR = 130101
    
    
    OUT_GEWICHT=54221
    [Aktueller BGS]
    IN_BGS_NR = 17113536286657
    
    
    [17113536286657]
    IN_KFZ = www
    IN_KFZ_ANHAENGER = 
    IN_VOLUMEN = 
    IN_ERZ_BEH_NR = AFUM10001
    IN_BEF_BEH_NR = AFUM00047
    IN_ENT_BEH_NR = AFUM10002
    IN_ENSN_NR = ENI000000003
    IN_AVV_NR = 130101
    
    
    OUT_GEWICHT=54221
    OUT_KFZ=S?D-WB123
    [Aktueller BGS]
    IN_BGS_NR = 17113536286657
    
    
    [17113536286657]
    IN_KFZ = www
    IN_KFZ_ANHAENGER = 
    IN_VOLUMEN = 
    IN_ERZ_BEH_NR = AFUM10001
    IN_BEF_BEH_NR = AFUM00047
    IN_ENT_BEH_NR = AFUM10002
    IN_ENSN_NR = ENI000000003
    IN_AVV_NR = 130101
    
    
    OUT_GEWICHT=54221
    Alles anzeigen

    Die Datei ist zu diesem Zeit IMMER noch ANSI Kodiert!

    Die Sektion in der INI Datei sollte 1 mal vorhanden sein, nicht zig mal.

    Jetzt bin ich mal auf Eure Antworten gespannt, wie ein Flitzebogen :D

    Gruss Hassan

  • Kodierung von INI Datei beim speichern ändern ?

    • HassanMullah
    • 18. Januar 2011 um 15:27

    Hallo,

    mit autoit bestücke ich eine bestehende INI Datei. Da diese INI jedoch in ANSI Kodierung gespeichert ist, wir Sie aber im UTF-8 Format brauchen, wäre es schön, wenn es hier eine Möglichkeit zum "umspeichern" gibt.

    Gruss Hassan

  • Wie muss "ControlGetText" genau aussehen ?

    • HassanMullah
    • 13. Januar 2011 um 12:36

    Ich habe den jetzt so geschrieben ... und bis jetzt funktioniert es :thumbup:

    [autoit]


    WinActive("WW +")
    WinActivate("WW +")
    $varReadNetto = ControlGetText("WW +", "", "[CLASS:TDBEdit; INSTANCE:6]")

    [/autoit]

    Gruss Hassan

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™