Jump to content

Dll Call Help


 Share

Recommended Posts

I would think it's best to take a buffer pointer and size as parameters, then set the string in there. Otherwise, if your C++ function allocates memory (properly - using a heap, global, or virtual allocation), who's going to free that memory? I'm not sure how AutoIt handles 'str' returns, but I don't know how it would know of the type of memory allocation used, and if it would actually free it. I'd gather it doesn't free it, which leaves you with a memory leak.

Anyway, if you take a buffer pointer and size, you can determine if the size is too small, and return a 'size_invalid' return, with a proper size placed in the size parameter. That means you need to take the size variable as a reference, so that it can be passed through AutoIt using 'dword*' or some equivalent.

Link to comment
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
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...