AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi IdFTP.Put hängt bei externem Dateizugriff
Thema durchsuchen
Ansicht
Themen-Optionen

IdFTP.Put hängt bei externem Dateizugriff

Ein Thema von hsbc · begonnen am 9. Mär 2007 · letzter Beitrag vom 11. Mär 2007
Antwort Antwort
hsbc

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

IdFTP.Put hängt bei externem Dateizugriff

  Alt 9. Mär 2007, 11:31
Hallo allerseits,

ich lade per IdFTP.Put (Indy 10) Dateien auf den Server, was auch hervorragend funktioniert.

NUR: Wenn während des Hochladens die gleiche Datei von einem anderen Programm geändert wird, dann hängt Indy und kehrt nie wieder zurück.

Jetzt meine Frage: Gibt es eine Möglichkeit, mit der ich verhindern kann, dass während des Uploads kein weiterer Zugriff auf diese Datei möglich ist? Bzw. welche Möglichkeiten habe ich sonst noch, solch einen Absturz zu verhindern?

mfg
Herbert
  Mit Zitat antworten Zitat
IngoD7

Registriert seit: 16. Feb 2004
464 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: IdFTP.Put hängt bei externem Dateizugriff

  Alt 9. Mär 2007, 12:43
Ich kenne mich mit den möglichen (oder unmöglichen?) Sperrmechanismen von Windows und seinen Filesystemen nicht aus.

Eine Idee wäre aber vielleicht, kurz vor dem FTP.Put die Datei in ein Verzeichnis zu kopieren, von dem kein anderes Programm weiß und sie von dort upzuloaden.
  Mit Zitat antworten Zitat
hsbc

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

Re: IdFTP.Put hängt bei externem Dateizugriff

  Alt 10. Mär 2007, 07:11
Hallo Ingo,

ich habe deine Idee jetzt aufgegriffen und jeweils die zu übertragende Datei vor der Übertragung in eine temporäre kopiert und übertrage diese temporäre Datei. Funktioniert bis jetzt. Vielleicht kennt jemand doch noch eine elegantere Methode, eine Datei für die Zeit der Übertragung zu sperren.

mfg
Herbert
  Mit Zitat antworten Zitat
IngoD7

Registriert seit: 16. Feb 2004
464 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: IdFTP.Put hängt bei externem Dateizugriff

  Alt 11. Mär 2007, 12:55
Hallo Herbert,

Zitat von hsbc:
Vielleicht kennt jemand doch noch eine elegantere Methode, eine Datei für die Zeit der Übertragung zu sperren.
ich - wie gesagt - leider nicht. Somit ist das nachfolgende auch offtopic - aber dennoch:

Vielleicht ist es gar nicht so gut, die Datei zu sperren. Ich meine, wenn eine Datei immer wieder oder gar laufend von anderen Programmen benutzt wird (z.B. eine Log-Datei oder sowas), dann sollte man diese Programme doch möglichst nicht durch eine Dateisperre bei ihrer Arbeit behindern, oder? Da halte ich es tatsächlich für viel besser, eine "Momentaufnahme" dieser Datei zum Upload zwischenzuspeichern - also so, wie du's jetzt auch machst.
  Mit Zitat antworten Zitat
Antwort Antwort


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 09:12 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