Sign in to follow this  
Followers 0
RFRouter

_viExecCommand is broken

4 posts in this topic

Hi All,

I have found out the _viExecCommand got broken between ver 3.2.2.1 (working) and 3.2.4.0 (broken). Ever since 3.2.4.0 (broken ver) and even the last ver 3.2.10.0 it is still broken.

Can any of the developer give me a hand and help fix that problem? The symptom is not that clear in the last 3.2.10.0 the program will just say that there was an error and will shut down in ver 3.2.4.0 the problem will refer to some stack issue.

I am trying to use GPIB through VISA and like I said it does work in 3.2.2.1 and it got broken in 3.2.4.0, obviously I would prefer to use the last version to keep up to date with the other bugs.

Thanks,

rf

Share this post


Link to post
Share on other sites



#2 ·  Posted (edited)

Could try to help but have no application to test with. Do you have some more info on the stack corrupt error and which function its happening in ?

Maybe a scriptlet I can test with to show the problem would?

Jos

Edited by Jos
Need Auto Spell checker :)

Visit the SciTE4AutoIt3 Download page for the latest versions        Beta files                                                          Forum Rules
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Share this post


Link to post
Share on other sites

I got this to work with the latest ver 3.2.10.0.

It had to do with the DllCall convension instead of using _stdcall I have changed it to _cdecl.

There is only one line of code change in Visa.au3.

See attachment with the new file. If you are part of the developer team and I would appreciate if they can get it into there next release or beta. For now, I just went ahead and changed it manually but it does work in the old versions as all as the new one.

sorry I couldn't have upload the file it seems like I don't have enough space.

So since it is just one line of code change I will go ahead and post the new line of code:

New line of code in Visa.au3 line 861:

$a_results = DllCall("visa32.dll", "int:cdecl", "viQueryf", "int", $h_session, "str", $s_query, "str", "%t", "str", $s_answer)

vs.

old code in Visa.au3 line 861:

$a_results = DllCall("visa32.dll", "int", "viQueryf", "int", $h_session, "str", $s_query, "str", "%t", "str", $s_answer)

Thanks, I am happy to support with this excellent tool

rf

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  
Followers 0