Entwickler-Ecke

Internet / Netzwerk - Fehlermeldung bei verscuh auf server upzuloaden


sp992 - Mo 18.09.06 13:23
Titel: Fehlermeldung bei verscuh auf server upzuloaden
was hab ich falsch gemacht?
Beim upload gibt der immer eine fehlermeldung raus..
und das ist so ich habe in der upload.txt stehen, welche datein hochgeladen werden sollen, diese lädt der dann in ein stringgrid und geht dann immer 1 nach unten und erhält somit die datei namen und soll das dann hochladen.


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
153:
154:
155:
156:
157:
158:
159:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ComCtrls, IdBaseComponent, IdComponent,
  IdTCPConnection, IdTCPClient, IdFTP, ExtCtrls, Grids, Menus;

type
  TForm1 = class(TForm)
    Beschreibung: TRichEdit;
    Button1: TButton;
    ComboBox1: TComboBox;
    Memo1: TMemo;
    Button2: TButton;
    Memo2: TMemo;
    IdFTP1: TIdFTP;
    Button3: TButton;
    Timer1: TTimer;
    StringGrid1: TStringGrid;
    MainMenu1: TMainMenu;
    Datei1: TMenuItem;
    Beenden1: TMenuItem;
    N1: TMenuItem;
    ber1: TMenuItem;
    Update1: TMenuItem;
    Timer2: TTimer;
    Timer3: TTimer;
    Edit1: TEdit;
    procedure Button2Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Beenden1Click(Sender: TObject);
    procedure Update1Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure Timer2Timer(Sender: TObject);
    procedure Timer3Timer(Sender: TObject);

   // procedure Timer2Timer(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  filename: String;
  pos: Integer;
  erg: string;
  pos2: Integer;
  wait: Integer;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
Combobox1.Items.LoadFromFile('kurz.txt');
pos2 := 0;
stringgrid1.Cols[0].LoadFromFile('upload.txt');
filename := '';

end;



procedure TForm1.Button2Click(Sender: TObject);
begin
beschreibung.Lines.SaveToFile(combobox1.Text + '.txt');
memo2.Lines.LoadFromFile('kurz.txt');
memo2.Lines.Add(combobox1.Text);
memo2.Lines.SaveToFile('kurz.txt');
memo2.Lines.LoadFromFile('upload.txt');
memo2.Lines.Add(combobox1.Text);
memo2.Lines.SaveToFile('upload.txt');
button2.Visible := False;
combobox1.Items.LoadFromFile('kurz.txt');
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
try
Beschreibung.Lines.LoadFromFile(Combobox1.Text + '.txt');
except
Beschreibung.Lines.LoadFromFile('nichteingetragen.txt');
Button2.visible := True;
end;

end;
procedure TForm1.Beenden1Click(Sender: TObject);
begin
Application.terminate;
end;

procedure TForm1.Update1Click(Sender: TObject);
begin

memo2.Clear;
idftp1.Connect(True);
idftp1.Get('kurz.txt', extractfilename('kurz2.txt'), true);

stringgrid1.Cols[0].LoadFromFile('upload.txt');
timer2.enabled:=true;
timer3.enabled:=true;
if wait = 3 then
begin
memo2.Lines.SaveToFile('kurz.txt');
memo2.Clear;
timer3.Enabled := false;
end;



end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
if erg = '' then
begin
timer1.Enabled := false;
showmessage('Upload erfolgreich')
end
else


end;
{try

except
showmessage('Es ist ein Fehler bei der Verbingung aufgetreten'); }




procedure TForm1.Timer2Timer(Sender: TObject);
begin
stringgrid1.Cols[0].LoadFromFile('upload.txt');
erg := stringgrid1.Cells[0,pos2];
pos2 := pos +1;

if erg = '' then
begin
timer2.Enabled := false;
end
else
idftp1.Put(erg + '.txt', extractfilename(erg + '.txt'), True);


end;


procedure TForm1.Timer3Timer(Sender: TObject);
begin
wait := wait + 1
end;

end.


Moderiert von user profile iconraziel: Quote- durch Delphi-Tags ersetzt


Narses - Mo 18.09.06 13:48

Moin!

user profile iconsp992 hat folgendes geschrieben:
was hab ich falsch gemacht?

Funktioniert dein Programm? :gruebel: Nicht? :nixweiss: Dann würde ich mal raten: JA! :think: :rofl:

user profile iconsp992 hat folgendes geschrieben:
Beim upload gibt der immer eine fehlermeldung raus..

Exakte Fehlermeldung und Zeile im Code könnte helfen, gut dass du diese Infos vorsorglich weggelassen hast, sonst kämen wir ja schneller auf die Lösung. :roll: ;)

cu
Narses


sp992 - Mo 18.09.06 15:08

k.txt : Append/Restart not permitted try again


sp992 - Mo 18.09.06 15:09

außerdem hab ich gefragt was und nicht ob. dass ich einen gemacht habe ist mir schon klar, nur die frage bleibt welchen


jaenicke - Mo 18.09.06 15:18

Nimm in zeile 148 das True weg, wenn ich mich recht entsinne, war das nämlich der Parameter, der angibt, ob ggf. die neuen Daten an eine alte Datei angehängt werden sollen. Schreibst du False hin, wird eine existierende Datei überschrieben.

Ein anderes mögliches Problem: Muss man vor dem Put vielleicht auch connecten? (Das weiß ich im Moment einfach nicht auswendig, ob die Komponente das automatisch macht.)
Ansonsten: Welche Rechte hat die Datei auf dem Server? Normalerweise sollte das bei einem FTP-Zugriff egal sein, aber man weiß ja nie... Wenn die Datei die Rechte 000 hat, könnte auch der Zugriff per FTP Schwierigkeiten machen (jetzt nur als Beispiel ;-)).