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

Fortgeschrittene Programmierung
Upload einer Datei 
Autor: Patti
Datum: 11.07.03 14:44

Hi,

Will eine Datei auf mein Server Uploaden und habe dazu denn Code aus den Tipps und Tricks genommen.
Verbinden klappt.
Nur bei Uload happerts.

Hier mein Problem:
Erst mal der Code:
' Datei "uploaden"
Friend Function UploadFile(ByVal LocalFile As String, _
  ByVal ServerFile As String, _
  Optional ByVal StartUploadAt As Long = 0)
 
  Dim TmpPort As Long
  Dim TmpPortStr As String
  Dim SendBuff As String
 
  ' Servermodus auf Binär stellen
  If SendCommand(OvermitBinary, CommandOk, CommandOk, _
    CommandFail) = False Then Exit Function
 
NewUniquePort:
  ' Port öffnen (für das Senden der Daten)
   TmpPort = 0
 
  ' Neuen Port ermitteln
  Call GetNewPort(TmpPort, TmpPortStr)
 
  ' Neuen Port öffnen
  With DownSock
    .Close
    .LocalPort = TmpPort
    .Listen
  End With
 
  ' neu geöffneten Port dem Server mitteilen
  If SendCommand(SetPort & TmpPortStr, CommandOk, CommandOk, _
    CommandFail, 0&, "Neuer Port geöffnet") = False Then
    Exit Function
  End If
 
  ' Upload-Startposition setzen
  SendCommand ResumeTransfere & StartUploadAt, _
    ResumingSupportet, CommandOk, CommandNotImplemented
 
  ' Progressbar einstellen
  ' siehe Workshop-Projekt
 
  ' lokale Datei öffnen
  FFile = FreeFile
  Open LocalFile For Binary As FFile
  Seek #FFile, StartUploadAt + 1
 
  ' Anfrage an Server senden
  TAbort = False
  TotalBytes = LOF(FFile)
  OvermittedBytes = StartUploadAt
  If SendCommand(Upload & ServerFile, TransferStart, _
    TransferStart, PermissionDenied) = False Then
 
    ' Zugriff verweigert (auf der Server-Seite)
 
    Exit Function
  End If
 
    ' Warten bis die Datenleitung verbunden ist
  Dim TimeOut As Long
  TimeOut = GetTickCount + 1000 * ConnectTimeOut
  Do
    DoEvents
  Loop Until DownSock.State = sckConnected Or _
    TimeOut < GetTickCount / 1000
 
  ' TimeOut überschritten!
  If DownSock.State <> sckConnected Then Exit Function
 
 
  ' Alle Daten senden und warten bis die Daten den
  ' Server erreichen
  PacketSend = True
  Do
    DoEvents
 
    ' Wenn vorheriges Päckchen beim Server ist,
    ' neues Daten-Päckchen senden
    If PacketSend = True And _
      OvermittedBytes <> TotalBytes Then
 
      ' Puffergröße festlegen
      If TotalBytes - OvermittedBytes < SendBufferLenght Then
        SendBuff = Space(TotalBytes - OvermittedBytes)
      Else
        SendBuff = Space(SendBufferLenght)
      End If
 
      ' Übertragene Bytes aufaddieren
      OvermittedBytes = OvermittedBytes + Len(SendBuff)
 
 
 
      ' Daten aus der Datei lesen
      Get #FFile, , SendBuff
 
      ' Daten an den Server schicken
      If TAbort = True Then Exit Do
      PacketSend = False
      DownSock.SendData SendBuff
    End If
  Loop Until TotalBytes = OvermittedBytes And PacketSend = True
   MsgBox ("Daten gesendet")
  ' Socket schließen
  DownSock.Close
  SendCommand "", TransferComplete, TransferComplete, -1&
 
  ' Für den nächsten Down-/Upload zurücksetzen
  OvermittedBytes = 0
  TotalBytes = 0
 
  ' Datei schließen
  If FFile <> -1 Then
    Close FFile
    FFile = -1
  End If
 
  ' Falls abgebrochen wurde
  If TAbort = True Then
 
  End If
 
  ' Falls die Verbindung zur Datenleitung nicht
  ' aufgebaut werden konnte, nochmals versuchen
  If LastServerCmd = DataConnectionError Then GoTo NewUniquePort
End Function
So jetzt das Problem Bei dem Punkt "Warten bis Datenleitung verbunden" bleibt er stehen.
Er macht ab da nichts mehr.
Vielleicht weiß jemand was für ein Fehler ich mache oder an was es liegen könnte.

Wäre um jeden Beitrag dankbar.
Im Voraus Danke.

Mfg Patrick Hennig
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Upload einer Datei107Patti11.07.03 14:44

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