Type de connexion internet

cybersky Messages postés 40 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 25 mai 2009 - 4 nov. 2005 à 19:16
cs_Kenavo Messages postés 702 Date d'inscription vendredi 21 mars 2003 Statut Membre Dernière intervention 1 octobre 2009 - 7 nov. 2005 à 13:59
Salut à tous les développeurs,



Voilà ma question est simple mais peut être pas le code :



Function TestConnect: Boolean;

Var

dwFlags: DWord;

Begin

dwFlags := INTERNET_CONNECTION_MODEM Or

INTERNET_CONNECTION_LAN Or

INTERNET_CONNECTION_PROXY;

Result := InternetGetConnectedState(@dwFlags, 0);

End;



avec ceci je voudrais afficher dans une TImage l'etat de la connection :



Lan => jaune

Modem => Vert

Proxy => orange

Non connecté => Noire



Merci d'avance pour l'aide que vous pourrez me fournir



Coordialement

2 réponses

WhiteHippo Messages postés 1154 Date d'inscription samedi 14 août 2004 Statut Membre Dernière intervention 5 avril 2012 3
5 nov. 2005 à 09:46
Voilà comment je vois la chose :

type
TTypeConnection = ( tcNonConnecte
, tcLan
, tcModem
, tcProxy
) ;


procedure MiseAJourEtat ( LesFlags : DWORD ; image : TImage );
const
COULEUR_CONNEXION : array[TTypeConnection] of TColor =
( ( clBlack )
, ( clYellow )
, ( clLime )
, ( TColor($0080FF) )
) ;
var
Connexion : TTypeConnection ;
begin
if ( image = NIL ) then Exit ;


Connexion := tcNonConnecte ;
if ( LesFlags AND INTERNET_CONNECTION_MODEM = INTERNET_CONNECTION_MODEM ) then Connexion := tcModem
else if ( LesFlags AND INTERNET_CONNECTION_LAN = INTERNET_CONNECTION_LAN ) then Connexion := tcLan
else if ( LesFlags AND INTERNET_CONNECTION_PROXY = INTERNET_CONNECTION_PROXY ) then Connexion := tcProxy ;


with image,Canvas do
begin
brush.Color := COULEUR_CONNEXION[ Connexion ] ;
FillRect(ClientRect);
end ;
end ;

Exemple d'appel :

MiseAJourEtat( dwFlags, image1 ) ;
MiseAJourEtat( INTERNET_CONNECTION_MODEM, image1 ) ;

Cordialement.



<HR>



Il existe 10 catégories de personne. Ceux qui connaissent le binaire et les autres...
0
cs_Kenavo Messages postés 702 Date d'inscription vendredi 21 mars 2003 Statut Membre Dernière intervention 1 octobre 2009 5
7 nov. 2005 à 13:59
Salut

Il y a un problème avec ton code, c'est que tu ne t'occupes pas du résultat de la fonction
InternetGetConnectedState qui renvoie l'état de la connexion



Function TestConnect: DWord;

var

dwFlags: DWord;

Resu : boolean;

begin

Resu := InternetGetConnectedState(@dwFlags, 0); // Interrogation

if Resu then

Result : = dwFlags and (INTERNET_CONNECTION_MODEM Or // pour ne garder que les flags


INTERNET_CONNECTION_LAN Or //intéressants



INTERNET_CONNECTION_PROXY)

else

Result := DWord(-1);

end ;



Cette fonction te reverra le type de connexion (0 si non connecté) ou -1 s'il n'y a pas de connexion internet configurée



Ken@vo

<hr size ="2" width="100%">Code, Code, Codec !

[%3C/body ]
0
Rejoignez-nous