WR使用DLL的问题
我用VC写了一个非常简单的DLL(VC MFC的Regular MFC DLL),有两个导出函数,一个是简单的加法运算,另外一个是弹出一个对话框。然后load_dll(...)导入这个DLL(release版本的,在本机上编译生成的),但是,出现问题:对于简单加法运算的调用能够成功实现,并得出正确的结果,但是对含有对话框的函数却不行,WR一直没有反应,也不弹出对话框,直到把WR关闭,这个对话框才出现,究竟是什么原因呢?:| 你确保你的对话框的函数没有问题?没有加载DLL呢?
像第一个程序那样加载呢? 不好意思,原来是可以的。今天重新写了一个DLL,终于可以了。原来那个(我用了VC的CFileDialog类)也是可以的不过,但是有点奇怪的是如果我不点一下系统托盘上的WR Engine的图标就不出来,点了一下就弹出File Dialog的对话框了(我的是WR7.0,不知是不是WR本身的问题);今天直接用了一个非常简单的AfxMessageBox直接出来了,不用点WR Engine的图标就直接出来了;
不过试了一下,好像WR对VC的Regular DLL with MFC staticly linked的DLL好像不支持的(应该不是DLL的问题,因为我用VC写了一个调用该DLL是正常的),可以正常load DLL,但就是找不着函数;但是对于Regular DLL using shared MFC DLL是可以的;至于那个MFC Extension DLL还没试过
另To QA_BAY:谢谢。我是把所有几个导出函数(包括那个有对话框的函数)放在同一个DLL里面的,所以不存在是否加载的问题 你可以把程序放到这里来,
让大家一起学习学习吧.
http://bbs.51testing.com/viewthread.php?tid=5133&fpage=1
我现在也在学习DLL.
大家一起学习吧. 我写的DLL只是非常简单的DLL,只是为了看一下在WR中怎么使用,所以贴出来也没什么意义,TSL中的说明已经很明白了。
正在学习VC中,呵呵
还得向版主多请教啊!
另:对于三楼我自己的说法改正一下:不是点一下系统托盘处的图标才出来,而是对话框已经出来了,但是这个对话框不是最顶层窗口(任务栏上没有图标),点了一下后把对话框激发为最顶层,于是就出现了
页:
[1]