AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Wird ein Event ausgelöst, wenn die Inet-Verb. getrennt wird?
Thema durchsuchen
Ansicht
Themen-Optionen

Wird ein Event ausgelöst, wenn die Inet-Verb. getrennt wird?

Ein Thema von Lefko · begonnen am 26. Feb 2004 · letzter Beitrag vom 27. Feb 2004
Antwort Antwort
Lefko

Registriert seit: 31. Jul 2003
359 Beiträge
 
Delphi 6 Enterprise
 
#1

Wird ein Event ausgelöst, wenn die Inet-Verb. getrennt wird?

  Alt 26. Feb 2004, 20:54
Hallo Freunde ,

öh, solche Threads gibs hier sicher schon zuHauf, aber ich finde nicht das richtige....

Ich überprüfe, ob eine Verbindung besteht. Wenn eine besteht, dann versuche ich, sie zu beenden.
Nun kann es doch mal vorkommen, dass es ein paar (Milli)Sekunden dauert, bis die Verbindung getrennt ist; da ich aber sofort nach dem Trennen überprüfe, ob die Verbindung noch steht und ensprechend verfahre, kann es vorkommen, dass die Verbindung getrennt wird, der PC aber trotzdem sagt, sie könne nicht beendet werden, weil sie in dem Moment, in dem mein Programm überprüft, gerade noch aktiv ist!

Wird da irgendein Event oder so ausgelöst, wenn eine Verbindung beendet wird, woran man sieht, DASS sie beendet wurde?

Ich habe das im Moment so gelöst, dass vor der Überprüfung das Programm noch 1-2 Sekunden wartet, aber das ist nicht sehr toll...

Delphi-Quellcode:
procedure TForm1.TiShutdownTimer(Sender: TObject);
var f : textfile;
    ConnDetails : TRASConnectionDetails;
    Upload, Download, Trennung, SDVerlauf, Volumen : string;
begin
TiShutdown.Enabled := false;
TiCount.Enabled := false;
Upload := '';
Download := '';
Trennung := '';
SDVerlauf := '';
Volumen := '';

//evtl. Verbindung trennen
try
  if InternetGetConnectedState(nil, 0) then
    begin
     RasMonitor.GetRasConnection(ConnDetails);
     RasMonitor.HangUpRasConnection(Conndetails.RasConn); //verbindung soll getrennt werden
     sleep(1500); //warten....
     getrennt := not InternetGetConnectedState(nil, 0); //hm, nicht sehr sicher...
     if not InternetGetConnectedState(nil, 0) and getrennt
       then Trennung := 'Internetverbindung getrennt.'
       else Trennung := 'Internetverbindung konnte nicht getrennt werden!';

     //evtl. Datenvolumen & Onlinezeit bekommen
     if (GetSessionTraffic('In') / 1024 > 1024)
       then Download := 'Download: ' + FormatFloat('0.00', GetSessionTraffic('In') / 1024 / 1024) + ' Mb'
       else Download := 'Download: ' + FormatFloat('#,##0.00', GetSessionTraffic('In') / 1024) + ' Kb';

     if (GetSessionTraffic('Out') / 1024 > 1024)
       then Upload := 'Upload: ' + FormatFloat('0.00', GetSessionTraffic('Out') / 1024 / 1024) + ' Mb'
       else Upload := 'Upload: ' + FormatFloat('#,##0.00', GetSessionTraffic('Out') / 1024) + ' Kb';

     Volumen := ' (' + Upload + '; ' + Download + ')';
     Trennung := Trennung + Volumen;
    end;
except
  Trennung := 'Internetverbindung konnte nicht getrennt werden!';
end;

  (*---------Onlinezeit fehlt noch-----------*)

//Logfile schreiben
SDVerlauf := 'Shutdown am '+ DatetoStr(IncSecond(now,2)) + ' um ' + TimeToStr(now) + ' erfolgreich ausgeführt. ';
assignfile(f, ExtractFilePath(Application.exename) + 'Shutdown.log');
if FileExists(ExtractFilePath(Application.exename) + 'Shutdown.log')
  then append(f)
  else rewrite(f);
writeln(f, (SDVerlauf + Trennung));
writeln(f, '');
closefile(f);

//Keinen Beenden-Dialog anzeigen
Normalclose := true;

//Windows_Shutdown;
//ExitWin(EWX_POWEROFF or EWX_FORCE); //??
//ExitWin(EWX_SHUTDOWN or EWX_FORCE); //??
ExitWin(EWX_SHUTDOWN); //??
end;
MfG Lefko
Johannes
-=[Nennst du meinen Namen, bin ich schon nicht mehr da]=-
  Mit Zitat antworten Zitat
Benutzerbild von Evian
Evian

Registriert seit: 10. Apr 2003
Ort: Berlin
485 Beiträge
 
Delphi 6 Professional
 
#2

Re: Wird ein Event ausgelöst, wenn die Inet-Verb. getrennt w

  Alt 27. Feb 2004, 11:16
Bei www.torry.net gibts ne Komponente die INetDetect v.1.0 heißt, die Dir anzeigt ab ne Verbindung besteht und glaube auch ob sie beendet wird. -> vielleicht hilft Dir das weiter?!

gruß

Evian
-> www.Phillsoft.de

Ich bin nun Mathematiker, aber meine Freundin bleibt trotzdem unberechenbar!
  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 00:50 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