I'm trying to use the Call Library node and having problems. It's the first
time I've tried to do this aside from with trivial DLLs I've done myself, so
I'm hoping it's a fairly simple thing although I've got nowhere looking
through the archives.

This is on Linux, if it's relevant. I have a library with a function whose
prototype (from the header file) is;
const char *gpgme_check_version (const char *req_version);

This function returns a string and takes either a string or null, depending
on how you want it to work. For simplicity I'm passing nothing to it. In a C
compiler I can get this to return the version number of the library so I
know it's working.

In Labview (7.0) the closest I can get to this prototype using the "Call
Library" node is

unsigned char gpgme_check_version(CStr req_version);
CStr gpgme_check_version(CStr req_version);

I've also tried not specifying  the argument passed to the function. If it
is specified, I wire an empty string to the input.

When the VI runs, no data comes back. There are no errors- the VI is
executable and Labview doesn't segfault. I know that when getting arrays
back from a function in general you have to supply preallocated space, but
there's no input terminal as such for the return code- just a shaded
placeholder. Nonetheless, I can wire a generously-sized string to it with no
errors, although it doesn't help.

Any suggestions?

--
Dr. Craig Graham, Software Engineer
Advanced Analysis and Integration Limited, UK. http://www.aail.co.uk/





Reply via email to