Autor Beitrag
mausi123
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 19



BeitragVerfasst: Mi 31.10.07 11:54 
Hallo again, ich versuchen einen bestimmten String in einer Textdatei zu ersetzen. Dies gelingt mir jedoch nicht, FM lautet: Incompatible types: 'string' and 'TStringList'.

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
procedure TForm1.Button2Click(Sender: TObject); 
var
  sl:TStringList;
   i:integer;
begin
  sl:=TStringList.create;
  sl.LoadFromFile('d:\muh.txt');

  for i:=0 to sl.Count-1 do 
 
// console output, hier eher unwichtig - nur zur info
  ExecAndGetConsoleOutput('c:\windows\system32\cmd.exe','/c '+ edit1.Text+ ' > d:\muh.txt' ,sl);

  // ersetze.. HIER ist der Wurm dring!
  StringReplace(sl,'NET USE Y:', 'echo NET USE Y:',[rfReplaceAll, rfIgnoreCase]);
 
 sl.SaveToFile('d:\muh.txt');

 sl.Free;
end;


------------------------

habe testeshalbe einen anderen code diesbezüglich probiert.
da heißt die FM lautet: Incompatible types: 'TReplaceFlags' and 'Enumeration'.

function StringReplace(const S, OldPattern, NewPattern: string; Flags: TReplaceFlags): string;

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
procedure TForm1.Button2Click(Sender: TObject);  // console output.. + string ersetzen
var
  sl :TStringList;
  i : integer;
begin
  sl:=TStringList.create;    // console output
  ExecAndGetConsoleOutput('c:\windows\system32\cmd.exe','/c '+ edit1.Text+ ' > d:\muh.txt' ,sl);
 // sl.Free;

// String ersetzen
sl.LoadFromFile('d:\muh.txt'); 
for i:=0 to sl.Count-1 do            
        // hier ist der fehler..
stringreplace(sl[i], 'NET USE Y: ', 'echo NET USE Y: ', rfReplaceAll, rfIgnoreCase);

sl.SaveToFile('d:\muh.txt');
sl.free;
end;



thx im voraus^^

Moderiert von user profile iconjasocul: Delphi-Tags hinzugefügt


Zuletzt bearbeitet von mausi123 am Mi 31.10.07 15:52, insgesamt 1-mal bearbeitet
elundril
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3747
Erhaltene Danke: 123

Windows Vista, Ubuntu
Delphi 7 PE "Codename: Aurora", Eclipse Ganymede
BeitragVerfasst: Mi 31.10.07 14:06 
user profile iconmausi123 hat folgendes geschrieben:

habe testeshalbe einen anderen code diesbezüglich probiert.
da heißt die FM lautet: Incompatible types: 'TReplaceFlags' and 'Enumeration'.

function StringReplace(const S, OldPattern, NewPattern: string; Flags: TReplaceFlags): string;

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
procedure TForm1.Button2Click(Sender: TObject);  // console output.. + string ersetzen
var
  sl :TStringList;
  i : integer;
begin
  sl:=TStringList.create;    // console output
 liste := TStringlist.Create;
  ExecAndGetConsoleOutput('c:\windows\system32\cmd.exe','/c '+ edit1.Text+ ' > d:\muh.txt' ,sl);
 // sl.Free;

// String ersetzen
sl.LoadFromFile('d:\muh.txt'); 
for i:=0 to sl.Count-1 do            
        // hier ist der fehler..
stringreplace(liste[i], 'NET USE Y: ', 'echo NET USE Y: ', rfReplaceAll, rfIgnoreCase);

sl.SaveToFile('d:\muh.txt');
sl.free;
end;



thx im voraus^^

Moderiert von user profile iconjasocul: Delphi-Tags hinzugefügt


wenn du auf den unterstrichenen teil schaust, dann siehst du vl. das du die eckigen klammern vergessen hast, dann sollte es eigentlich funzen!

lg elundril

_________________
This Signature-Space is intentionally left blank.
Bei Beschwerden, bitte den Beschwerdebutton (gekennzeichnet mit PN) verwenden.
mausi123 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 19



BeitragVerfasst: Mi 31.10.07 15:51 
user profile iconmausi123 hat folgendes geschrieben:
Hallo again, ich versuchen einen bestimmten String in einer Textdatei zu ersetzen. Dies gelingt mir jedoch nicht, FM lautet: Incompatible types: 'string' and 'TStringList'.

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
procedure TForm1.Button2Click(Sender: TObject); 
var
  sl:TStringList;
   i:integer;
begin
  sl:=TStringList.create;
  sl.LoadFromFile('d:\muh.txt');

  for i:=0 to sl.Count-1 do 
 
// console output, hier eher unwichtig - nur zur info
  ExecAndGetConsoleOutput('c:\windows\system32\cmd.exe','/c '+ edit1.Text+ ' > d:\muh.txt' ,sl);

  // ersetze.. HIER ist der Wurm dring!
  StringReplace(sl,'NET USE Y:', 'echo NET USE Y:',[rfReplaceAll, rfIgnoreCase]);
 
 sl.SaveToFile('d:\muh.txt');

 sl.Free;
end;


------------------------

habe testeshalber einen anderen code diesbezüglich probiert.
da heißt die FM: Incompatible types: 'TReplaceFlags' and 'Enumeration'.

function StringReplace(const S, OldPattern, NewPattern: string; Flags: TReplaceFlags): string;

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
procedure TForm1.Button2Click(Sender: TObject);  // console output.. + string ersetzen
var
  sl :TStringList;
  i : integer;
begin
  sl:=TStringList.create;    // console output
 liste := TStringlist.Create;
  ExecAndGetConsoleOutput('c:\windows\system32\cmd.exe','/c '+ edit1.Text+ ' > d:\muh.txt' ,sl);
 // sl.Free;

// String ersetzen
sl.LoadFromFile('d:\muh.txt'); 
for i:=0 to sl.Count-1 do            
        // hier ist der fehler..
stringreplace(liste[i], 'NET USE Y: ', 'echo NET USE Y: ', rfReplaceAll, rfIgnoreCase);

sl.SaveToFile('d:\muh.txt');
sl.free;
end;



thx im voraus^^

Moderiert von user profile iconjasocul: Delphi-Tags hinzugefügt
mausi123 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 19



BeitragVerfasst: Mi 31.10.07 15:57 
Danke für den Hinweis! Ich meine, dass ich es mit Klammern bereits ausprobiert hatte.. bin mir aber net sicher.. habe so viel code getestet! werds also später mal testen, sobald ich zu hause bin^^