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

Beiträge von n1mmel

  • Minecraft Server RCON Steuerung

    • n1mmel
    • 16. Dezember 2015 um 22:31

    Hallo Leute

    Ich habe bei mir im Haus einen Server stehen auf dem ein Minecraft Server läuft. Ich wollte ein Tool bauen, damit meine Kumpels den Server auch von außen steuern können, ohne dass ich ihnen die Remoteunterstützung einrichten muss.
    Der Server läuft in einer Konsole.
    Mein Problem ist jetzt mich dort zu authentifizieren und Befehle zu senden.

    AutoIt
    TCPStartup()
    			OnAutoItExitRegister("OnAutoItExit")
    			$iSocket = TCPConnect($sIP, $sPort)
    			If @error Then
    				Local $iError = @error
    				MsgBox(BitOR($MB_SYSTEMMODAL, $MB_ICONHAND), "", "Kann nicht verbinden, Fehlercode: " & $iError)
    
    
    			Else
    				_GUICtrlStatusBar_SetText($StatusBar1, "Status: Online")


    Mit diesem Code verbinde ich mich zum Server. Das funktioniert auch. Ich bekomme dann in der Konsole vom Server die Meldung dass jemand per RCON rein will.
    Ist das soweit Ok was ich gemacht habe?
    Jetzt möchte ich natürlich Befehle senden aber ich bekomme es irgendwie nicht hin. Das hier hatte ich versucht:

    AutoIt
    TCPSend($iSocket, "rcon_password " & $sRcon)

    Naja, irgendwie kommen die Befehle dort aber nicht an. Was kann ich tun um meinen Minecraft zu steuern?
    Wäre super wenn sich jemand findet der darin schon erfahrung hat oder weiß wie es richtig funktioniert.

    Vielen Dank schon mal!


    Grüße

    n1mmel

  • Programm hängt während FTP Verbindunsaufbau

    • n1mmel
    • 29. November 2015 um 22:39
    Zitat von Kanashius

    Die Excel-UDF funktioniert, aber bei ner Text-Datei kannst du einfach mit FileReadToArray() eine Datei einlesen, mit ner for-Schleife durch das Array gehen, die 3 Spalten durch StringSplit ermitteln und damit die ListView erstellen. Solltest dich dafür aber erst mit Arrays auseinandersetzen, da gibt es sehr schöne Tutorials auch hier im Forum.

    Ok, werde ich mich dann reinlesen. Vielen dank für deine schnelle Hilfe! :)

  • Programm hängt während FTP Verbindunsaufbau

    • n1mmel
    • 29. November 2015 um 21:49

    Habe ich jetzt mit eingebaut. Aber so wie es aussieht ist die Textdatei die ich runterlade zu klein als dass dort ein Fortschritt angezeigt werden könnte. Habe jetzt einen kleinen Sleep eingebaut. Dann sieht es wenigstens so aus als ob :)
    Und das Problem mit dem hängen vom Fenster hatte anscheind damit zu tun dass ich eine DNS Adresse verwenden habe. Habe das mal durch die richtige IP ausgetauscht und schon ging es direkt.

    Hier sind ja echt Profis unterwegs. Vielleicht könnt ihr mir auch bei meinem anderen Problem noch helfen. Ich habe dazu leider auch nichts gefunden. Also: Ich möchte die oben genannte Datei, am besten eine Textdatei in ein Listview übertragen. Ich habe in der Textdatei immer 3 Sachen in einer Reihe, d.h.: Bezeichnung, Anschrift, Bemerkung. Getrennt mit "|". Wie code ich das jetzt damit diese Daten aus der txt datei in das Listview übertragen werden und in die Entsprechenden Zeile eingetragen werden?

    So wie ich gelesen habe ist es ja leider nicht mehr möglich einen Excel Daten einzubetten(?) oder sehe ich das falsch?
    Das wäre dann natürlich die Non-Plus-Ultra Lösung :)

    Also vielen dank für die Hilfe

    Grüße
    Patrick

  • Programm hängt während FTP Verbindunsaufbau

    • n1mmel
    • 29. November 2015 um 18:08

    Hier ist der Code dazu. Es ist mein erstes Programm, bitte keinen Shitstorm, jeder fängt mal klein an ;)
    Der Code ist voll funktionsfähig. FTP läuft und Zugangsdaten dazu stimmen auch. Also kann getestet werden.

    AutoIt
    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_Icon=D:\Downloads\colosseum.ico
    #AutoIt3Wrapper_Outfile=Besondere Objekte.Exe
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
    #include <ButtonConstants.au3>
    #include <File.au3>
    #include <ComboConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <FTPEx.au3>
    #include <Misc.au3>
    #include <ProgressConstants.au3>
    #include <Excel.au3>
    #NoTrayIcon
    
    
    Global $cbProxy
    Global $proxyset
    Global $sComboRead = ""
    Global $comTeam
    Global $edMain
    Global $ES_READONLY
    Global $GUI_SS_DEFAULT_EDIT
    
    
    
    
    #Region ### START Koda GUI section ### Form=c:\users\patrick\desktop\autoit\telekom\fmain.kxf
    $fMain = GUICreate("Besondere Objekte", 408, 361, 379, 149)
    GUISetFont(12, 400, 0, "Calibri")
    $comTeam = GUICtrlCreateCombo("", 128, 192, 145, 25, BitOR($CBS_DROPDOWN, $CBS_AUTOHSCROLL))
    GUICtrlSetData(-1, "Team 1|Team 2|Team 3|Team 4|Team 5|Team 6|Team 7")
    GUICtrlSetTip(-1, "Bitte Team auswählen...")
    $labTeam = GUICtrlCreateLabel("Team wählen:", 128, 136, 146, 33)
    GUICtrlSetFont(-1, 18, 800, 0, "Calibri")
    $Label1 = GUICtrlCreateLabel("Liste besonderer Objekte", 30, 24, 400, 46)
    GUICtrlSetFont(-1, 26, 800, 0, "Calibri")
    $btnLoad = GUICtrlCreateButton("Laden...", 120, 248, 163, 41)
    GUICtrlSetFont(-1, 16, 800, 0, "Calibri")
    GUICtrlSetTip(-1, "Daten werden vom Server geladen!")
    $cbProxy = GUICtrlCreateCheckbox("Proxy verwenden?", 8, 336, 137, 17)
    GUICtrlSetState(-1, $GUI_DISABLE)
    GUICtrlSetTip(-1, "Bei aktiver VPN Verbindung ist der Proxy zu verwenden!")
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###
    
    
    While 1
    	$nMsg = GUIGetMsg()
    	Switch $nMsg
    		Case $GUI_EVENT_CLOSE
    			Exit
    
    
    		Case $cbProxy
    			If _IsChecked($cbProxy) Then
    				FtpSetProxy(2, "http://xxx")
    				MsgBox(64, "Proxy", "Proxy wird verwendet")
    			EndIf
    
    
    		Case $btnLoad
    			GUICtrlSetData($btnLoad, "Bitte warten")
    			_ComboRead()
    			GUICtrlSetData($btnLoad, "Laden...")
    
    
    	EndSwitch
    WEnd
    
    
    
    
    Func _ComboRead()
    	$sComboRead = GUICtrlRead($comTeam)
    	If $sComboRead = "" Then
    		MsgBox(16, "Team wählen", "Bitte ein Team auswählen")
    	Else
    		_Progress()
    	EndIf
    
    
    EndFunc   ;==>_ComboRead
    
    
    Func _Datei()
    
    
    EndFunc   ;==>_Datei
    
    
    Func _Progress()
    	Global $g_sRemoteFile = "/telekom/" & $sComboRead & "/wichtigedaten.txt"
    	Global $g_sLocalFile = @TempDir & "\wichtigedaten.txt"
    	FileDelete($g_sLocalFile)
    	Local $sServer = 'n1mmel.myDS.me'
    	Local $sUsername = 'telekom'
    	Local $sPass = 'wichtigedaten'
    	Local $hInternetSession = _FTP_Open('MyFTP Control')
    	Global $hFTPSession = _FTP_Connect($hInternetSession, $sServer, $sUsername, $sPass, 0)
    	If @error Then
    		MsgBox(16, "Keine Verbindung", "Server nicht erreichbar!")
    	Else
    		_FTPDownload()
    		_FTP_Close($hInternetSession)
    	EndIf
    EndFunc   ;==>_Progress
    
    
    Func _FTPDownload()
    	Local $fuFunctionToCall = _UpdateProgress
    	ProgressOn("Download Progress", $g_sRemoteFile)
    	If FileExists(@TempDir & "\wichtigedaten.txt") Then FileDelete("wichtigedaten.txt")
    	_FTP_FileGet($hFTPSession, $g_sRemoteFile, $g_sLocalFile)
    	Sleep(1000)
    	ProgressOff()
    	Datenblatt()
    EndFunc   ;==>_FTPDownload
    
    
    Func _UpdateProgress($iPercent)
    	ProgressSet($iPercent, Int($iPercent) & "%")
    	If _IsPressed("77") Then Return 0
    	Return 1
    EndFunc   ;==>_UpdateProgress
    
    
    Func _IsChecked($idControlID)
    	Return BitAND(GUICtrlRead($idControlID), $GUI_CHECKED) = $GUI_CHECKED
    EndFunc   ;==>_IsChecked
    
    
    Func Datenblatt()
    	$frmObjekte = GUICreate("Besondere Objekte", 946, 682, 178, 124)
    	$edMain = GUICtrlCreateEdit("", 0, 0, 945, 681, BitOR($WS_VSCROLL, $WS_HSCROLL))
    	GUICtrlSetFont(-1, 12, 800, 0, "Calibri")
    	GUISetState(@SW_SHOW)
    	$filepath = (@TempDir & "\wichtigedaten.txt")
    	$fileread = FileRead($filepath)
    	If @error Then
    		MsgBox(16, "", "Datei kann nicht geöffnet werden!")
    	Else
    		GUICtrlSetData($edMain, $fileread)
    	EndIf
    
    
    	While 1
    		$nMsg = GUIGetMsg()
    		Switch $nMsg
    			Case $GUI_EVENT_CLOSE
    				Exit
    		EndSwitch
    	WEnd
    EndFunc   ;==>Datenblatt
    Alles anzeigen
  • Programm hängt während FTP Verbindunsaufbau

    • n1mmel
    • 29. November 2015 um 15:39

    Hallo

    Ich bin noch ein blutiger Anfänger. Suche aber schon tagelang und konnte nichts finden. Jetzt wollte ich meine Frage mal an die Profis stellen.
    Also... Ich habe ein Programm geschrieben, dass auf einen FTP zugreift, eine Datei lädt und diese anzeigt.
    Mein Problem ist; sobald ich den Button drücke und die Verbindung aufgebaut wird reagiert das ganze Programm nicht mehr. Ich wollte den Verbindungsaufbau auch in einen Progressleiste einbinden aber weiß noch nicht wie :)
    Aber das eingentliche Problem ist, dass das Programm hängt während dem Aufbau der Verbindung. Lässt sich da etwas machen? Bringt es was den Verbindungsaufbau in die Progressbar auszulagern? Ich weiß echt nicht was ich da tun soll.

    Wird der Quellcode benötigt damit ihr mir helfen könnt? Dann liefere ich den natürlich nach.

    Vielen Dank schon mal und liebe Grüße

    Patrick


    edit: Dazu muss ich noch sagen, dass die Verbindung zu meinem NAS aufgebaut wird. Habe dort einen FTP drauf eingerichtet. Kann es da dran liegen?

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™