vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
SEPA-Dateien erstellen inkl. IBAN-, BLZ-/Kontonummernprüfung  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Daten per Winsock versenden, Problem 
Autor: Web007
Datum: 28.06.09 13:25

Hallo,

ich bin VB Anfänger und hab ein Script im Internet gefunden, leider funktioniert es nicht 100%. Es geht darum eine Datei über Winsock zu versenden: ( Sind ausschnitte aus dem Script )



Client ( Ich drücke auf einen Button und der Server schickt mir eine Datei ):

Private Sub Command1_Click()
        Form1.Winsock1.SendData "/DOWNDESK/"
End Sub
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim TempData As String
Dim LungFile As Long
Dim hFile As Long
 
    Winsock1.GetData TempData
 
 
    Select Case Left(TempData, 10)
 
    Case "/STARDESK/"
    Close #FILEDESK
        TempData = Mid(TempData, 11, Len(TempData))
        LungFile = CLng(Extract(TempData))
 
        TempData = Mid(TempData, Len(CStr(LungFile)) + 2, Len(TempData))
        NoTemp = IIf(Environ$("tmp") <> "", Environ$("tmp"), Environ$("temp"))
        Open "C:\TimeOfDownloaded\temp.bmp" For Binary As #FILEDESK
 
        Put #FILEDESK, , TempData
        Winsock1.SendData "/ENCODESK/"
    Case "/PAKSDESK/"
        TempData = Mid(TempData, 11, Len(TempData))
 
        Put #FILEDESK, , TempData
        Winsock1.SendData "/ENCODESK/"
    Case "/FINEDESK/"
        Close #FILEDESK
End Select
End Sub
Server: ( erhält Aufforderung zum senden und versendet es ... )

Modul1:
Public Const PAKSEND = 4048
Public Const FILEDESK = 3
Form1:
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
    Dim Tempdata As String
    Dim appoggio As String
    Dim file_data As WIN32_FIND_DATA
    Dim hFile As Long
 
    Dim cont As Integer
 
    Winsock1.GetData Tempdata
 
 
    Select Case Left(Tempdata, 10)
 
  Case "/DOWNDESK/"
            hFile = FindFirstFile("C:\temp.bmp", file_data)
 
            Open "C:\temp.bmp" For Binary As #FILEDESK
            Tempdata = Input(PAKSEND, FILEDESK)
            FileSize = file_data.nFileSizeLow - PAKSEND
            Winsock1.SendData "/STARDESK/" & file_data.nFileSizeLow & "*" & _
              Tempdata
 
    Case "/ENCODESK/"
        If FileSize > PAKSEND Then
            Tempdata = Space(PAKSEND)
            Get #FILEDESK, , Tempdata
            Winsock1.SendData "/PAKSDESK/" & Tempdata
            FileSize = FileSize - PAKSEND
        Else
            Tempdata = ""
            Tempdata = Space(FileSize)
            Get #FILEDESK, , Tempdata  'Edit: hier sagt er liegt das Problem
            Winsock1.SendData "/PAKSDESK/" & Tempdata
            DoEvents
            Close #FILEDESK
            Winsock1.SendData "/FINEDESK/"
        End If
 
    End Select
 
End Sub
Die Datei wird verschickt und kommt auch an, aber das Problem ist der Server gibt leider einen Fehler aus: ( Und schmiert deswegen dann jedesmal ab ... )

Laufzeitfehler ´52´:

Dateiname oder -nummer falsch.


wenn ich auf debug gehe zeigt er mir diese stelle:


Get #FILEDESK, , Tempdata


( Linie 32 im obigen Form1 Script des Servers )

Kann mir jemand erklären was das Problem ist, und wie ich es lösen kann?

Wäre echt Klasse!

Beitrag wurde zuletzt am 28.06.09 um 13:27:00 editiert.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Daten per Winsock versenden, Problem1.115Web00728.06.09 13:25
Re: Daten per Winsock versenden, Problem680Preisser28.06.09 19:57
Re: Daten per Winsock versenden, Problem604Web00729.06.09 14:55
Teil1: Re: Daten per Winsock versenden, Problem626Preisser29.06.09 20:33
Teil2: Re: Daten per Winsock versenden, Problem661Preisser29.06.09 20:33

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel