Einzelnen Beitrag anzeigen

Benutzerbild von TheGame1492
TheGame1492

Registriert seit: 31. Jul 2004
Ort: Berlin
84 Beiträge
 
Delphi XE2 Professional
 
#1

Variablenübergabe Createthread verständnisproblem

  Alt 19. Jan 2008, 21:36
ahoi

Ich möchte einfach 5 Zahlen/Strings in eine Datei (test.txt) schreiben, wobei jede Zahl/String durch einen eigenen Thread in diese Datei geschrieben werden soll.

Hier mein Versuch:

Delphi-Quellcode:

procedure TForm1.Button1Click(Sender: TObject);

  function WriteStringInFile( p: pchar ):integer; stdcall;
  var
    f: textfile;
  begin
    AssignFile( f, 'test.txt' );
    Append(f);
    writeln( f, p );
    CloseFile(f);
  end;
var
  s: string;
  i: integer;
  TID: DWORD;
begin
  for i:=0 to 4 do
  begin
   s := IntToStr( i );
   TID := 123+i;
   CreateThread(nil, 0, @WriteStringInFile, pchar(s), 0, tid);
  end;
end;
Das Ergebnis in der Datei ist leider immer:

4
3
4
3
4


Wo liegt mein Fehler?
  Mit Zitat antworten Zitat