Load URL returns error 10049

Dave Cragg dcragg at lacscentre.co.uk
Tue Nov 29 06:16:51 EST 2005


Hi Dave

No answers I'm afraid. Just more questions.

On 29 Nov 2005, at 05:02, Dave Beck wrote:

>  I'm afraid they are quite puzzling to me and seem to
> point towards a bug in the Rev internet lib or the engine itself,  
> but maybe
> somebody with more experience could chime in on that.

That can't be ruled out. But as it works for the other users, and  
this is the first report of this error, I'd still look at the user's  
setup as the probable cause. Of course, the fact that the Web Browser  
works suggests something wrong with Rev, but it may be just that they  
are doing things differently.

>
> Again, to reiterate, the problem is that the load URL command fails  
> for this
> user when trying to load a web page and the URLStatus function returns
> "error". Then the libURLErrorData function returns "Error 10049". This
> problem is isolated to this user and the stand alone has been  
> distributed
> and works as expected for over 50 others, all accessing the same  
> hard coded
> URL.

10049 looks like a Windows socket error. From looking around the net,  
it seems to be associated with setting up servers and not client  
apps. (The problem is a failure to bind to an address on the local  
machine.) However, I can force this error by connecting to a url like  
this: "http://255.255.255.255/something.html" But the error string  
returned by libUrlErrorData is "error Error 10049 on socket".

Sorry to harp on about this, but are you sure the error string is  
"Error 10049". You're not filtering the message in any way? (e.g.  
word 2 to 3 of libUrlErrorData(tUrl)). The reason I'm asking is that  
I can't find anywhere in libUrl that would set the data returned by  
libUrlErrorData in this way. How are you getting the message? In an  
answer dialog? Is there any chance that it's not a Rev window popping  
up but a system or other utility window? What version of libUrl are  
you using (libUrlVersion()). Also, what version of Rev, and what  
version of Windows is the client using.

>
>
> I had the customer check to see if the same URL loaded in her browser
> without problems, and the answer was yes. I then built a special  
> stand along
> for this customer that accesses the website directly through the IP  
> instead
> of using the DNS lookup, but the same error was still generated.

When you used the IP, did you set it manually or use Rev's  
hostNameToAddress function? If the latter, it might point to a DNS  
issue. A way to check would be to see the result from  
hostNameToAddress(<servername>) on the user's machine. For example,  
if the url you are connecting to is "http://www.myserver.com/ 
something.html", the see what hostNameToAddress("www.myserver.com")  
returns. Is it a valid IP address?


> I then
> built another standalone that attempts to access google through the  
> load
> command as a sanity check, and what happened was that the load  
> failed again
> and this different error was returned by libURLErrorData:
>
> Error loading on socket

Again I'm puzzled by the message. I'd expect to see  
"error" (lowercase) before the capitalized "Error". Also, I've never  
come across this specific message before.


> Erin, I had her give me all her configuration info. There are no proxy
> server settings, and in the Internet Protocol (TCP/IP) settings she  
> has
> "Obtain an IP address automatically" and "Obtain DNS server address
> automatically" turned on.


Just to reconfirm the proxy settings. In the Internet Options Control  
Panel, under the Connections tab, click the LAN Settings button. In  
the Automatic Configuration section at the top of the window, are any  
check boxes hilited. If so, this could be a problem.

In an earlier mail, you said...
> (She already told me that she is not on an internal network or  
> behind a
> firewall.) Or in light of the new info is that a moot point?

This might point to some malware problem - trojan/spyware/whatever.  
Are you able to suggest (tactfully) that she run some kind of anti- 
spyware and anti-virus utilities.

The only other suggestion would be to use libUrlSetLogField to log  
the transaction with the server. This may not reveal much if the  
problem is happening when opening the socket. But it's worth doing,  
even if just to confirm where the problem is occurring.

Cheers
Dave



More information about the use-livecode mailing list