Einzelnen Beitrag anzeigen

Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.757 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: EIdSocketError

  Alt 3. Jan 2011, 19:40
Römerhelm -> siehe Anhang.

Delphi-Quellcode:
begin
  ProgDir:=GetCurrentDir();
  WPfad:= ProgDir;
  IdHTTP1:=TIdHTTP.Create; // Hier wird ein Element vom Typ IdHTTP erzeugt
  configuration:=TIniFile.Create(ProgDir+'\config.ini');
  LoN:=configuration.readstring('Serverdaten','Usern ame',''); //Einlesen von Username und Passwort
  LoP:=configuration.readstring('Serverdaten','Passw ord','');

  Repeat

    ipaddr:=''; // Hiermit wird sichergestellt, dass ipaddr nicht vorher
    // beschrieben wurden
    try
      ipseitestr:=IdHTTP1.Get('http://www.wieistmeineip.de/');
      // der Quelltext von "www.wieistmeineip.de" wird in ein string geschrieben
      // Dieser String wird im folgenden nach Anfangs- und Endzeichen durchsucht.
      anfang:=ansipos('"ip">',ipseitestr)-5; //IdHTTP1.Get('http://www.wieistmeineip.de/'))+5;
      ende:=ansipos('</h1>',ipsietestr)-1; //IdHTTP1.Get('http://www.wieistmeineip.de/'))-1;
      Uhrzeit:=timetostr(gettime); //Ausgabe der Uhrzeit
      Datum:=datetostr(date()); // Ausgabe des Datums
      for i:=0 to (ende-anfang) do // Schreiben der IP-Adresse
        ipaddr:=ipaddr+ipseitestr[anfang+i];
      // Hier wird eine INI Datei erstellt.
      ini:=TIniFile.Create(ProgDir+'\AktuelleIP.txt');
      try
        ini.writestring('MessrechnerIP','Datum',Datum);
        ini.writestring('MessrechnerIP','Uhrzeit',Uhrzeit) ;
        ini.writestring('MessrechnerIP','Adresse',ipaddr);

      finally
        ini.free;
      // ---------- hier würde ich ein "end;" setzen
      
      FillChar(SEInfo, SizeOf(SEInfo), 0); //Auffüllen von SEInfo und dessen Größe mit 0
      SEInfo.cbSize:=SizeOf(TShellExecuteInfo);
      with SEInfo do
        begin
          fMask:=SEE_MASK_NOCLOSEPROCESS;
          wnd:=Application.Handle;
          lpVerb:=PChar('open');
          lpFile:=PChar(ProgDir+'\psftp.exe');
          lpParameters:=PChar('-l '+LoN+' -pw '+LoP+' server -batch -b PutDatei.txt');
          lpDirectory:=PChar(WPfad);
          nShow:=SW_HIDE;
        end;
      ShellExecuteEx(@SEInfo);
   // end;
      sleep(60000);
    except
      on E: EIdException do begin
        sleep(60000);
      end;
   // zu welchem try gehört das?
   // on E: Exception do begin
   // sleep(60000);
   // end;
   //end;
  Until False;
end.
Miniaturansicht angehängter Grafiken
roemerhelm.jpg  
Klaus

Geändert von Klaus01 ( 3. Jan 2011 um 19:51 Uhr)
  Mit Zitat antworten Zitat