mfc-LabView中调用MFC-Wizard生成的DLL实现自定义文件对话框功能出错

问题描述

LabView中调用MFC-Wizard生成的DLL实现自定义文件对话框功能出错

VC创建MFC-Wizard生成的Dll,在导出函数MyFileOpen中调用由CFileDialog派生类CMyFileDlg实现自定义文件对话框。再在LabView中引用库函数节点调用MFC生成的DLL,输入输出参数设置输入类型int32、输出为C字符串指针即为文件对话框返回的选中目标文件路径。
如上配置完成后,运行弹出1097错误,用error_out屏蔽后,返回路径没有输出结果。DLL调试执行MyFileOpen内的如下代码中
__declspec(dllexport) void MyFileOpen(int* nMode,char* path)
{
if(*nMode==0)
{

CMyFileDlg dlg(TRUE,NULL,NULL,OFN_HIDEREADONLY | OFN_FILEMUSTEXIST,
    NULL,NULL);

dlg.m_ofn.lpstrFilter="Chart Files (*.*)*.*";

// dlg.m_ofn.lpstrInitialDir="D:VC6.0完整VC98MFCInclude";
// dlg.OnInitDialog();
if(dlg.DoModal()==IDOK)
{
//strcat(path,"000");
CString str=dlg.GetFileName(); //???执行没有效果
path=str.GetBuffer(str.GetLength());
*nMode =1;
}
else
{
*nMode =2;
strcat(path,"000");
return ;
}

}
else
{
    *nMode =2;
}
return ;

}

str=dlg.GetFileOpen();没有效果。
求懂LabView和MFC的大神求解,第一次使用LabView调用MFC的动态链接库就出错了

时间: 2024-08-03 19:52:29

mfc-LabView中调用MFC-Wizard生成的DLL实现自定义文件对话框功能出错的相关文章

非MFC工程中使用MFC库

目录(?)[-] 需求说明 常见问题 问题分析 参考解决方法 我的解决方案 Stdafxh的原理     需求说明 C++工程的类型有很多,从VS(或VC)可以看到常见的有:Win32 Console Application.MFC Application.Win32 Project等.在创建MFC工程时,通过IDE的向导会自动帮我们创建相应的类文件和包含必需的头文件,但有时候我们需要在非MFC工程中包含MFC的库.至于为什么会有这个需要,为何不在一开始就创建MFC工程呢?可能有两种原因:1.在

class-android中调用BitmapFactory.decodeResource()生成位图对象的问题

问题描述 android中调用BitmapFactory.decodeResource()生成位图对象的问题 调用BitmapFactory.decodeResource()生成位图对象 //BitmapFactory.decodeResource()这里的BitmapFactory是一个类还是一个对象呢,如何判断呢? 解决方案 public class BitmapFactory decodeResource是它内部的静态方法,所以BitmapFactory不需要实例化就可以访问static方

数据库-如何在vfp中调用某一特定word文档的邮件合并功能?

问题描述 如何在vfp中调用某一特定word文档的邮件合并功能? 如下操作应该怎么实现? 已经做好了一个需要邮件合并的word模板,插入了合并域,引用了vfp数据库中的数据, 在VFP中通过表单录入数据存入数据库, 将刚才录入的数据通过一个vfp的程序或命令在word文档中进行邮件合并生成需求的文档然后保存到指定位置. 想做这样一个东西,可是最后一步里不知道怎么写.

vc++-如何VB6.0 调用 MATLAB r2010b 生成的DLL ?

问题描述 如何VB6.0 调用 MATLAB r2010b 生成的DLL ? 如何VB6.0 调用 MATLAB r2010b 生成的DLL ?我已经用VS 2010 的 VC++ 2010编译器 生成了MATLAB r2010b M文件的DLL了,MATLAB 里 的 M文件的内容是function c=Sum2(ab) c=a+b; end 而且在VB 引用中加入了这个DLL,名为Sum2VB代码里面是:Private a As DoublePrivate b As DoublePrivat

链表的插入 插入函数写好了 在main函数中调用 然而最后的结果并没有实现插入的功能

问题描述 链表的插入 插入函数写好了 在main函数中调用 然而最后的结果并没有实现插入的功能 struct Link *InsertNode01(struct Link *head,int nodeData,int i) { int j=1; struct Link *pr = head, *p, *temp = NULL; p = (struct Link *)malloc(sizeof(struct Link)); if(p == NULL) { printf("NO enough mem

jcom-利用Jcom在用java程序中调用windows Com组件,Jcom.dll是不是支持64位操作系统?

问题描述 利用Jcom在用java程序中调用windows Com组件,Jcom.dll是不是支持64位操作系统? 利用Jcom在用java程序中调用windows Com组件,Jcom.dll是不是支持64位操作系统?我发现在32位机器上是可以调用成功的,为什么切换到64为机器上就调用不成功,有谁了解这个Jcom的,谢谢给个解答.

WEB如何在.html文件中调用C# App_code 里的方法或者.aspx文件并得到返回值?急!

问题描述 因为访问量大,页面采用生成的.html页,但.html页无法查询数据库,取得类似会员登录等等的动态信息,但.html页当中有多处要用到登录信息,请问如何才能在.html页中调用到C#的后台代码或者调用.aspx文件查询然后得到返回值?登录信息并非只是为了显示,如果是这样只要用一个iframe就可以了,通过cookie又不太方便,很多客户端对cookie支持不好,请大侠给个好点的方法,能直接调用.cs文件里的方法最好! 解决方案 解决方案二:通过js调用webservice返回数据进行操

maven web工程中调用依赖的jar包内的自定义XX.xml文件 报FileNotFoundException异常

问题描述 现有一mavenweb工程,在web工程中依赖2个maven普通工程,用的是JBoss部署有A,B两个普通的maven工程,C是mavenweb工程.其中A工程中有个自定义的Data.xml文件.在maven工程B中,我依赖A工程(A工程打成jar包后,在B工程中的pom中引用了,A工程中放的是property文件和xml文件等resource文件),在B工程中有个解析A工程下的Data.xml的工具类,用getResource("/Data.xml")再newFile(fi

Shell脚本中调用、引用、包含另外一个脚本文件的两种方法_linux shell

脚本 first (测试示例1) 复制代码 代码如下: #!/bin/bash echo 'your are in first file'  问)在当前脚本文件中调用另外一个脚本文件? 方法一: 使用 source 脚本 second (测试示例2) 复制代码 代码如下: #!/bin/bash echo 'your are in second file' source first 方法二: 使用 . 脚本 second (测试示例3) 复制代码 代码如下: #!/bin/bash echo '