AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Upload per FTP

Ein Thema von Delphi08 · begonnen am 10. Dez 2008 · letzter Beitrag vom 14. Dez 2008
Antwort Antwort
Seite 1 von 2  1 2      
Delphi08

Registriert seit: 2. Mai 2008
28 Beiträge
 
Delphi 7 Enterprise
 
#1

Upload per FTP

  Alt 10. Dez 2008, 20:45
Hi,
ich will, dass mein Programm bei jedem Start eine bestimmte Datein in einen Ordner meines FTP-Servers hochläd.
Nunja dazu muss man sagen, ich bin Anfänger was das Ganze nicht einfacher macht
Ich weiß, ich sollte mit kleineren Dingen anfangen, aber des tu ich auch .
Bloß hierbei brauch ich dann doch eure Hilfe, das Programm an sich ist recht klein und simpel, bloß will ich eben, dass es nebenbei noch per FTP eine Datei hochläd.

Wie mache ich sowas?
Ein einfacher Quellcode/Seite würde mir auch reichen =)
Also es muss wirklich nur die Verbindung zum Server hergestellt, und eine Datei hochgeladen werden. Mehr eigentlich nicht.

Danke
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Upload per FTP

  Alt 10. Dez 2008, 20:47
Schau dir doch die Beispiele deiner Netzkomponentensammlung deiner Wahl an, da sollte was Brauchbares dabei sein
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von ascotlx
ascotlx

Registriert seit: 8. Mär 2005
Ort: Hamburg
97 Beiträge
 
Delphi 7 Professional
 
#3

Re: Upload per FTP

  Alt 10. Dez 2008, 20:59
Hallo Delphi08,

ich habe mich auch schwer getan mit diesen Dingen. Fertiger Code hilft Dir aber nicht wirklich.
Ein nettes Tutorial kann da Wunder wirken, sollte man kein Buch zu Hand haben.
Probier's doch mal mit Google: "delphi ftp upload"
Da kommt schon eine Menge, oder hiermit:
Indy Tutorial

Gruss

ein mitleidender ;O)
workarounds gibt es wie Sand am Meer und manchmal hat man ein workaround ohne es zu wissen
  Mit Zitat antworten Zitat
Benutzerbild von sx2008
sx2008

Registriert seit: 15. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#4

Re: Upload per FTP

  Alt 11. Dez 2008, 05:11
Wenn es einfach sein darf, dann kann man auch die ftp.exe von Windows ansteuern.
Man gibt mit dem Parameter -s eine Steuerdatei mit.
Die Steuerdatei sieht z.B. so aus:
Code:
open ftp.myserver.de
user admin
pass geheim
cd /upload
put C:\temp\bericht2008.pdf
bye
Diese Steuerdatei ist mit Hilfe eines TStringList Objekts sehr schnell und einfach erstellt.
Dann nur noch den Windows Systempfad ermitteln und ftp.exe mit ShellExecute starten.

Noch interessanter wird es, wenn man WinSCP von Aussen fernsteuert.
Dann kann man auch schwierige Dinge wie z.B. FTP über Proxyserver oder Secure-FTP in den Griff bekommen.
Natürlich muss dann WinSCP installiert sein.
  Mit Zitat antworten Zitat
Delphi08

Registriert seit: 2. Mai 2008
28 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: Upload per FTP

  Alt 11. Dez 2008, 15:09
Versteh ich nicht ganz, sprich ich rufe ftp.exe dann so auf, oder?

WinExec(PChar('C:\WINDOWS\system32\ftp.exe -s'), SW_SHOWNORMAL); s ist vom Typ TStringList oder?

Wie schreibe ich die Steuerbefehle in s?

Delphi-Quellcode:
open ftp.myserver.de
user admin
pass geheim
cd /upload
put C:\temp\bericht2008.pdf
bye
  Mit Zitat antworten Zitat
Berlinermauer

Registriert seit: 3. Okt 2007
Ort: 0x0000
213 Beiträge
 
Delphi 7 Personal
 
#6

Re: Upload per FTP

  Alt 11. Dez 2008, 15:23
nimm wie schon empfohlen die Indys,

da kannste ganz einfach einen ftp ansteuern, musst nicht auf die sys32 kompos vertrauen,
und man kann nicht auslesen, wie die daten sind, da du dafür funktionen gibt.

Jedoch solltest du wissen, dass man jedoch ganz einfach mit ner firewall/nem Sniffer, die daten abrufen kann, also mach nen extra user in n extra ordner der nur writerechte hat
Marc S.
  Mit Zitat antworten Zitat
Larsi

Registriert seit: 10. Feb 2007
2.262 Beiträge
 
Delphi 2007 Professional
 
#7

Re: Upload per FTP

  Alt 11. Dez 2008, 15:39
http://www.delphipraxis.net/internal...&highlight=ftp
Ein Tag ohne Delphi ist ein verlorener Tag!

Homepage zu meinem neuen Programm: StreamZ
  Mit Zitat antworten Zitat
Delphi08

Registriert seit: 2. Mai 2008
28 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: Upload per FTP

  Alt 11. Dez 2008, 16:45
Zitat von Larsi:
http://www.delphipraxis.net/internal_redirect.php?t=88375&highlight=ftp
Genau sowas habe ich gesucht.
Funktioniert auch super =) Also die Datei finde ich dann auch wirklich im richtigen FTP Verzeichnis.
jetzt kommt das große ABER, ich bekomme vom Debugger die Meldung "Zugriffsverletzunge bei 0xfeeefeee: Lesen" (-> Programm beenden).

Will ich das Programm nochmals aufrufen, so klappt dies nicht, manch eine andere .exe funktiert bis zum nächsten Neustart auch nicht mehr.

Was ich eben bei Wiki gefunden habe war folgendes
Zitat:
Used by Microsoft's HeapFree() to mark freed heap memory
->
Zitat:
Wird von HeapFree() verwendet um freigegebenen Speicher zu kennzeichnen.
Allerdings weiß ich nicht wirklich viel mit anzufangen, geschweige denn, warum ich wohl der einzige bin der dieses Problem bei "FtpPutFile" hat.
  Mit Zitat antworten Zitat
hsbc

Registriert seit: 28. Jan 2004
Ort: Krems/Donau
404 Beiträge
 
Delphi 7 Professional
 
#9

Re: Upload per FTP

  Alt 12. Dez 2008, 10:22
Hallo,

vielleicht liegt es daran, dass das Handle hOpen nicht geschlossen wurde?

Versuche mal, hinter dem

InternetCloseHandle(hconnect);

noch

InternetCloseHandle(hopen);

einzufügen.

mfg
Herbert
  Mit Zitat antworten Zitat
Delphi08

Registriert seit: 2. Mai 2008
28 Beiträge
 
Delphi 7 Enterprise
 
#10

Re: Upload per FTP

  Alt 12. Dez 2008, 14:05
hab ich eben versucht, aber der Fehler tritt immer noch auf.
Delphi kann wohl das Programm nicht beenden, muss immer erst komplett aus Delphi raus.

Hab es mal als Konsolenanwendung ausgelagert.
Ruf ich es nach dem Absturz erneut auf, bekomm ich nur noch den schwarzen Kasten, keinen Error mehr, sondern das Programm hängt sich einfach auf.

Gehe ich mit dem Debugger durch das Programm, so muss der Fehler wohl in dieser Zeile liegen:

  hconnect := InternetConnect(hopen, pchar(server), port, pchar(username), pchar(password), INTERNET_SERVICE_FTP, INTERNET_FLAG_PASSIVE, 0); Denn ab hier geht nichts mehr.

Mein Aufruf sieht wie folgt aus:

putfile('meinserver.de', 'meinBenutzer', 'dasPasswort', 'C:\loewe.jpg', '/Test/loewe.jpg'); Verzeichnis "Test" existiert auf dem Server, und nach dem 1. ausführen ist es auch dort zu finden. Also dürfen die Parameter eigentlich stimmen.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:06 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz