Jump to content
Sign in to follow this  

Timeout in DLLCall

Recommended Posts



I did not find something on Timeouts when using a dllcall, perhaps someone could help.

I use the mediainfo.dll to get some information on Video.

The code is:

$hDLL_mediainfo = DllOpen("mediainfo.dll")
        If $hDLL_mediainfo = -1 Then

        ;New MediaInfo handle
        $Handle=DllCall($hDLL_mediainfo, "ptr", "MediaInfo_New")

        $Open_Result=DllCall($hDLL_mediainfo, "int", "MediaInfo_Open", "ptr", $Handle[0], "wstr", $videopath)

        ;Get with Stream=Video (ID1) Substream=0 (ID0) and Parameter=Framerate
        $framerate=DllCall($hDLL_mediainfo, "wstr", "MediaInfo_Get", "ptr", $Handle[0], "int", 1, "int", 0, "wstr", "FrameRate", "int", 1, "int", 0)

        $rate = $framerate[0]

        ;Delete MediaInfo handle
        $Handle=DllCall($hDLL_mediainfo, "none", "MediaInfo_Delete", "ptr", $Handle[0])

        ;Close the DLL

The Problem I have is this line

$Open_Result=DllCall($hDLL_mediainfo, "int", "MediaInfo_Open", "ptr", $Handle[0], "wstr", $videopath)

In some cases the mediafile doen not answer and the script pauses. I want to have a timeout here that sets an upper limit of 1min. Is there a timeout funktion for dll call or a general timeout for functions in scripts?



Share this post

Link to post
Share on other sites

DllCall() is a blocking function in AutoIt. Find out if the DLL you are using supports a call-back function for that operation, and if so, use DllCallbackRegister() with it.


Valuater's AutoIt 1-2-3, Class... Is now in Session!For those who want somebody to write the script for them: RentACoder"Any technology distinguishable from magic is insufficiently advanced." -- Geek's corollary to Clarke's law

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.