Hallo,
ich habe folgendes Problem. und zwar habe ich es geschafft Dateien per TCP IP zu verschicken, allerdings wird weder name noch Dateityp mitgeliefert. hier mein Quellcode:
'Datei senden
Private Sub btn_Datei_senden_Click(sender As System.Object, e As System.EventArgs) Handles btn_Datei_senden.Click
filepath2 = txt_Dateipfad.Text
Dim sendThread As New System.Threading.Thread(AddressOf sendSub)
sendThread.IsBackground = True
sendThread.Start()
End Sub
Private Sub sendSub()
Dim cli As New TcpClient
cli.Connect(IP_txt.Text, 1300)
Try
Dim nstm As Stream = cli.GetStream()
Dim fstm As Stream = New FileStream(filepath2, FileMode.Open, FileAccess.Read)
Dim buffer(1024 - 1) As Byte
Do While True
Dim bytesRead As Integer = fstm.Read(buffer, 0, buffer.Length)
If bytesRead = 0 Then Exit Do
nstm.Write(buffer, 0, bytesRead)
nstm.Flush()
Loop
cli.Close()
nstm.Close()
fstm.Close()
MsgBox("Die Datein wurde erfolgreich gesendet.", MsgBoxStyle.Exclamation, "Gesendet")
Invoke(New nan(AddressOf closeAll), New Object() {})
Catch ex As Exception
MsgBox("Ein Übertragungsfehler ist aufgetreten:" & vbCr & ex.ToString, MsgBoxStyle.Critical, "Error")
End Try
End Sub
'Datei senden
'Datei empfangen Anfang Code
filePath = My.Computer.FileSystem.SpecialDirectories.Desktop & "\ChatDownload" 'Verzeichnis (Desktop) und Dateiname mit Endung
Dim ListenThread As System.Threading.Thread = New System.Threading.Thread(AddressOf ListenSub)
ListenThread.IsBackground = True
ListenThread.Start()
End Sub
Private Sub ListenSub()
Dim server As New TcpListener(IPAddress.Any, 1300)
server.Start()
Try
While True
Dim c As TcpClient = server.AcceptTcpClient
Dim s As NetworkStream = c.GetStream
FileOpen(1, filePath, OpenMode.Binary)
Dim buffer(1024 - 1) As Byte
Do While True
Dim bytesRead As Integer = s.Read(buffer, 0, buffer.Length)
If bytesRead = 0 Then Exit Do
FilePut(1, buffer)
Loop
FileClose(1)
s.Close()
c.Close()
End While
Catch ex As Exception
MsgBox("Ein Übertragungsfehler ist aufgetreten.):" & vbCr & ex.ToString, MsgBoxStyle.Critical, "Error")
End Try
End Sub
'Datei empfangen Code ende
*Topic verschoben*
ich habe folgendes Problem. und zwar habe ich es geschafft Dateien per TCP IP zu verschicken, allerdings wird weder name noch Dateityp mitgeliefert. hier mein Quellcode:
'Datei senden
Private Sub btn_Datei_senden_Click(sender As System.Object, e As System.EventArgs) Handles btn_Datei_senden.Click
filepath2 = txt_Dateipfad.Text
Dim sendThread As New System.Threading.Thread(AddressOf sendSub)
sendThread.IsBackground = True
sendThread.Start()
End Sub
Private Sub sendSub()
Dim cli As New TcpClient
cli.Connect(IP_txt.Text, 1300)
Try
Dim nstm As Stream = cli.GetStream()
Dim fstm As Stream = New FileStream(filepath2, FileMode.Open, FileAccess.Read)
Dim buffer(1024 - 1) As Byte
Do While True
Dim bytesRead As Integer = fstm.Read(buffer, 0, buffer.Length)
If bytesRead = 0 Then Exit Do
nstm.Write(buffer, 0, bytesRead)
nstm.Flush()
Loop
cli.Close()
nstm.Close()
fstm.Close()
MsgBox("Die Datein wurde erfolgreich gesendet.", MsgBoxStyle.Exclamation, "Gesendet")
Invoke(New nan(AddressOf closeAll), New Object() {})
Catch ex As Exception
MsgBox("Ein Übertragungsfehler ist aufgetreten:" & vbCr & ex.ToString, MsgBoxStyle.Critical, "Error")
End Try
End Sub
'Datei senden
'Datei empfangen Anfang Code
filePath = My.Computer.FileSystem.SpecialDirectories.Desktop & "\ChatDownload" 'Verzeichnis (Desktop) und Dateiname mit Endung
Dim ListenThread As System.Threading.Thread = New System.Threading.Thread(AddressOf ListenSub)
ListenThread.IsBackground = True
ListenThread.Start()
End Sub
Private Sub ListenSub()
Dim server As New TcpListener(IPAddress.Any, 1300)
server.Start()
Try
While True
Dim c As TcpClient = server.AcceptTcpClient
Dim s As NetworkStream = c.GetStream
FileOpen(1, filePath, OpenMode.Binary)
Dim buffer(1024 - 1) As Byte
Do While True
Dim bytesRead As Integer = s.Read(buffer, 0, buffer.Length)
If bytesRead = 0 Then Exit Do
FilePut(1, buffer)
Loop
FileClose(1)
s.Close()
c.Close()
End While
Catch ex As Exception
MsgBox("Ein Übertragungsfehler ist aufgetreten.):" & vbCr & ex.ToString, MsgBoxStyle.Critical, "Error")
End Try
End Sub
'Datei empfangen Code ende
*Topic verschoben*
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()