Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Check for Internet Connection
Message
De
20/02/2011 14:32:42
 
 
À
Tous
Information générale
Forum:
Visual FoxPro
Catégorie:
Codage, syntaxe et commandes
Titre:
Check for Internet Connection
Versions des environnements
Visual FoxPro:
VFP 9 SP2
OS:
Windows XP SP1
Divers
Thread ID:
01500982
Message ID:
01500982
Vues:
145
My application checks for an internet connection. Users are not normally on a LAN, but have an individual ISP, dial-up, broadband or air-card.

I've found these routines posted previously here.
Example 1:
Declare Integer InternetCheckConnection In wininet;
	STRING lpszUrl, Integer dwFlags, Integer dwReserved
#Define FLAG_ICC_FORCE_CONNECTION  1
= _check ("http://www.microsoft.com")
Procedure _check(lcUrl)
gcConnectionStatus = (InternetCheckConnection(lcUrl, FLAG_ICC_FORCE_CONNECTION, 0)=1)
oSocket = Createobject("MSWinsock.Winsock")

Clear Dlls "InternetCheckConnection"

If ! oSocket.LocalIP = "127.0.0.1"
	gcIpAddress=oSocket.LocalIP
	gcConnectionStatus = 'IP Address'
Else
	gcIpAddress=''
	gcConnectionStatus = 'Not Connected'
ENDIF
Example 2:
Local lcTempFile, loWSH  &&&, gcIPAddress
lcTempFile="LocalIP.txt"
If File(lcTempFile)		&&erase leftovers from old run
	Erase (lcTempFile)
Endif
loWSH=Createobject("Wscript.Shell")
loWSH.Run("command /c ipconfig > "+lcTempFile,0,1)
If File(lcTempFile)		&&read the file and parse it
	gcIpAddress=Upper(Filetostr(lcTempFile))
	gcIpAddress=Substr(gcIpAddress, At('IP ADDRESS',gcIpAddress))
	gcIpAddress=Substr(gcIpAddress, At(':',gcIpAddress)+2)
	gcIpAddress=Substr(gcIpAddress, 1, At(Chr(13),gcIpAddress)-1)
Endif
If File(lcTempFile)		&&erase leftovers from old run
	Erase (lcTempFile)
Endif
If Len(Alltrim(gcIpAddress)) = 0
	gcConnectionStatus = 'Not Connected'
Else
	gcConnectionStatus = 'IP Address'
Endif
My questions are:
Is Example # 1 subject to errors related to presence (or absence) of MSWinsock?
Is Example # 2 particularly vulnerable to viruses?

Thanks.
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform