![]() |
automatisches verschicken einer datei
hi,
versuche gerade ein prog zu coden welches automatisch eine log datei aller std. auf ein server transferiert. den timer hab ich gesetzt, steht auf false soll aber beim programm start auf true gesetzt werden. meine frage jetzt ist form.create richtig um den timer bei programmstart auf true zusetzen??? versenden geht auch noch nicht so recht :( wie sag ich den prog das er die datei aus dem ordner nehmen soll wo das prog selber drin liegt, ohne über ein button zu gehen.
Delphi-Quellcode:
danke schonmal für eure hilfe :)
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, IdBaseComponent, IdAntiFreezeBase, IdAntiFreeze, ExtCtrls, IdComponent, IdTCPConnection, IdTCPClient, IdFTP, StdCtrls; type TForm1 = class(TForm) Timer1: TTimer; IdAntiFreeze1: TIdAntiFreeze; IdFTP1: TIdFTP; Label1: TLabel; procedure Timer1Timer(Sender: TObject); procedure FormCreate(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; Timer1: TTimer; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); begin timer1.enabled := true; end; procedure TForm1.Timer1Timer(Sender: TObject); begin IdFTP1.Host := '192.168.0.1'; IdFTP1.Username := 'paul'; IdFTP1.Password := '20'; IdFTP1.Connect; IdFTP1.ChangeDir('/'); IdFTP1.Put('log.log'); IdFTP1.Quit; IdFTP1.Disconnect; end; end. mfg Paul |
Re: automatisches verschicken einer datei
hi paul
verständlich dass er die datei nicht schickt, er weiss ja nicht woher nehmen. wenn die datei wie beschrieben im gleichen ordner wie die exe liegt, kannst du folgendes verwenden:
Delphi-Quellcode:
damit bekommt idFTP den gesamten pfad deines log-files.
IdFTP1.Put(ExtractFilePath(paramstr(0)) + 'log.log')
zu deiner timer-frage (ich bin mir nicht ganz sicher wie du es meinst): du startest dein programm am morgen (oder sonst wann) und dann lässt du es den ganzen tag laufen? wenn ja, sollte das problem mit dem timer gar kein problem sein :). das müsste eigentlich funktionieren. gruss, dave |
Re: automatisches verschicken einer datei
hmmm
irgendwie versendet er immer noch nix. kann das eventuell am timer liegen?? mfg |
Re: automatisches verschicken einer datei
wie goch hast du den timer denn stehen?
Alex |
Re: automatisches verschicken einer datei
zum testen auf = interval:10
bei events - on timer = formcreate mfg |
Re: automatisches verschicken einer datei
das heisst alle 10ms?
Probier doch mal eine Minute oder 5 Minuten oder so... Vielleicht ist er einfach zu langsam um das zu verarbeiten... ;) MfG Florian :hi: |
Re: automatisches verschicken einer datei
versuchs doch mal so...
Delphi-Quellcode:
Gruß
procedure TForm1.FormCreate(Sender: TObject);
begin timer1.interval := 300000; timer1.enabled := true; end; procedure TForm1.Timer1Timer(Sender: TObject); begin IdFTP1.Host := 'ftp.domain.de'; IdFTP1.User := 'benutzername'; IdFTP1.Password := 'password'; IdFTP1.Connect; IdFTP1.ChangeDir('/'); IdFTP1.Put('c:\test.txt','test.txt'); IdFTP1.Quit; IdFTP1.Disconnect; end; Alex |
Re: automatisches verschicken einer datei
irgendwas stimmt nicht, der versendet immer noch nicht das files.
Code:
wie gesagt das file liegt im selben ordner wie das prog. das prog soll sich automatisch das file suchen und versenden.
procedure TForm1.Timer1Timer(Sender: TObject);
begin IdFTP1.Host := 'ip'; //IDFTP1.passive := false; IdFTP1.Username := 'user'; IdFTP1.Password := 'pass'; IdFTP1.Connect; IdFTP1.ChangeDir('/'); //IdFTP1.TransferType := ftBinary; IdFTP1.Put(ExtractFilePath(paramstr(0)) + 'log.log'); IdFTP1.Quit; IdFTP1.Disconnect; end; |
Re: automatisches verschicken einer datei
versuche mal:
Code:
[..]
IdFTP1.Put(ExtractFilePath(paramstr(0)) + 'log.log','log.log'); [..] |
Re: automatisches verschicken einer datei
Zitat:
Die Begründung habe ich mal gelesen aber leider wieder vergessen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:05 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz