Avatar billede peterlang Nybegynder
25. maj 2004 - 11:02 Der er 7 kommentarer og
1 løsning

FTP: opret sti + findes fil

Hej, jeg har lige sat en ftp server op, jeg har nu 3 problemmer.

1/ Hvordan ser man om en fil findes ?
2/ Hvor opretter man en sti, hvis den ikke findes ?
3/ Hvordan sletter man en mappe med hele dens indhold ?

FilFra="c:\1.gif"
FilTil="10\20\30\40\1.gif"

Inet1.Protocol = icFTP
Inet1.RemoteHost = "xxx.xxx.xx.xxx"
Inet1.RemotePort = "21"
Inet1.UserName = ""
Inet1.Password = ""
Inet1.Execute , "PUT " & FilFra & " " & FilTil


Peter Lang
Avatar billede peterlang Nybegynder
25. maj 2004 - 12:13 #1
Jeg har fundet ud af nogle at problemerne

DELETE file Deletes file
MKDIR dir1 Creates a directory
RMDIR dir1 Remove a directory


Men hvorfor kan ikke angive at en fil skal overskrives som standart hvis den findes ?
Hvorfor kan man ikke oprette en hel sti på en gang ?
Hvorfor kan kan ikke slette et biblotek med indhold ?

Peter Lang
Avatar billede martin_moth Mester
25. maj 2004 - 12:42 #2
Mht. det sidste, så kan den ftp der følger med win, og fx. ws_ftp,  heller ikke slette en hel mappe med indhold. Dette er måske ikke muligt at gøre via ftp....

Men du kan jo lave en funktion der gør det, looper over alle undermapper (CHDIR), sletter hver fil i hver undermappe (DELETE), fjerner undermapper (RMDIR) osv, indtil din overordnede mappe er tom.
Avatar billede peterlang Nybegynder
25. maj 2004 - 12:46 #3
Der må være en der har lavet alle disse funktioner før.

Jeg har ledt den sidste time på nettet (planetsourcecode osv) men har ikke fundet noget der kan bruges.

Er der en der har et link.

Peter Lang
Avatar billede martin_moth Mester
25. maj 2004 - 13:06 #4
Hvis du har ledt en hel time, kunne du måske have sparet tid ved at kode den selv i stedet for ;o)
Avatar billede peterlang Nybegynder
25. maj 2004 - 13:35 #5
Jo, men jeg ved ikke hvordan man checker om en fil/mappe findes.. og det skal jeg bruge.
Avatar billede sjh Nybegynder
25. maj 2004 - 14:35 #6
Sådan ser du alle file og dir i et dir, dir slutter med "\"

Private Sub Command1_Click()
  With Inet1
      .Cancel
      .Protocol = icFTP
      .URL = "ftp.microsoft.com" '<-- ftp til test
      .UserName = ""
      .Password = ""
      .Execute , "DIR"
  End With
End Sub

Private Function ChunkData(Size As Long) As String
Dim strData As String
  Do: DoEvents
    strData = Inet1.GetChunk(Size, icString)
      If Len(strData) = 0 Then
        Exit Do
      End If
    ChunkData = (ChunkData & strData)
  Loop
End Function

Private Sub Inet1_StateChanged(ByVal State As Integer)
  If State = icResponseCompleted Then
    'Her kommer Dir og File ud..
    Text1.Text = ChunkData(vbDirectory)
  End If
End Sub
Avatar billede sjh Nybegynder
25. maj 2004 - 14:45 #7
Jeg fandt lige noget her:
http://www.visualbasicforum.com/showthread.php?s=f043f3b965766ea75167f6c045776b48&p=735548#post735548

ved dog ikke om det virker men prøv. (PÅ EN FTP HVOR DU HAR ADGANG TIL AT SLETTE FILER OG MAPPER) ;)


Private Sub cmdDELETE_Click()
  ' Delete the directory in txtRemotePath.
  Inet1.Execute txtURL.Text, "DELETE " & _
  txtRemotePath.Text
End Sub
Avatar billede peterlang Nybegynder
31. maj 2004 - 01:44 #8
Jeg har opgivet at bruge Inet

Men har fundet noget jeg kunne bruge på:

http://www.eksperten.dk/spm/184239

Men tak for hjælpen
Peter Lang
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester