一些 CVI问题的解决方法(转贴) (2007-05-28 08:57:33) 转载▼ 分类: CVI 1.在安装NI 软件的过程中(包括LabVIEW, CVI, hardware drivers, 或使用了MSI installer 进行安装的其它NI 软件),出现错误2894 致使安装程序被迫中止,如何解决该问题? 回答=该问题是微软网站上已经公布的Microsoft Installer 常出现的问题之一。已知有两个原因可能导致出现该问题:其一就是错误的或者被破坏了的Riched20.dll存在于用户的计算机上,或用户计算机上的的Riched20.dll 文件丢失。其二就是用户的计算机被诸如W32.Nimda.A@mm 的病毒感染。 针对第一种情况,用户需要从其他机器上拷贝正确版本的Riched20.dll 文件或者重新安装MSI installer。如果用户的操作系统为Windows95,98 或者ME,那么必须下载并安装Instmsi.exe,如果用户使用Windows NT4.0, 2000 或者Xp,那么必须下载安装InstMsiW.exe。该执行文件将会修复用户系统里的所有损坏文件。 针对第二种情况,用户则需要杀毒并重新安装上述文件。 2.LabWindows/CVI 中的堆栈大小? 回答=LabWindows/CVI 中的堆栈大小直接影响可以分配的数组大小。如果数组的大小超过堆栈大小,则会报告错误。该值可以在Options->Build Options中设置。缺省值为:250000。建议使用动态内存分配。 3.CVI 中如何画极坐标? 回答=CVI 中没有专门提供画极坐标的控件。可以使用Picture 控件自己画,或者使用绘图软件绘制出极坐标图,然后保存为图片再使用canvas 控件将图片导入。 4.如何在启动CVS 之后立即启动下载到CVS 上的执行程序? 一般有两种方式,其中一种你可以使用LV 的工程项来把程序下载到CVS 中,那么 RTTarget.ApplicationPath=c:\ni-rt\startup\startup.rtexe, RTTarget.LaunchAppAtBoot=True 这两个设置就会自动被LV 设置。如果你是通过FTP 把程序下载到CVS 上,上述两个标签就得手动设置。 5.CVI 中如何进行二维指针的内存分配? 回答=具体例子代码如下: p=(ComplexNum**)malloc(3*sizeof(int)); for(i=0;i<3;i++) p=(ComplexNum*)malloc(3*sizeof(ComplexNum )); 其中p 类型为:ComplexNum** ; 6.CVI 中如何实现颜色选择对话框? 回答=可以使用ColorChangePopup。具体例子代码:static ColorChangeEntry sEntry; static ListType colorList = 0; static int iResult; colorList = ListCreate(sizeof(ColorChangeEntry)); sEnt...