Jump to content
Sign in to follow this  
StungStang

_GetIP crash

Recommended Posts

StungStang

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 by StungStang

Share this post


Link to post
Share on other sites
StungStang

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!")
EndIf

In the long time that _GetIP give me -1 the script just freeze =(

Hi!

Share this post


Link to post
Share on other sites
StungStang

The same, it give too much time to return -1, in this time the script freeze =(

Share this post


Link to post
Share on other sites
StungStang

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 =)

Share this post


Link to post
Share on other sites
JohnOne

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.

Share this post


Link to post
Share on other sites
StungStang

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:

Posted Image

As you can see the wifi connection with the router are still alive, but of course you cant surf on internet :mellow:. Now try to run _GetIP(). It's just freeze for a long time before to say -11 :)

If you can try...try =D

Share this post


Link to post
Share on other sites
StungStang

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 by StungStang

Share this post


Link to post
Share on other sites
JohnOne

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 by JohnOne

AutoIt Absolute Beginners    Require a serial    Pause Script    Video Tutorials by Morthawt   ipify 

Monkey's are, like, natures humans.

Share this post


Link to post
Share on other sites
StungStang

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?

Share this post


Link to post
Share on other sites
JohnOne

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.

Share this post


Link to post
Share on other sites
monoscout999

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 :mellow: error code 4,

this is the correct way.

$Ping = Ping("www.google.com")
If $Ping <> 0 Then
MsgBox (0,"","Connected")
EndIf

Share this post


Link to post
Share on other sites
StungStang

acording this script i am offline :mellow: 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 =)

Share this post


Link to post
Share on other sites
BrewManNH

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 Gude
How 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

Share this post


Link to post
Share on other sites
guinness

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 parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 22/04/2018

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.