StungStang Posted August 13, 2011 Posted August 13, 2011 (edited) Hi to all, i have a strange error. For example if i try this simple code: MsgBox(0,"My IP",_GetIP()) If my connection is down and i try to run that, the script crashes and i have to waith much more than 1 minutes before the script is unlocked with the message "-1". Can i set a timeout to _GetIp()? This is very annoying =( Hi! Edited August 13, 2011 by StungStang
JohnOne Posted August 13, 2011 Posted August 13, 2011 Dont think it works any more There are others in the example forum AutoIt Absolute Beginners Require a serial Pause Script Video Tutorials by Morthawt ipify Monkey's are, like, natures humans.
StungStang Posted August 13, 2011 Author Posted August 13, 2011 I have just tried but it's the same problem. It took too much time to give me the -1, if i voluntary turn off my connection to test the function, in this time the script just freeze. For example i use get ip to know if the user can use the internet connection, to download any file:If _GetIP() = -1 Then ;Download a file Else MsgBox(16,"Error","Can't connect to internet!") EndIfIn the long time that _GetIP give me -1 the script just freeze =(Hi!
JohnOne Posted August 13, 2011 Posted August 13, 2011 Try the ones in AutoIt Absolute Beginners Require a serial Pause Script Video Tutorials by Morthawt ipify Monkey's are, like, natures humans.
StungStang Posted August 13, 2011 Author Posted August 13, 2011 The same, it give too much time to return -1, in this time the script freeze =(
JohnOne Posted August 13, 2011 Posted August 13, 2011 returns after 250 ms if it fails. That's not long. AutoIt Absolute Beginners Require a serial Pause Script Video Tutorials by Morthawt ipify Monkey's are, like, natures humans.
StungStang Posted August 13, 2011 Author Posted August 13, 2011 Your scipt tell the internal ip for ex. 192.168.0.1, _GetIP give the external ip. For example if i connect my pc with the wifi, and i disconnect my adsl from the router pannel, the wifi connection is still alive but of course i cant connect to internt. In this case _GetIP() fail, give -1 afer 1 minutes, in this time the script freeze =). For example if i launch the script and suddenly my router disconnect from internet...if i controll the ip with _GetIP, it took too much time to say -1, in this time freeze =)
JohnOne Posted August 13, 2011 Posted August 13, 2011 Func _GetIP2() Local $bRead = InetRead("http://checkip.dyndns.org/") If @error Then $bRead = InetRead("http://automation.whatismyip.com/n09230945.asp") If Not @error Then Local $aIp = StringRegExp(BinaryToString($bRead),'\d{1,3}(\.\d{1,3}){3}',2) If Not @error Then Return $aIp[0] EndIf Return SetError(1,0,'0.0.0.0') EndFunc ;==>_GetIP2 Works for me, through Wireless LAN, wired LAN, usb phone Wired and bluetooth phone. AutoIt Absolute Beginners Require a serial Pause Script Video Tutorials by Morthawt ipify Monkey's are, like, natures humans.
StungStang Posted August 13, 2011 Author Posted August 13, 2011 It's work well if your connection are on, but if you are connect through WI-FI, and you would test the _GetIp better try this.Connect on wifi, disconnect your router from internet like this:As you can see the wifi connection with the router are still alive, but of course you cant surf on internet . Now try to run _GetIP(). It's just freeze for a long time before to say -11 If you can try...try =D
JohnOne Posted August 13, 2011 Posted August 13, 2011 Yes because there is no TimeOut. Use a ping function to see if you are connected first. AutoIt Absolute Beginners Require a serial Pause Script Video Tutorials by Morthawt ipify Monkey's are, like, natures humans.
StungStang Posted August 13, 2011 Author Posted August 13, 2011 (edited) Witch site can use for have a secure ping?...For example google don't respond always =) Can you give an example? =) Thanks for help =) Edited August 13, 2011 by StungStang
JohnOne Posted August 13, 2011 Posted August 13, 2011 (edited) Use a few, Microsoft, google, yahoo etc.. Its unlikely that they would all be down at the same time. EDIT: If its just for personal use then its a good idea to use your isp because if they are off line then you probably are too. Edited August 13, 2011 by JohnOne AutoIt Absolute Beginners Require a serial Pause Script Video Tutorials by Morthawt ipify Monkey's are, like, natures humans.
StungStang Posted August 13, 2011 Author Posted August 13, 2011 For example as i have just say google dont respond always at the ping. How i can controll if i am connected to internet with the ping function? It's good this soluction: $Ping = Ping("http://www.google.com") If $Ping <> 0 Then MsgBox (0,"","Connected") EndIf Is a secure way to know if i am connected to internet?...Or you have a better way to do that?
JohnOne Posted August 13, 2011 Posted August 13, 2011 Use a few, Microsoft, google, yahoo etc.. Its unlikely that they would all be down at the same time.EDIT:If its just for personal use then its a good idea to use your isp because if they are off line then you probably are too. AutoIt Absolute Beginners Require a serial Pause Script Video Tutorials by Morthawt ipify Monkey's are, like, natures humans.
monoscout999 Posted August 13, 2011 Posted August 13, 2011 For example as i have just say google dont respond always at the ping. How i can controll if i am connected to internet with the ping function? It's good this soluction: $Ping = Ping("http://www.google.com") If $Ping <> 0 Then MsgBox (0,"","Connected") EndIf Is a secure way to know if i am connected to internet?...Or you have a better way to do that? acording this script i am offline error code 4, this is the correct way. $Ping = Ping("www.google.com") If $Ping <> 0 Then MsgBox (0,"","Connected") EndIf
StungStang Posted August 13, 2011 Author Posted August 13, 2011 acording this script i am offline error code 4, this is the correct way. $Ping = Ping("www.google.com") If $Ping <> 0 Then MsgBox (0,"","Connected") EndIf Whitout http://...why? it's true with my code it say somethimes offline =)
BrewManNH Posted August 13, 2011 Posted August 13, 2011 You can't ping to HTTP, you have to use just the URL or an IP address. That's just how it works. If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag GudeHow to ask questions the smart way! I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from. Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays. - ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script. - Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label. - _FileGetProperty - Retrieve the properties of a file - SciTE Toolbar - A toolbar demo for use with the SciTE editor - GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI. - Latin Square password generator
guinness Posted August 13, 2011 Posted August 13, 2011 my version works >> perhaps you're being blocked or something?! UDF List: _AdapterConnections() • _AlwaysRun() • _AppMon() • _AppMonEx() • _ArrayFilter/_ArrayReduce • _BinaryBin() • _CheckMsgBox() • _CmdLineRaw() • _ContextMenu() • _ConvertLHWebColor()/_ConvertSHWebColor() • _DesktopDimensions() • _DisplayPassword() • _DotNet_Load()/_DotNet_Unload() • _Fibonacci() • _FileCompare() • _FileCompareContents() • _FileNameByHandle() • _FilePrefix/SRE() • _FindInFile() • _GetBackgroundColor()/_SetBackgroundColor() • _GetConrolID() • _GetCtrlClass() • _GetDirectoryFormat() • _GetDriveMediaType() • _GetFilename()/_GetFilenameExt() • _GetHardwareID() • _GetIP() • _GetIP_Country() • _GetOSLanguage() • _GetSavedSource() • _GetStringSize() • _GetSystemPaths() • _GetURLImage() • _GIFImage() • _GoogleWeather() • _GUICtrlCreateGroup() • _GUICtrlListBox_CreateArray() • _GUICtrlListView_CreateArray() • _GUICtrlListView_SaveCSV() • _GUICtrlListView_SaveHTML() • _GUICtrlListView_SaveTxt() • _GUICtrlListView_SaveXML() • _GUICtrlMenu_Recent() • _GUICtrlMenu_SetItemImage() • _GUICtrlTreeView_CreateArray() • _GUIDisable() • _GUIImageList_SetIconFromHandle() • _GUIRegisterMsg() • _GUISetIcon() • _Icon_Clear()/_Icon_Set() • _IdleTime() • _InetGet() • _InetGetGUI() • _InetGetProgress() • _IPDetails() • _IsFileOlder() • _IsGUID() • _IsHex() • _IsPalindrome() • _IsRegKey() • _IsStringRegExp() • _IsSystemDrive() • _IsUPX() • _IsValidType() • _IsWebColor() • _Language() • _Log() • _MicrosoftInternetConnectivity() • _MSDNDataType() • _PathFull/GetRelative/Split() • _PathSplitEx() • _PrintFromArray() • _ProgressSetMarquee() • _ReDim() • _RockPaperScissors()/_RockPaperScissorsLizardSpock() • _ScrollingCredits • _SelfDelete() • _SelfRename() • _SelfUpdate() • _SendTo() • _ShellAll() • _ShellFile() • _ShellFolder() • _SingletonHWID() • _SingletonPID() • _Startup() • _StringCompact() • _StringIsValid() • _StringRegExpMetaCharacters() • _StringReplaceWholeWord() • _StringStripChars() • _Temperature() • _TrialPeriod() • _UKToUSDate()/_USToUKDate() • _WinAPI_Create_CTL_CODE() • _WinAPI_CreateGUID() • _WMIDateStringToDate()/_DateToWMIDateString() • Au3 script parsing • AutoIt Search • AutoIt3 Portable • AutoIt3WrapperToPragma • AutoItWinGetTitle()/AutoItWinSetTitle() • Coding • DirToHTML5 • FileInstallr • FileReadLastChars() • GeoIP database • GUI - Only Close Button • GUI Examples • GUICtrlDeleteImage() • GUICtrlGetBkColor() • GUICtrlGetStyle() • GUIEvents • GUIGetBkColor() • Int_Parse() & Int_TryParse() • IsISBN() • LockFile() • Mapping CtrlIDs • OOP in AutoIt • ParseHeadersToSciTE() • PasswordValid • PasteBin • Posts Per Day • PreExpand • Protect Globals • Queue() • Resource Update • ResourcesEx • SciTE Jump • Settings INI • SHELLHOOK • Shunting-Yard • Signature Creator • Stack() • Stopwatch() • StringAddLF()/StringStripLF() • StringEOLToCRLF() • VSCROLL • WM_COPYDATA • More Examples... Updated: 22/04/2018
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now