Einzelnen Beitrag anzeigen

Nisbo

Registriert seit: 10. Mär 2005
191 Beiträge
 
Delphi 5 Standard
 
#4

Re: Delphi 5 Standard + Indy 10 --> IdHTTP1.Get Problem

  Alt 25. Apr 2005, 17:36
OK erstmal habe ich hier noch weitere Infos gefunden:
http://www.dev-center.de/index.php?c...ing&printing=1

jetzt mal zu dem was ich versucht habe

Datei --> Neu --> Thread-Objekt
Als Name habe ich bildupdate vergeben und das ganze schaut dann als Unit3 so aus:

Delphi-Quellcode:
unit Unit3;

interface

uses Classes;

type
  bildupdate = class(TThread)
  private
    { Private-Deklarationen }
  protected
    procedure Execute; override;
  end;

implementation

procedure bildupdate.Execute;
begin
  if internal_loop = 0 then
    begin
      DestFile := ExtractFilePath(ParamStr(0)) + 'temp.jpg';
      Image1.Picture := nil;

      stream := TFileStream.Create(DestFile, fmCreate);
      try
         IdHTTP1.Get(SourceFile, stream);
      except
         Timer2.Enabled := false;
         ShowMessage('Verbindungsfehler!');
      end;
      stream.Free;
      if Timer2.Enabled then Image1.Picture.LoadFromFile(PChar(DestFile));
    end
  else
   begin
    // Lokal --> nicht über Internet
    AviCap.CopyToClipboard;
    Image1.picture := nil;
    Image1.Picture.Bitmap.Assign(Clipboard);
   end;
end;

end.
in der Unit1, der HauptUnit schaut die Prozedur zum aufrufen so aus:
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var SourceFile, DestFile : string;
stream: TFileStream;
var
  Thread: bildupdate;
begin
  if dieurl = 'then exit else SourceFile := dieurl;
  if dieurl = 'then exit;

  if Timer2.Enabled = false then Timer2.Enabled := True;

  ToolButton9.Enabled := true;
  ToolButton10.Enabled := true;

  // Thread-Bereich
  Thread := bildupdate.Create(True);
  Thread.FreeOnTerminate := True;
  Thread.Terminate;
end;
in der Unit1 der HauptUnit habe ich Unit3 mit der ThredSache in den uses mit eingebunden
das Problem ist jetzt das beim compilen z.b. die globale variabel "internal_loop" nicht bekannt ist
un dich in der Unit3 nicht noch die Unit1 mit einbinden kann

wie bekomme ich das denn jetzt hin das dort auch alle variabeln eingabefelder usw bekannt sind ?
Jens
  Mit Zitat antworten Zitat