Jump to content
Sign in to follow this  
Tersion

Strange behavior of InetClose()...

Recommended Posts

Here simple script:

#include <InetConstants.au3>

Local $hDownload

$hDownload = InetGet("http://www.autoitscript.com/autoit3/files/beta/update.dat", @ScriptDir & "\test.txt", $INET_FORCERELOAD, $INET_DOWNLOADBACKGROUND)
ConsoleWrite(@error)
Sleep(5000)
$bReturn = InetClose($hDownload)
MsgBox(0, "", $bReturn)

The reference says:

Return Value

True: if the handle was found and closed.

False: if not.

But I get always: False? I guess there should be True... Why that? Something wrong? Downloaded text file open as normal. @error = 0

Share this post


Link to post
Share on other sites

I agree. Very weird. This

Local $hDownload = InetGet("https://www.autoitscript.com/autoit3/files/archive/autoit/autoit-v3.3.14.5-setup.exe", @ScriptDir & "\test.exe", 1, 1)
ConsoleWrite($hDownload & @crlf)
ConsoleWrite(@error & @crlf)
;Sleep(10000)
$bReturn = InetClose($hDownload)
ConsoleWrite($bReturn & @crlf)
ConsoleWrite($hDownload & @crlf)

while the download is effectively interrupted, returns :

1
0
False
1

 

Share this post


Link to post
Share on other sites

mikell,

Yes. Thanks that you mention about that interrupted download returns the same. It's looks like some bug, or just typo the AutoIt code. In that sort of situation it's bad that the AutoIt code is closed.

I decide to create ticket in Bug Tracker.

By the way, I had another problem with InetClose()...

Edited by Tersion

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  

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By Tersion
      Here test example:
      The code is not prefect, but it's demonstrates the problem.
      So, when I download more than 2 files simultaneous from one server (in my example I download 3 simultaneously) by InetGet() with background option, I will get only 2 active downloads. It's seems like server limitation. The third will remain with 0 read bytes until one of the previous downloads would finished. And if I want to close this third 0 bytes read download with InetClose() I will get hang of Window GUI for several seconds! After that, the third download would be closed and everything will continue to work normally.
      If I InetClose() one of the active downloads with more than 0 bites read - all works fine!
      You can try by your self given example, or watch this .gif's:
      1. Window GUI hangs when I trying to Cancel (InetClose()) download with 0 bytes read download:

      2. All works as it should, when I Cancel more than 0 bytes read download:

      Any ideas why is it happens?
    • By uncommon
      I know InetClose closes the "resources" to make sure it does not leak as the help file says but what kind of resources are we talking about? My reason for asking is I may need to run a script the fires the Inetget a few times and does not wait for the download to finish in a loop. If I use InetClose then it will kill the downloads in progress, so I want to know the consequence of leaving several of theses resources open.
      Thanks
×
×
  • Create New...