From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Configuring Call Library Function, function prototype

Hey everybody,

 

I'm getting some weird garbldygook in my function prototype in the Call Library Function configuration window:

 

 delete.JPG

 

 

My function is void Norm(...)

 

Anybody know where these extra symbols are coming from?

 

Thanks in advance.

Message Edited by Candice on 06-25-2009 01:31 PM
0 Kudos
Message 1 of 8
(2,748 Views)

Hi Candice,

 

If you delete the node, drop a new one, then set it up again, does it have the same problem?

Jeff | LabVIEW Software Engineer
0 Kudos
Message 2 of 8
(2,726 Views)
It appears you are dealing with a C++ DLL. LabVIEW does not handle C++ DLL. It can only handle C DLLs, or at the very minimum, you need to adorn each prototype with extern "C". This is discussed in Step 3 of this document: Building a DLL with Visual C++.
Message 3 of 8
(2,710 Views)
My prototype does include the extern "C" statement.
0 Kudos
Message 4 of 8
(2,703 Views)
The bottom line is that whatever compiler you are using is adorning the function names. That function is being seen as a C++ function, and LabVIEW cannot call it. You need to look at the documentation for your compiler on how to prevent this. This KB article is old, but it still applies (see section "Function Name is Decorated).
Message 5 of 8
(2,697 Views)

I was told that while labview cannot call C++ functions, I can still write in C++ using only C callable functions and Labview can use it. Is this true or false.

 

btw, the mangling on the prototype "magically" fixed itself, after closing out of labview and restarting 😕

Message Edited by Candice on 07-02-2009 12:03 PM
0 Kudos
Message 6 of 8
(2,653 Views)

Candice wrote:

I was told that while labview cannot call C++ functions, I can still write in C++ using only C callable functions and Labview can use it. Is this true or false.


As long as the interface that LabVIEW sees is C then yes, that's generally true.

 


btw, the mangling on the prototype "magically" fixed itself, after closing out of labview and restarting 😕


That's just bizarre.

 

0 Kudos
Message 7 of 8
(2,648 Views)
Yes, because nothing is ever magical. I just can't see the reason for it 😞
0 Kudos
Message 8 of 8
(2,644 Views)