Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

Delphi support in NIDAQ 7.3

Does anyone have an example of delphi wrapper unit
to use NIDAQ 7.3 ?
It seems like NIDAQ doesn't support Delphi
as a language interface in this version...

Thanks,
Peter.
0 Kudos
Message 1 of 8
(4,188 Views)
Hi,

Nope - NI no longer supports Delphi. I'm in the same predicament. As I see it you have 3 choices:

1) Rewrite your stuff in Visual C/C++ or one of the other supported languages
2) Write a wrappper DLL in VC that you can call from your Delphi app. The VC dll makes the calls into NI-DAQmx.
3) Cobble up a Delphi unit using the NIDAQmx ".H" files, and call into the MX dll directly.

For our solution, I went with item #2 above. One of the main issues I ran across when calling the DLL from Delphi is that the FPU (in an X86 environment) must be setup differently than the Delphi normal case. When calling a DAQmx function from Delphi (either directly or indirectly through a wrapper DLL) you should do something similar to the following:

asm
finit;
wait;
end;

... call your DAQmx() function here...

Set8087CW(default8087CW);

I hope this helps,

-bill
0 Kudos
Message 2 of 8
(4,182 Views)
and send a massage to your favorit NI-Dealer that want delphi support

What stephen perfers:

var Saved8087CW: Word;

Set8087CW($133f); { Disable all fpu exceptions }

{ do Set8087CW(Saved8087CW); to restore }
Set8087CW(Saved8087CW
0 Kudos
Message 3 of 8
(4,174 Views)
Could you please give me your wrapper DLL
written in VC and corresponding Delphi unit?
Why don't they (NI) make it public?
0 Kudos
Message 4 of 8
(4,168 Views)
We are having the same problem with our new DAQ cards.
Can anyone put a example of a delphi wrapper unit online?

p.s. if there is anyone that has more information/solutions
about this problem could u please reply or contact me:

Manuel Bilgic
m-bilgic@ti.com
0 Kudos
Message 5 of 8
(4,149 Views)
I would like to buy 2 M-cards (additional to my 6 E-series cards running on delphi 7 and traditional nidaq32).

I am only interested in changing to DAQMX, but up to now I am only looking for a solution in the board.

Parus, Stephen [sparus@umich.edu] made a delphi program with direct access to the dll. Maybe you contact him.

Ulrich
0 Kudos
Message 6 of 8
(4,132 Views)
Hello!

Unfortunately, we haven't created a wrapper here at NI that makes NI-DAQ calls from Borland Delphi. If we would have done it, we would have posted it already. I have forwared this to R&D, so hopefully we should be seeing a wrapper soon. I know that customers have been successful in doing this before though, and they have ran into the floating point issue specified in the following KB:

http://digital.ni.com/public.nsf/3efedde4322fef19862567740067f3cc/a6715aa42405acd786256f0a00633b8f?OpenDocument

Besides that, I will let you all know as soon as we have this wrapper.

Thanks,

LA

P.S: Ulrich_VII, what M-series boards are you interested in buying?
Message 7 of 8
(4,120 Views)
PCI 6224 M

I need up to 32 AD channels and 6031/33 are relativ expensive

Ulrich
0 Kudos
Message 8 of 8
(4,081 Views)