使用VIsual C++ .NET编写NI-DAQ程序
主要软件:
主要软件版本: 7.0
主要软件修正版本: N/A
次要软件: Measurement Studio>>Measurement Studio for .NET Support, Measurement Studio>>Measurement Studio for Visual C++
硬件: Multifunction DAQ (MIO), Multifunction DAQ (MIO)
问题: 当我使用Visual C++.NET来开发NI-DAQ的时候,我有哪些选择?
解答: 当您使用Visual C++.NET和NI-DAQ驱动的时候参考下面的表格,无论您是否安装有Measurement Studio,它将告诉您是否可以创建一个NI-DAQ应用程序。您可以通过表格中的链接,或者通过最底下的链接或者相关选择的更多信息。
- Measurement Studio For Visual Studio.NET 提供了原始的.NET框架1.1和MFC Visual C++库给高级分析,科学用户界面控件和测量数据网络。Measurement Studio同样也提供了自动代码生成功能和集成工具给Microsoft Visual Studio 2003用户。如果您正在使用Visual Studio.NET 2003开发数据采集应用程序,并且您有Measurement Studio 7.0或者以后版本,那么参考本栏。
- Measurement Studio Support for Visual Studio 6.0 提供ActiveX控件,MFC Visual C++ 库,和集成工具给Visual C++ 6.0 和Visual Basic 6.0使用。这部分的支持作为了Measurement Studio 7.0(专业版本或者更高)的部分特性。如果您正在使用Visual Basic 6.0或者Visual C++ 6.0开发数据采集应用程序并安装了Measurement Studio Support for Visual Studio 6.0,那么您可以参考本栏。早期的版本为Measurement Studio 6.0。
- 仅有Visual Studio(没有Measurement Studio)如果您仅有Visual Studio而没有Measurement Studio Packages,那么请参考开发选项。这就意味着您使用Visual Studio.NET 2003或者更高版本的Visual C++.NET(MFC)来开发应用程序。
|
Measurement Studio For Visual Studio.NET |
Measurement Studio Support for Visual Studio 6.0 |
仅有Visual Studio (没有Measurement Studio) |
Visual C++ .NET (MFC) |
Traditional NI-DAQ |
是 |
N/A |
是 |
NI-DAQmx |
最佳 |
N/A |
是 |
最佳:提供工程向导,代码生成和配置工具来提高您开发DAQ应用程度的速度。 是: 提供简单的该功能组件,并提供自带的例子。 否: 组件并非为该环境设计。National Instruments并不支持它用在该环境。参考链接获得更多信息。 可能: 该组件最初并不是设计应用在该环境,但是有可能通过封装或者手工配置使其应用在该环境。比如,您可以使用 Runtime Callable Wrappers在C#或者.NET中使用ActiveX控件。或者手工设置Visual C++工程时用C的导入库。参考链接获得更多信息。 N/A:相应的Measurement Studio package并不为相应语言提供支持。参考链接获得更多信息。 |
Visual C++ .NET with Measurement Studio Support for Visual Studio .NET
- Traditional NI-DAQ
- National Instruments不提供原始的.NET或者Visual C++(MFC)库给Traditional NI-DAQ。对于开发Traditional NI-DAQ应用程序,Measurement Studio Support for Visual Studio .NET 2003不会提供给您任何Visual Studio.NET 2003以外功能。
- 使用安装Traditional NI-DAQ驱动而得到的ANSI C API。这个并不需要Measurement Studio。 参考 Visual C++ .NET without Measurement Studio 部分获得更多信息。
- 您可以在NI Technical Support Web page上搜索"visual c" daq来获得例子程序。
- 您可以使用Traditional NI-DAQ ActiveX控件来进行数据采集。无需Measurement Studio,通过安装驱动可以获得ActiveX控件。CWDAQ控件是作为Traditional NI-DAQ驱动的一部分而安装的。您可以通过下面链接的知识库文章2IECTCLXL获得在Visual C++ .NET中使用ActiveX的封装器。
- NI-DAQmx
- Measurement Studio support for Visual Studio .NET提供Visual C++类库,帮组集成和代码生成工具给NI-DAQmx。在安装完Measurement Studio后您需要运行NI-DAQmx驱动程序获得类库。
- 您可以在下面的默认路径下找到例子程序:
C:\Program Files\National Instruments\MeasurementStudio70\VCNET\Examples\DAQmx
或者C:\Program Files\National Instruments\MeasurementStudioVS2003\VCNET\Examples\DAQmx
。 双击 .vcproj
文件打开工程。
Visual C++ .NET with Measurement Studio Support for Visual Studio 6.0注意: 您必须安装有Visual Studio 6.0才能获得这项支持。
- Traditional NI-DAQ
- National Instruments不提供原始的.NET或者Visual C++(MFC)库给Traditional NI-DAQ。对于开发Traditional NI-DAQ应用程序,Measurement Studio Support for Visual Studio 6.0不会提供给您任何Visual Studio.NET 2003以外功能。
- 使用安装Traditional NI-DAQ驱动而得到的ANSI C API。这个并不需要Measurement Studio。参考 Visual C++ .NET without Measurement Studio 部分获得更多信息。
- 您可以在NI Technical Support Web page上搜索"visual c" daq来获得例子程序。
- 几乎所有的这些例子都是用Visual C++ 6.0编写,但是Visual Studio.NET 2003将会把这些工程自动为您更新成Visual Studio .NET的程序。
- 您可以使用Traditional NI-DAQ ActiveX控件来进行数据采集。无需Measurement Studio,通过安装驱动可以获得ActiveX控件。CWDAQ控件是作为Traditional NI-DAQ驱动的一部分而安装的。您可以通过下面链接的知识库文章2IECTCLXL获得在Visual C++ .NET中使用ActiveX的封装器。
- NI-DAQmx
- National Instruments提供NI-DAQmx C的API。这个作为驱动程序的一部分,不需要Measurement Studio。
- Measurement Studio Support for Visual Studio 6.0不会提供额外的开发NI-DAQmx应用程序的功能给Visual Studio .NET 2003.
- 您可以在下面默认的路径找到例子程序:
C:\Program Files\National Instruments\NI-DAQ\Examples\DAQmx ANSI C
。 关于如何在Visual Studio .NET 2003中手动加NI-DAQmx的头文件和库,参考Visual C++ .NET without Measurement Studio 获得相关信息。
- 如何给例子加NI-DAQmx函数,参考 Visual C++ .NET without Measurement Studio 部分获得相应信息。
Visual C++ .NET without Measurement Studio
- Traditional NI-DAQ
- National Instruments不提供原始的.NET或者Visual C++(MFC)库给Traditional NI-DAQ。
- 对于这种情况,您可以运行NI-DAQ所带的例子,它们最初都是为了在Visual C++ 6.0中运行而写的。这些例子可以在下面的默认路径找到:
C:\Program Files\National Instruments\NI-DAQ\Examples\VisualC
。 您可以通过下面的步骤来运行它们:
- 打开 Visual Studio.NET.
- 选择 File » New » Project。
- 在工程窗口,选择Visual C++ Projects 和Win32Project。
- 输入一个工程名,点击OK。
- 选择 Application Settings。
- 在程序设置中,选择 Console Application 和 Empty Project。
点击完成。它会为您创建一个空白的工程。
- 在Solution Explorer窗口中,右键选择代码文件,并选择 Add »Add Existing Item。
- 浏览到例子路径下:
C:\Program Files\National Instruments\NI-DAQ\Examples\VisualC
,然后进入您想要运行的相应的例子。
- 选择相应的您想要运行的
.c
文件并点击打开。
- 增加运行这些程序所需要的库文件,您可以在下面的路径下找到这些库文件:
C:\Program Files\National Instruments\NI-DAQ\Lib
。右键选择代码文件,再选择 Add» Add Existing Item把他们加到您的工程中。
- 浏览到上面的路径。进入正确的文件夹后,将您要寻找的文件类型由
C++ file type
到All files
。然后选择两个文件 (nidaq32.lib
和 nidex32.lib
并选择打开。它会把这两个文件增加到您的工程中,现在这些文件就可以编译和执行了。
- 点击工具栏上的蓝色箭头来运行程序。(如果您仍然还有错误,检查确认include和库路径是否正确)。
注意:选择 Tools»Options检查路径,然后选择 Projects»Visual C++ Directories,选择 Include files,确保为您的工程用的任何一个 .h
文件增加有路径。尤其确保包含有下面的路径:C:\Program Files\National Instruments\NI-DAQ\Include
。确保在 Library Files
下面,有下面这么一个路径: C:\Program Files\National Instruments\NI-DAQ\Lib
。
- 您可以使用Traditional NI-DAQ ActiveX控件来进行数据采集。无需Measurement Studio,通过安装驱动可以获得ActiveX控件。CWDAQ控件是作为Traditional NI-DAQ驱动的一部分而安装的。您可以通过下面链接的知识库文章2IECTCLXL获得在Visual C++ .NET中使用ActiveX的封装器。
- NI-DAQmx
- National Instruments提供NI-DAQmx C的API。这个作为驱动程序的一部分,不需要Measurement Studio。
- 您可以在下面的默认路径下找到例子程序:
C:\Program Files\National Instruments\NI-DAQ\Examples\DAQmx ANSI C
。这些例子是用 Visual Studio C++ 6.0写的。Visual Studio .NET 2003会自动把Visual C 6.0工程转化成正确的格式。选择 Tools »Options,手动添加NI-DAQmx库到您的工程。在选项对话框中,选择 Projects»Directories。选择includes和库文件。比如,您需要添加下面的路径到包含文件:C:\Program Files\National Instruments\NI-DAQ\DAQmx ANSI C Dev\include
,为库文件添加下面的路径:C:\Program Files\National Instruments\NI-DAQ\DAQmx ANSI C Dev\lib\msvc
。
相关链接: KnowledgeBase 2IECTLXL: Why Are the Microsoft Visual C++ .NET-Generated Wrappers for Measurement Studio ActiveX Controls Incomplete? KnowledgeBase 317742FQ: Programming NI-DAQ in Text-Based Languages KnowledgeBase 3146J6FQ: Programming DAQ in Visual Basic 6.0 KnowledgeBase 3178NEFQ: Programming DAQ in Visual Basic .NET KnowledgeBase 317BPGW3: Programming DAQ in Visual C++ 6.0 KnowledgeBase 3186P9W3: Programming DAQ in Visual C# .NET
附件:
报告日期: 05/15/2006
最近更新: 02/02/2008
文档编号: 317CP7W3
Other Support Options
Ask the NI Community
Collaborate with other users in our discussion forums
Request Support from an Engineer
A valid service agreement may be required, and support options vary by country.