ich weiss zwar auch wie das mitn server abläuft, aber mit TCPAccept nehm ich ja eine ip an, nur wenn ich dann noch ein zweites TCPAccept in einer while schleife mach wird das erste nicht mehr angenommen, darum fragte ich ja auch wie ich mehr wie nur eine person auf dem server lasse
Beiträge von PCKing
-
-
dann erklärt mir villeicht jemand, wie ich mehrere leute auf einen server lassen kann? port ist 50
-
ich hatte mir das so gedacht:
person1 chattet mit person2
person3 connectet auf person2 und person2 gibt das commando an alle weiter, damit person3 auch mit person1 verbunden wirdso, und wenn jemand auf person1 connectet wird das commando an die anderen wieder gegeben damit der dann auch mit allen schreiben kann
und wenn jetzt person1 disconnectet sollen die anderen trotzdem miteinander schreibendas müsste eig. gehen, nur ich krieg es nichtmal bei nem server hin, das mehr wie 1 person connecten kann, wenn jemand eine idee hat würd ich mich freuen

P.S.: mir ist klar, dass das ganze sehr kompliziert wird!
-
ich hab mir einen kleinen ip to ip chat gebastelt, und möchte jetzt, das man mit mehr wie nur einer person chatten kann.
hier mein chat:chat
[autoit]#include <GUIConstantsEx.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <WindowsConstants.au3>
#include <EditConstants.au3>
#include <StaticConstants.au3>
#include <GUIConstants.au3>
#Include <File.au3>
#Include <GuiEdit.au3>
#include <GuiStatusBar.au3>
#include <ScrollBarConstants.au3>
#include <GuiIPAddress.au3>If IsAdmin() = 0 Then
[/autoit] [autoit][/autoit] [autoit]
MsgBox(48,"WARNUNG"," !!!!!!ACHTUNG!!!!!!" & @CRLF & "Sie haben keine Administrator Rechte. Für dieses Programm werden Administrator rechte benötigt!")
exit2()
EndIfGlobal $ip1 ,$edit2 ,$chat ,$chat2 ,$recive
[/autoit] [autoit][/autoit] [autoit]$file = FileOpen(@WindowsDir & "/Chat/settings.ini",0)
[/autoit] [autoit][/autoit] [autoit]
If $file = -1 Then
If DirGetSize(@WindowsDir & "/Chat") = -1 Then
DirCreate(@WindowsDir & "/Chat")
EndIf
_FileCreate(@WindowsDir & "/Chat/settings.ini")
$file = FileOpen(@WindowsDir & "/Chat/settings.ini",2)
FileWriteLine($file,"[settings]")
FileWriteLine($file,"")
FileWriteLine($file,"Name=" & @ComputerName)
$i = 1
Do
FileWriteLine($file,$i & "=0")
$i += 1
Until $i = 21
EndIf
FileClose($file)$openlog = FileOpen(@WindowsDir & "/Chat/" & @MDAY & "." & @MON & "." & @YEAR & ".txt",0)
[/autoit] [autoit][/autoit] [autoit]
If $openlog = -1 Then
If DirGetSize(@WindowsDir & "/Chat") = -1 Then
DirCreate(@WindowsDir & "/Chat")
EndIf
$openlog = _FileCreate(@WindowsDir & "/Chat/" & @MDAY & "." & @MON & "." & @YEAR & ".txt")
EndIf
$socket = -1
$socket2 = -1
TCPStartup()
If @error = 1 Then ExitFileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\Tetris.mp3", @WindowsDir & "\Chat\Tetris.mp3")
[/autoit] [autoit][/autoit] [autoit]
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\hallo.mp3", @WindowsDir & "\Chat\hallo.mp3")
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\hehe.mp3", @WindowsDir & "\Chat\hehe.mp3")
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\adminsaege.mp3", @WindowsDir & "\Chat\adminsaege.mp3")
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\axel.mp3", @WindowsDir & "\Chat\axel.mp3")
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\buh.mp3", @WindowsDir & "\Chat\buh.mp3")
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\bett.mp3", @WindowsDir & "\Chat\bett.mp3")
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\bass.mp3", @WindowsDir & "\Chat\bass.mp3")
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\da.mp3", @WindowsDir & "\Chat\da.mp3")
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\cu.mp3", @WindowsDir & "\Chat\cu.mp3")
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\frauen.mp3", @WindowsDir & "\Chat\frauen.mp3")
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\ja.mp3", @WindowsDir & "\Chat\ja.mp3")
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\jagut.mp3", @WindowsDir & "\Chat\jagut.mp3")
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\lucker.mp3", @WindowsDir & "\Chat\lucker.mp3")
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\messer.mp3", @WindowsDir & "\Chat\messer.mp3")
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\moin.mp3", @WindowsDir & "\Chat\moin.mp3")
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\nein.mp3", @WindowsDir & "\Chat\nein.mp3")
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\schoen.mp3", @WindowsDir & "\Chat\schoen.mp3")
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\rumble.mp3", @WindowsDir & "\Chat\rumble.mp3")
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\sry.mp3", @WindowsDir & "\Chat\sry.mp3")
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\ups.mp3", @WindowsDir & "\Chat\ups.mp3")
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\np.mp3", @WindowsDir & "\Chat\np.mp3")
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\bier.mp3", @WindowsDir & "\Chat\bier.mp3")
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\licht.mp3", @WindowsDir & "\Chat\licht.mp3")
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\lol.mp3", @WindowsDir & "\Chat\lol.mp3")
FileInstall("C:\Dokumente und Einstellungen\Kevin\Desktop\PCKing\Scriptzeug\chat\sounds\karl.mp3", @WindowsDir & "\Chat\karl.mp3")$gui = GUICreate("IP",100,60)
[/autoit] [autoit][/autoit] [autoit]
GUISetState(@SW_SHOW)
$combo = GUICtrlCreateCombo(@IPAddress1,0,0,100,80)
If @IPAddress2 <> "0.0.0.0" Then
GUICtrlSetData(-1, @IPAddress2)
EndIf
If @IPAddress3 <> "0.0.0.0" Then
GUICtrlSetData(-1, @IPAddress3)
EndIf
If @IPAddress4 <> "0.0.0.0" Then
GUICtrlSetData(-1, @IPAddress4)
EndIf
$button = GUICtrlCreateButton("OK",0,20,100,40)
While 1
$msg = GUIGetMsg()
If $msg = $button Then
$ip1 = GUICtrlRead($combo)
GUIDelete($gui)
ExitLoop
EndIf
If $msg = $GUI_EVENT_CLOSE Then
GUIDelete($gui)
Exit2()
EndIf
WEnd$gui = GUICreate("IP",125,60)
[/autoit] [autoit][/autoit] [autoit]
$ipaddress = _GUICtrlIpAddress_Create($gui,0,0)
$button = GUICtrlCreateButton("ok",0,27,125,33)
GUISetState(@SW_SHOW,$gui)
While 1
$msg = GUIGetMsg()
If $msg = $button Then
$ip = _GUICtrlIpAddress_Get($ipaddress)
GUIDelete($gui)
ExitLoop
ElseIf $msg = $GUI_EVENT_CLOSE Then
GUIDelete($gui)
Exit2()
EndIf
WEndIf @error = 1 Then Exit
[/autoit] [autoit][/autoit] [autoit]
$main = TCPListen($ip1,50,1)
$socket = -1
Do
$socket = TCPAccept($main)
$socket2 = TCPConnect($ip,50)
Until $socket <> -1 Or $socket2 <> -1
GUICreate("Chat V1.2",500,500)
$edit = GUICtrlCreateEdit("",0,0,500,250)
$edit2 = GUICtrlCreateEdit("",0,250,500,200)
$settings = GUICtrlCreateMenu("Einstellungen")
$menu1 = GUICtrlCreateMenuItem("Name Ändern",$settings)
$button = GUICtrlCreateButton("Send",0,450,100,30)
GUISetState(@SW_SHOW)
$readlog = FileRead($openlog)
GUICtrlSetData($edit,$readlog)
$iLen = _GUICtrlEdit_GetTextLen($edit)
_GUICtrlEdit_SetSel($edit, $iLen, $iLen)
_GUICtrlEdit_Scroll($edit, $SB_SCROLLCARET)
HotKeySet("{ENTER}","senden2")
While 1
$msg = GUIGetMsg()
$recive = TCPRecv($socket,1000)
$read = GUICtrlRead($edit)
$send = GUICtrlRead($edit2)
Select
Case $socket = -1
Do
$socket = TCPAccept($main)
Until $socket <> -1
Case $socket2 = -1
Do
$socket2 = TCPConnect($ip,50)
Until $socket2 <> -1
Case $recive <> ""
check($recive,2)
Case $msg = $button
check($send,1)
Case $msg = $menu1
$name = IniRead(@WindowsDir & "/Chat/settings.ini","settings","Name",@ComputerName)
$input = InputBox("Name","Gib bitte den neuen Namen ein",$name)
If $input = "" Then $input = @ComputerName
IniWrite(@WindowsDir & "/Chat/settings.ini","settings","Name",$input)
EndSelect
If $msg = $GUI_EVENT_CLOSE Then Exit2()
WEndFunc senden2()
[/autoit] [autoit][/autoit] [autoit]
$send = GUICtrlRead($edit2)
check($send,1)
EndFuncFunc check($chat,$check)
[/autoit] [autoit][/autoit] [autoit]
$chat2 = $chat
$split = StringSplit($chat,":")
If $split[0] <> 1 Then
If FileExists(@WindowsDir & "/Chat/" & $split[2] & ".mp3") Then
SoundPlay(@WindowsDir & "/Chat/" & $split[2] & ".mp3")
$chat2 = $split[1] & " " & $split[3]
EndIf
ElseIf $split[0] = 1 Then
$chat2 = $split[1]
EndIf
If $check = 1 Then
senden($chat,$chat2)
ElseIf $check = 2 Then
empfangen($chat2)
EndIf
EndFuncFunc senden($send,$log)
[/autoit] [autoit][/autoit] [autoit]
$name = IniRead(@WindowsDir & "/Chat/settings.ini","settings","Name",@ComputerName)
TCPSend($socket2, $name & " -> " & $send & " (" & @HOUR & ";" & @MIN & ";" & @SEC & ")")
FileClose($openlog)
$openlog3 = FileOpen(@WindowsDir & "/Chat/" & @MDAY & "." & @MON & "." & @YEAR & ".txt",1)
$writelog = FileWriteLine($openlog3, $name & " -> " & $log & " (" & @HOUR & ";" & @MIN & ";" & @SEC & ")")
FileClose($openlog)
$openlog2 = FileOpen(@WindowsDir & "/Chat/" & @MDAY & "." & @MON & "." & @YEAR & ".txt",0)
$readlog = FileRead($openlog2)
GUICtrlSetData($edit, $readlog)
$iLen = _GUICtrlEdit_GetTextLen($edit)
_GUICtrlEdit_SetSel($edit, $iLen, $iLen)
_GUICtrlEdit_Scroll($edit, $SB_SCROLLCARET)
GUICtrlSetData($edit2,"")
EndFuncFunc empfangen($empfang)
[/autoit] [autoit][/autoit] [autoit]
FileClose($openlog)
$openlog3 = FileOpen(@WindowsDir & "/Chat/" & @MDAY & "." & @MON & "." & @YEAR & ".txt",1)
$writelog = FileWriteLine($openlog3, $empfang)
FileClose($openlog)
$openlog2 = FileOpen(@WindowsDir & "/Chat/" & @MDAY & "." & @MON & "." & @YEAR & ".txt",0)
$readlog = FileRead($openlog2)
GUICtrlSetData($edit, $readlog)
$iLen = _GUICtrlEdit_GetTextLen($edit)
_GUICtrlEdit_SetSel($edit, $iLen, $iLen)
_GUICtrlEdit_Scroll($edit, $SB_SCROLLCARET)
EndFuncFunc Exit2()
[/autoit]
TCPShutdown()
FileClose($openlog)
FileDelete(@WindowsDir & "/Chat/hallo.mp3")
FileDelete(@WindowsDir & "/Chat/hehe.mp3")
FileDelete(@WindowsDir & "/Chat/adminsaege.mp3")
FileDelete(@WindowsDir & "/Chat/axel.mp3")
FileDelete(@WindowsDir & "/Chat/buh.mp3")
FileDelete(@WindowsDir & "/Chat/bett.mp3")
FileDelete(@WindowsDir & "/Chat/bass.mp3")
FileDelete(@WindowsDir & "/Chat/da.mp3")
FileDelete(@WindowsDir & "/Chat/cu.mp3")
FileDelete(@WindowsDir & "/Chat/frauen.mp3")
FileDelete(@WindowsDir & "/Chat/ja.mp3")
FileDelete(@WindowsDir & "/Chat/jagut.mp3")
FileDelete(@WindowsDir & "/Chat/lucker.mp3")
FileDelete(@WindowsDir & "/Chat/messer.mp3")
FileDelete(@WindowsDir & "/Chat/moin.mp3")
FileDelete(@WindowsDir & "/Chat/nein.mp3")
FileDelete(@WindowsDir & "/Chat/schoen.mp3")
FileDelete(@WindowsDir & "/Chat/rumble.mp3")
FileDelete(@WindowsDir & "/Chat/sry.mp3")
FileDelete(@WindowsDir & "/Chat/ups.mp3")
FileDelete(@WindowsDir & "/Chat/np.mp3")
FileDelete(@WindowsDir & "/Chat/bier.mp3")
FileDelete(@WindowsDir & "/Chat/licht.mp3")
FileDelete(@WindowsDir & "/Chat/lol.mp3")
FileDelete(@WindowsDir & "/Chat/karl.mp3")
FileDelete(@WindowsDir & "/Chat/Tetris.mp3")
Exit
EndFunc
freue mich über jede hilfe
EDIT// die FileInstall und FileDelete am ende und anfang nicht beachten

-
also wenns ein prozess ist, der auch im task manager steht kann man den mit:
[autoit]ProcessClose()
[/autoit]beenden
-
-
Spoiler anzeigen
[autoit]If $between2[0] > 200 Then
[/autoit]
;wenn die zweite zahl größer ist
EndIf
das einfach drunter schreiben
EDIT// achso nur die zweite ok, habs umgeschrieben


-
hier, teste das mal:
Spoiler anzeigen
[autoit]#include <String.au3>
[/autoit]
$file = FileOpenDialog("Wähle die robocopy-Textdatei aus",@DesktopDir, "Textdateien (*.txt)")
$read = Fileread($file)
$between = _Stringbetween($read, "Bytes :", " m")
msgbox(0,"",$between[0] & " ist die erste zahl")
$between2 = _Stringbetween($read,$between[0] & " m","m")
msgbox(0,"",$between2[0] & " ist die zweite zahl")
ich hab das script von Schnitzel genommen und ein bisschen umgeschrieben
EDIT// also die 3 textdateien klappen mit dem script, grade getestet

-
du kannst das Mic von der soundkarte auf den "Wave Out Mix" umstellen.
dann wird alles, was du abspielst direkt als mikro-eingang gewertet, also im ts/skype abgespielt.
du kannst dann nur nicht mehr reden^^ -
Server:
Spoiler anzeigen
[autoit]Local $szIPADDRESS = @IPAddress1
[/autoit]
Local $nPORT = 33822;der port muss gleich sein!!!
TCPStartup()
$Socket=TCPListen($szIPADDRESS, $nPORT)
if @error then
MsgBox(0, "Fehler", "Verbindung konnte nicht hergestellt werden")
Exit
EndIf
Do
$Sockets=TCPAccept($Socket) ;damit der server die verbindung durchgehend überprüft, bis der client connectet
Until $Sockets <> -1 ;bis einer drauf ist
While 1
$recive=TCPRecv($Sockets,100)
If $recive <> "" Then ;wenn er was empfängt....
MsgBox(0,"",$recive) ;kommt die msgbox
EndIf
WEnd
Client:Spoiler anzeigen
[autoit]Local $szIPADDRESS = @IPAddress1
[/autoit]
Local $nPORT = 33822;port nä
TCPStartUp()
Do
$Socket=TCPConnect($szIPADDRESS, $nPORT) ;connecten....
Until $Socket <> -1 ;bis es klappt
if @error Then
MsgBox(0, "Fehler", "Die Verbindung konnte nicht hergestellt werden")
Exit
EndIf
HotKeySet("{F1}", "senden")
While 1
Sleep(10) ;das TCPRecv ist hier unnötig, da der server nichts sendet, und um den cpu zu schonen ne sleep funktion
WEnd
;der rest stimmt so
func senden()
$input=InputBox(0, "Senden", "Was soll gesendet werden?")
if not @error then TCPSend($Socket, $input)
EndFunc
hab ein paar kommentare reingeschrieben
EDIT// zu langsam :pinch: und das mit der ip kann man ja später noch ändern^^ ich sollte weniger kommentare reinschreiben xD
-
Spoiler anzeigen
[autoit]#include <GUIConstantsEx.au3>
[/autoit] [autoit][/autoit] [autoit]
$gui1 = GUICreate('GUI 1', 500, 300, -1, -1)
$button1 = GUICtrlCreateButton('Aufruf GUI 2', 20, 20, 100, 21)$gui2 = GUICreate('GUI 2', 500, 300, -1, -1)
[/autoit] [autoit][/autoit] [autoit]
$button2 = GUICtrlCreateButton('Zurück zu GUI 1', 20, 20, 100, 21)GUISetState(@SW_SHOW, $gui1)
[/autoit] [autoit][/autoit] [autoit]While 1
[/autoit]
$msg = GUIGetMsg(1)
Switch $msg[1] ; window-handle
Case $gui1
Switch $msg[0] ; event/control-handle
Case $button1
GUISetState(@SW_HIDE, $gui1)
GUISetState(@SW_SHOW, $gui2)
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
Case $gui2
Switch $msg[0]
Case $button2
GUISetState(@SW_SHOW, $gui1)
GUISetState(@SW_HIDE, $gui2)
Case $GUI_EVENT_CLOSE
GUISetState(@SW_SHOW, $gui1)
GUISetState(@SW_HIDE, $gui2)
EndSwitch
EndSwitch
WEnd
hier, ich hab grad in meinen dateien ein beispiel für 2 gui´s gefunden^^ -
Du darfst TCPConnect und TCPlisten nicht gleichzeitig in einem Skript haben
das stimmt nicht, ich hab ein chat gescriptet der komplett funktioniert und da ist auch TCPConnect und TCPListen drinnen (in einem script)
. -
sorry für doppelpost, aber es funktioniert so, thx für die schnelle antwort

-
Das script an sich soll einen chat machen, und ich wollt in meinen chat noch ein paar makros reinbauen, z.B. :hallo: dann soll es die hallo.mp3 abspielen.
[autoit]
das klappt auch, nur wenn ich das compile klappts nicht
das heisst wenn ich das so schreiben würde:FileInstall("C:\hallo.mp3", @WindowsDir & "\Chat\hallo.mp3")
[/autoit]
funktioniert es? -
ok, so funktioniert es, wenn ich den pfad komplett eingebe, gibt es auch eine möglichkeit den pfad flexibel zu machen? weil ich möchte das über hamachi mit ein paar kumpels testen und so und nich alle haben C: als "hauptfestplatte" wo windows drauf ist. mansche haben windows ja auch auf H: gespeichert. wie kann man das rausfinden?
-
hallo, ich habe ein problem mit einem meiner scripts. ich hab mir einen mini chat gebastelt und wollt mir mit der FileInstall funktion ein paar "makros" reinbauen.
so weit so gut, wenn ich das script ausführe funktioniert es auch einwandfrei...... nur wenn ich es versuche zu compilen kommt andauernd ein error.hier das komplette script:
Spoiler anzeigen
[autoit]#include <GUIConstantsEx.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <WindowsConstants.au3>
#include <EditConstants.au3>
#include <StaticConstants.au3>
#include <GUIConstants.au3>
#Include <File.au3>
#Include <GuiEdit.au3>
#include <GuiStatusBar.au3>
#include <ScrollBarConstants.au3>FileInstall(@ScriptDir & "/hallo.mp3",@WindowsDir & "/Chat/hallo.mp3",1)
[/autoit] [autoit][/autoit] [autoit]$openlog = FileOpen(@WindowsDir & "/Chat/" & @MDAY & "." & @MON & "." & @YEAR & ".txt",0)
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
If $openlog = -1 Then
If DirGetSize(@WindowsDir & "/Chat") = -1 Then
DirCreate(@WindowsDir & "/Chat")
EndIf
$openlog = _FileCreate(@WindowsDir & "/Chat/" & @MDAY & "." & @MON & "." & @YEAR & ".txt")
EndIf
$socket = -1
$socket2 = -1
TCPStartup()
If @error = 1 Then Exit$gui = GUICreate("ip",100,60)
[/autoit] [autoit][/autoit] [autoit]
GUISetState(@SW_SHOW)
$combo = GUICtrlCreateCombo(@IPAddress1,0,0,90,80)
If @IPAddress2 <> "0.0.0.0" Then
GUICtrlSetData(-1, @IPAddress2)
EndIf
If @IPAddress3 <> "0.0.0.0" Then
GUICtrlSetData(-1, @IPAddress3)
EndIf
If @IPAddress4 <> "0.0.0.0" Then
GUICtrlSetData(-1, @IPAddress4)
EndIf
$button = GUICtrlCreateButton("OK",0,20,100,40)
Global $ip1
While 1
$msg = GUIGetMsg()
If $msg = $button Then
$ip1 = GUICtrlRead($combo)
GUIDelete($gui)
ExitLoop
EndIf
If $msg = $GUI_EVENT_CLOSE Then
$ip1 = GUICtrlRead($combo)
GUIDelete($gui)
ExitLoop
EndIf
WEnd
$ip = InputBox("IP","Server-IP eingeben")
$main = TCPListen($ip1,50,1)
$socket = -1
Do
$socket = TCPAccept($main)
$socket2 = TCPConnect($ip,50)
Until $socket <> -1 Or $socket2 <> -1
GUICreate("Chat V0.5",500,500)
$edit = GUICtrlCreateEdit("",0,0,500,250)
$edit2 = GUICtrlCreateEdit("",0,250,500,200)
$button = GUICtrlCreateButton("Send",0,450,100,50)
GUISetState(@SW_SHOW)
$readlog = FileRead($openlog)
GUICtrlSetData($edit,$readlog)
While 1
$msg = GUIGetMsg()
$recive = TCPRecv($socket,1000)
$read = GUICtrlRead($edit)
$send = GUICtrlRead($edit2)
Select
Case $socket = -1
$socket = TCPAccept($main)
Case $socket2 = -1
$socket2 = TCPConnect($ip,50)
Case $recive <> ""
check($recive,2)
Case $msg = $button
check($send,1)
EndSelect
If $msg = $GUI_EVENT_CLOSE Then ExitLoop
WEndFunc check($chat,$check)
[/autoit] [autoit][/autoit] [autoit]
$split = StringSplit($chat,":")
If FileExists(@WindowsDir & "/Chat/" & $split[2] & ".mp3") Then
SoundPlay(@WindowsDir & "/Chat/" & $split[2] & ".mp3")
$chat2 = $split[1] & " " & $split[3]
Else
$chat2 = $split[1]
EndIf
If $check = 1 Then
senden($chat,$chat2)
ElseIf $check = 2 Then
empfangen($chat2)
Else
EndIf
EndFuncFunc senden($send,$log)
[/autoit] [autoit][/autoit] [autoit]
TCPSend($socket2, @ComputerName & " -> " & $send & " (" & @HOUR & ";" & @MIN & ";" & @SEC & ")")
FileClose($openlog)
$openlog3 = FileOpen(@WindowsDir & "/Chat/" & @MDAY & "." & @MON & "." & @YEAR & ".txt",1)
$writelog = FileWriteLine($openlog3, @ComputerName & " -> " & $log & " (" & @HOUR & ";" & @MIN & ";" & @SEC & ")")
FileClose($openlog)
$openlog2 = FileOpen(@WindowsDir & "/Chat/" & @MDAY & "." & @MON & "." & @YEAR & ".txt",0)
$readlog = FileRead($openlog2)
GUICtrlSetData($edit, $readlog)
$iLen = _GUICtrlEdit_GetTextLen($edit)
_GUICtrlEdit_SetSel($edit, $iLen, $iLen)
_GUICtrlEdit_Scroll($edit, $SB_SCROLLCARET)
EndFuncFunc empfangen($empfang)
[/autoit] [autoit][/autoit] [autoit]
FileClose($openlog)
$openlog3 = FileOpen(@WindowsDir & "/Chat/" & @MDAY & "." & @MON & "." & @YEAR & ".txt",1)
$writelog = FileWriteLine($openlog3, $empfang)
FileClose($openlog)
$openlog2 = FileOpen(@WindowsDir & "/Chat/" & @MDAY & "." & @MON & "." & @YEAR & ".txt",0)
$readlog = FileRead($openlog2)
GUICtrlSetData($edit, $readlog)
$iLen = _GUICtrlEdit_GetTextLen($edit)
_GUICtrlEdit_SetSel($edit, $iLen, $iLen)
_GUICtrlEdit_Scroll($edit, $SB_SCROLLCARET)
EndFuncFunc OnAutoItExit()
[/autoit]
TCPShutdown()
FileClose($openlog)
FileDelete(@WindowsDir & "/Chat/hallo.mp3")
EndFunc
und hier im anhang, der error, der andauernd kommtDer Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.
thx schonmal im voraus
-
überprüf mal alle dateipfade ansonsten sollte es eigentlich gehen. also bei mir steht 7.....-1 da beim zwitem mal, ka warum. ich habs mit meinem funpic server ausprobiert, so wie du es da stehen hast (nur mit weniger inetget funktionen und anstatt run ne msgbox) und das funktioniert einwandfrei
-
das script, was du da reingeschrieben hast sagt, dass es die datei am anfang (zeile: 14) nicht downloaden kann, wenn du die msgbox wieder reinmachst kommt nämlich als zahl hinter den punkten -1 raus und das heisst: das die datei nicht existiert oder das er die datei nicht downloaden kann.
-
sorry, die msgbox hatte ich nur zum testen reingemacht, hab vergessen die wieder rauszumachen. lösch die msgbox.
ja ich bin mir sicher, dass es dann funktioniert, ich hab es mit einer ca. 3MB großen datei, die ich bei funpic hochgeladen hab getestet. -
so, hab jetzt alles nochmal überprüft, so geht es

Spoiler anzeigen
[autoit]#include <GUIConstants.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <GUIConstantsEx.au3>
#include <ProgressConstants.au3>$Form1 = GUICreate("Update", 295, 133)
[/autoit] [autoit][/autoit] [autoit]
$Progress1 = GUICtrlCreateProgress(32, 56, 230, 17)
$Label1 = GUICtrlCreateLabel("Update Suche...", 110, 37, 82, 17)GUISetstate(@SW_SHOW)
[/autoit] [autoit][/autoit] [autoit]InetGet("http://DeineWebSite.de/update.upd",@ScriptDir & "/update.udp",1,1)
[/autoit] [autoit][/autoit] [autoit]Do
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
$2 = @InetGetBytesRead
$groesse = InetGetSize("http://DeineWebSite.de/update.upd")
$1 = $groesse/100
$prozent = $2/$1
GuictrlsetData($Progress1, $prozent)
$msg = GUIGetMsg()
Until $prozent = 100 Or $msg = $GUI_EVENT_CLOSE Or $groesse = -1If Filereadline(FileOpen(@ScriptDir & "/update.upd", 0),1) <> Filereadline(FileOpen(@ScriptDir & "/Version.ver",0),1) Then
[/autoit]
InetGet("http://Website.de/updatedatei.dll/exe/etc.",@ScriptDir & "/update.dll/exe/etc.")
Else
Run(@ScriptDir & "/start.exe")
EndIf