AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Socketfehler 10061 tritt nur in bestimmten Fällen auf? oO
Thema durchsuchen
Ansicht
Themen-Optionen

Socketfehler 10061 tritt nur in bestimmten Fällen auf? oO

Offene Frage von "Svenkan"
Ein Thema von Svenkan · begonnen am 27. Sep 2008 · letzter Beitrag vom 28. Sep 2008
Antwort Antwort
Svenkan

Registriert seit: 10. Feb 2007
Ort: Bersenbrück
547 Beiträge
 
Delphi 7 Enterprise
 
#1

Socketfehler 10061 tritt nur in bestimmten Fällen auf? oO

  Alt 27. Sep 2008, 11:48
Hallo Leute!
Ein Anwender berichtet mir, dass er bei einem Upload den Socketfehler 10061 ausgegeben bekommt. Das seltsame an der Sache ist nur, dass dieser Fehler nur über einen bestimmten Menüpunkt auftritt, in dem folgendes ausgeführt wird:

Delphi-Quellcode:
  if userdef_upload_sch then
    TimerUpload.OnTimer(TimerUpload);
Läuft der Timer selbst durch, kommt es nicht zu dem genannten Problem. Das finde ich gerade mehr als nur merkwürdig. Habt ihr eine Ahnung woran das liegen könnte?


Hier nochmal der Upload-Timer (jetzt nicht über die Einrückungen und sowas aufregen^^ ich bin noch dabei das etwas zu optimieren, aber hier müsst ihr leider mit dieser Art vorlieb nehmen *g*)

Delphi-Quellcode:
procedure THauptform.TimerUploadTimer(Sender: TObject);
var Ini: TIniFile;
    morgen_m,http_url,today,tomorrow,proxy_type,proxy_host,proxy_port,proxy_user,proxy_pass,dirname,password,url,username,file1,file2,file3,file4,file5: String;
    proxy,passiv,lplan: Boolean;
    dnr,port: Integer;
begin
Application.ProcessMessages;

  TimerReload.OnTimer(TimerReload);

dnr:=DayOfWeek(heute_neu);

  if dnr=1 then begin //sonntag
   today:=DatetoStr(heute_neu+1);
   tomorrow:=DatetoStr(heute_neu+2);
  end
  else if dnr=2 then begin
   today:=DatetoStr(heute_neu);
   tomorrow:=DatetoStr(heute_neu+1);
  end
  else if dnr=3 then begin
   today:=DatetoStr(heute_neu);
   tomorrow:=DatetoStr(heute_neu+1);
  end
  else if dnr=4 then begin
   today:=DatetoStr(heute_neu);
   tomorrow:=DatetoStr(heute_neu+1);
  end
  else if dnr=5 then begin
   today:=DatetoStr(heute_neu);
   tomorrow:=DatetoStr(heute_neu+1);
  end
  else if dnr=6 then begin
   today:=DatetoStr(heute_neu);
   tomorrow:=DatetoStr(heute_neu+3);
  end
  else if dnr=7 then begin
   today:=DatetoStr(heute_neu+2);
   tomorrow:=DatetoStr(heute_neu+3);
  end;

 try
    Ini:=TIniFile.Create(prgmpath+'conf.ini');
    username:=Ini.ReadString('FTP-Daten','Username','');
    password:=Ini.ReadString('FTP-Daten','Password','');
    url:=Ini.ReadString('FTP-Daten','URL','');
    dirname:=Ini.ReadString('FTP-Daten','Ordner','');
    port:=Ini.ReadInteger('FTP-Daten','Port',21);
    passiv:=Ini.ReadBool('FPT-Daten','Passivmode',TRUE);
    proxy:=Ini.ReadBool('Proxy','Aktivieren',FALSE);
    proxy_host:=Ini.ReadString('Proxy','Host','');
    proxy_port:=Ini.ReadString('Proxy','Port','');
    proxy_user:=Ini.ReadString('Proxy','Username','');
    proxy_pass:=Ini.ReadString('Proxy','Passwort','');
    proxy_type:=Ini.ReadString('Proxy','Typ','');
    http_url:=Ini.ReadString('HTML-Plan (Schüler)','URL','');
    lplan:=Ini.ReadBool('Grundeinstellungen','Lehrerplan hochladen',true);
    morgen_m:=Ini.ReadString('Zeiteinstellungen','Datum morgen',tomorrow);
    if StrToDate(morgen_m)<StrToDate(tomorrow) then
      morgen_m:=tomorrow
    else
      tomorrow:=morgen_m;
  finally
    Ini.Free;
  end;

  IdFTP1.Username := username;
  IdFTP1.Password := password;
  IdFTP1.Host := url;
  IdFTP1.Port:=port;
  IdFTP1.Passive:=passiv;
  IdFTP1.Connect;

  IdFTP1.ChangeDir(dirname);

 if proxy then begin
  IdFTP1.ProxySettings.Host:=Proxy_Host;
  IdFTP1.ProxySettings.Port:=StrToInt(Proxy_Port);
  IdFTP1.ProxySettings.Username:=Proxy_User;
  IdFTP1.ProxySettings.Password:=Proxy_Pass;
   if Proxy_Type='fpcmNonethen
    IdFTP1.ProxySettings.ProxyType:=fpcmNone
   else if Proxy_Type='fpcmOpenthen
    IdFTP1.ProxySettings.ProxyType:=fpcmOpen
   else if Proxy_Type='fpcmSitethen
    IdFTP1.ProxySettings.ProxyType:=fpcmSite
   else if Proxy_Type='fpcmTransparentthen
    IdFTP1.ProxySettings.ProxyType:=fpcmTransparent
   else if Proxy_Type='fpcmUserSitethen
    IdFTP1.ProxySettings.ProxyType:=fpcmUserSite
   else if Proxy_Type='fpcmUserPassthen
    IdFTP1.ProxySettings.ProxyType:=fpcmUserPass;
 end
 else begin
  IdFTP1.ProxySettings.Host:='';
  IdFTP1.ProxySettings.Port:=0;
  IdFTP1.ProxySettings.Username:='';
  IdFTP1.ProxySettings.Password:='';
  IdFTP1.ProxySettings.ProxyType:=fpcmNone;
 end;

 if tage>2 then begin
  file1:=prgmpath+'\pl_sch\'+prefix_sch+'Mo.htm';
  file2:=prgmpath+'\pl_sch\'+prefix_sch+'Di.htm';
  file3:=prgmpath+'\pl_sch\'+prefix_sch+'Mi.htm';
  file4:=prgmpath+'\pl_sch\'+prefix_sch+'Do.htm';
  file5:=prgmpath+'\pl_sch\'+prefix_sch+'Fr.htm';

  IdFTP1.Put(file1, ExtractFileName(file1));
  IdFTP1.Put(file2, ExtractFileName(file2));
  IdFTP1.Put(file3, ExtractFileName(file3));
  IdFTP1.Put(file4, ExtractFileName(file4));
  IdFTP1.Put(file5, ExtractFileName(file5));
 end
 else begin
  file1:=prgmpath+'\pl_sch\'+prefix_sch+'heute.htm';
  file2:=prgmpath+'\pl_sch\'+prefix_sch+'morgen.htm';

  IdFTP1.Put(file1, ExtractFileName(file1));
  IdFTP1.Put(file2, ExtractFileName(file2));
 end;

  IdFTP1.Quit;

  if (autom_mon_exp) AND ((monitor_upload*60)=uploadtime) AND NOT (lplan) then
   TimerMonitorFTP.OnTimer(TimerMonitorFTP);
end;
Sven Kannenberg
  Mit Zitat antworten Zitat
Svenkan

Registriert seit: 10. Feb 2007
Ort: Bersenbrück
547 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: Socketfehler 10061 tritt nur in bestimmten Fällen auf? o

  Alt 28. Sep 2008, 02:05
OK, ihm ist grad aufgefallen, dass er keine Login-Daten eingetragen hat.


Naja, egal. Damit hat sich das Problem erledigt. ^^
Sven Kannenberg
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#3

Re: Socketfehler 10061 tritt nur in bestimmten Fällen auf? o

  Alt 28. Sep 2008, 08:12
Hi,

auch wenn das Problem als erledigt scheint, würde ich im Programm genau das Abfangen! Wenn keine Daten hinterlegt sind, zeigst Du dem Benutzer eine schicke Meldung, das dem so ist und rufst am Besten danach den Dialog auf, in dem er die Daten eingeben kann.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:47 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz