08-24-2006 03:34 AM
08-25-2006 12:17 PM
08-28-2006 01:53 AM
Hi DWeiland,
Without pressing the "Verify Prototype..." button, the arguments of the DLL functions are only added manually. (popout "This function either does not have parameter information in the DLL or uses types not recognized by TestStand")
It is not flexible to add parameters everytime, so I found a solution in internet, ie. add dll source and press "verify prototype".
But, if the parameter is either HANDLE or other struct I defined, the problem can not be solved by the solution I found. (popout "The prototype in the source file is not valid.")
I think the problem is Teststand dose not recognize my dll parameter, the "Press verify prototype" action is only changing the prototype in the Module Tab.
Does a way to solve the probles? or another way to solve "This function either does not have parameter ...." problem?
Thanks
08-28-2006 04:01 PM
08-28-2006 04:29 PM
The problem isn't that TestStand doesn't have enough native types. A handle can be represented in a TestStand numeric variable just fine. Instead, the issue is that when you select Verify Prototype, TestStand doesn't fully pre process your headers and compile your code to determine the types. To do so would require TestStand not only to be a full C/C++ compiler but it would also have to be able to read your compiler's projects and settings to resolve include paths, macros, etc.
Since TestStand is not a C/C++ compiler, it just looks for the standard basic data types plus a few more that are common in test code. Other data types will not be automatically recognized even if they can be mapped to TestStand types.
Another option it to create a type library for your dll so that TestStand can automatically read the data type information from it. However, I don't know if that works for struct parameters and I looked for the document on devzone that explains how to do that in VC++ and it has been moved or deleted 😞
Maybe an AE would know of a link to a current document that describes how to do this?
08-28-2006 05:10 PM