Minecraft Server Userliste

  • Hi,

    ich will das bei meinen Skript eine Liste ist wo steht wer alles bei den XXX Minecraft Server online ist,
    das geht doch irgendwie das kann man von der cmd.exe durch list auslesen aber es soll in mein Skript sein, wie geht das :O

  • [autoit]

    StdoutRead

    [/autoit]


    ;)

    Mfg

    There's a joke that C has the speed and efficieny of assembly language combined with readability of....assembly language. In other words, it's just a glorified assembly language. - Teh Interwebz

    C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do, you blow off your whole leg. - Bjarne Stroustrup
    Genie zu sein, bedeutet für mich, alles zu tun, was ich will. - Klaus Kinski

  • Klick einfach mal auf die blaue Schrift - da wirst du auf die deutsche Online-Hilfe zum StdoutRead-Artikel weitergeleitet.

    Mfg

    There's a joke that C has the speed and efficieny of assembly language combined with readability of....assembly language. In other words, it's just a glorified assembly language. - Teh Interwebz

    C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do, you blow off your whole leg. - Bjarne Stroustrup
    Genie zu sein, bedeutet für mich, alles zu tun, was ich will. - Klaus Kinski

  • Der ist gut ...
    Auf den Server zugreifen...
    Träum weiter x.x

    Das einzigste was du kannst ist auf den Client zugreifen.
    Du brauchst die PID und der IO-Stream muss aktiviert werden.
    Danach kannst du das ganze aus der Konsole auslesen.

    Es gibt bereits ein Thread dazu. Geh doch mal googlen...

  • Die PID ändert sich doch immer, also wenn ich es starte dann öffne dann änderts sich, ich habe auch so eine Idee.


    Zitat


    If NOT ProcessExists("cmd.exe") Then
    MsgBox(16, "Kleiner Fehler!", "Die Server Konsolle muss offen sein." & @CRLF & "Also der Server muss gestartet sein.")
    Exit
    EndIf

    Einmal editiert, zuletzt von sezer0012 (17. März 2013 um 20:26)

  • Ich mach dir mal 2 Vorschläge:

    1. Bitte arbeite an deiner Ausdrucksweise bzw. an deinen Formulierungen, Satzbau und der Rechtschreibung. Es ist wirklich schwer deine Postings zu verstehen und grausam diese zu lesen. Wenn man schon selbst keine Lösung findet oder zu faul ist selbst danach zu suchen (google / Forensuche) sollte man wenigstens etwas mehr Arbeit in seine Postings stecken, damit auch jemand versteht was man eigentlich für ein Problem hat. (bezieht sich jetzt nicht nur auf diesen Thread)

    2. Du scheinst absoluter Anfänger in Sachen Autoit zu sein. Daher rate ich dazu, dass du dich erstmal an leichteren Dingen versuchst und dir ein gewisses Grundwissen über die Sprache Autoit aneignest. Dazu bietet sich zum Beispiel das Buch von peethebee an ( https://autoit.de/index.php?page=Thread&threadID=11898 ) und auch die deutsche Autoit Hilfe mit den zugehörigen Beispielscripten der einzelnen Funktionen.

  • Ich arbeite schon ein halbes Jahr mit AutoIt und ich denke das reicht für das was ich immer mache.

    Ich brauch doch nur die Hilfe!
    Ich dachte man kann hier Hilfe kriegen, habe ich mich voll geriert.

  • Natürlich ändert sich die PID jedes Mal wenn du die Datei startest, aber das muss dich nicht daran hindern die herauszufinden.
    Wenn du ein CUI Programm mit Run von deinem Script aus startest (du musst als letzten Parameter von Run 0x2 verwenden) gibt Run die PID des gestarteten Prozesses zurück. Die PID kannst du nun mit StdoutRead verwenden um alles auszulesen was normalerweise in die Konsole des Programms geschrieben wird.
    Das wäre die Lösung deines Problems und wurde hier bereits mehrfach in anderer Form geschrieben ;). Und deine Beiträge sind wirklich schwer zu verstehen, nimm dir doch ein bisschen mehr Zeit sie zu formulieren, dann können wir dir schneller helfen (das ist wirklich nicht böse gemeint).

  • chesstiger das check ich nicht so! Also das ist bis jetzt mein Script:

    Zitat

    #include <Constants.au3>

    Könntest du es vllt so umändern das es funktioniert.


    name22
    ich habe eine andere Lösung gefunden als PID, einfach Processexists

  • Ich bin noch ein Anfänger, wie kann ich mehrere Befehle in eine Variable stellen so das ich StdoutRead($Variable) machen kann?


    Das soll in die Variable:

    Zitat


    Run(@Scriptdir & "\server.bat")
    Sleep(6000)
    Send("list")
    Send("{Enter}")

  • So gelöst,

    ich habe jetzt ne txt rein gefügt das es dann rein schreibt wer alles on ist aber da steht dann nichts?