VB调用Fortran的DLL后的路径设置问题
本帖最后由 龙行天下 于 2014-7-17 13:16 编辑大侠,别走,请教个问题
情形1:相对位置
Module Module1
Public Declare Auto Sub DLL_ROUT Lib "Fcall.dll" (ByVal DBL_IN() As Double, ByVal STR_IN As String, ByVal DBL_OUT() As Double)
End Module
如代码所示,我用相对位置,然后就会出错,提示无法加载DLL"Fcall.dll":找不到指定的模块。
情形2:绝对位置
Module Module1
Public Declare Auto Sub DLL_ROUT Lib "C:\Users\Administrator\Desktop\M\Fcall.dll" (ByVal DBL_IN() As Double, ByVal STR_IN As String, ByVal DBL_OUT() As Double)
End Module
我把Fortran生成的dll放在自定义的文件夹内,然后公共声明用绝对路径,这样不会出错了。。
问题是:请问,如何设置,相对路径才不会出错。
先谢谢啦 把 fcall.dll 放入与 exe 相同的文件夹既可。 chuxf 发表于 2014-7-17 14:04
把 fcall.dll 放入与 exe 相同的文件夹既可。
你好,我从Intel visual fortran安装包里面找的例子,它不需要把人工移动dll,便可以自动移动dll到vb下面的bin文件夹。。麻烦你看一下,这个是怎么实现的 设置工程的输出既可。 我这么设置输出的,见图1.这样可以调试成功。
但是关于Fcall的所有调试文件也一股脑的全输出到bin文件下面了,见2.
而在Fcall项目下的Release不再生成dll等文件。见图3.(这一点完全可以理解)
————————————————————————————————————————
我昨天上传的那个压缩的example。我检查了它的输出设置,没发现做了什么特殊设置(依然是默认路径)。
但它可以完美的在Release里面正常生成关于Fcall.dll的各种各样,见图4.
同时仅仅把Fcall.dll自动放在bin下面,见图5.
这是小问题,不必太纠结。
如图:
vvt 发表于 2014-7-18 09:37
这是小问题,不必太纠结。
如图:
哦,原来是在这里实现的,这样的话在操作上,与改变输出路径,并无很大区别。
本以为有什么通用性的设置,可以一劳永逸,进行混编。。
谢谢大侠,算是完整的了解到这个过程的实现,也结束了一段纠结。。
页:
[1]