1468592801 发表于 2024-11-29 19:11:41

fortran调用refprop时出现问题

目前已经把refprop软件中的fortran,fluids和mixtures文件夹全放项目文件夹里了,fluids里面的文件也都加到项目里了,refprp64.lib和refprp64.dll也已经加到项目依赖项里了,但还是出现了错误“REFPRP64.DLL : fatal error LNK1107: 文件无效或损坏: 无法在 0x320 处读取”,有哪位大神能回答一下到底出了啥问题吗

1468592801 发表于 2024-11-30 10:06:25

我看好像说要把refprop软件的路径加到项目中,但我不知道怎么加进去

fcode 发表于 2024-11-30 13:08:33

refprp64.dll 无需添加到项目依赖项。

1468592801 发表于 2024-11-30 16:18:52

请问那应该怎么调用呢,是要把依赖项路径加到项目里吗,还是说要把软件位置安装到项目文件夹中?

fcode 发表于 2024-11-30 16:23:01

我没用过 refprop,但是 dll 是不用添加到项目依赖库的。
去掉项目依赖性中的dll之后,看看有什么错误提示,再多提供截图再判断原因。

1468592801 发表于 2024-11-30 17:28:49

fcode 发表于 2024-11-30 16:23
我没用过 refprop,但是 dll 是不用添加到项目依赖库的。
去掉项目依赖性中的dll之后,看看有什么错误提示 ...

filegen.obj : error LNK2019: 无法解析的外部符号 TPFLSH,函数 FILEGEN_mp_DRHODTEMP 中引用了该符号
filegen.obj : error LNK2019: 无法解析的外部符号 THERM3,函数 FILEGEN_mp_DRHODTEMP 中引用了该符号
filegen.obj : error LNK2019: 无法解析的外部符号 TRNPRP,函数 FILEGEN_mp_DRHODTEMP 中引用了该符号
filegen.obj : error LNK2019: 无法解析的外部符号 SURFT,函数 FILEGEN_mp_DRHODTEMP 中引用了该符号
filegen.obj : error LNK2019: 无法解析的外部符号 DPDD,函数 FILEGEN_mp_DRHODTEMP 中引用了该符号
filegen.obj : error LNK2019: 无法解析的外部符号 DPDD2,函数 FILEGEN_mp_DRHODTEMP 中引用了该符号
filegen.obj : error LNK2019: 无法解析的外部符号 DPDT,函数 FILEGEN_mp_DRHODTEMP 中引用了该符号
filegen.obj : error LNK2019: 无法解析的外部符号 DDDP,函数 FILEGEN_mp_DRHODTEMP 中引用了该符号
filegen.obj : error LNK2019: 无法解析的外部符号 DDDT,函数 DDDT.t1479p.t1480p.t11p.t1481p 中引用了该符号
filegen.obj : error LNK2019: 无法解析的外部符号 SETUP,函数 SETUP.t1517p.t1518p.t1519p.t1520p.t1521p.t1522p.t3v.t3v.t3v.t3v 中引用了该符号
filegen.obj : error LNK2019: 无法解析的外部符号 WMOL,函数 WMOL.void 中引用了该符号
libifcoremdd.lib(for_main.obj) : error LNK2019: 无法解析的外部符号 MAIN__,函数 main 中引用了该符号
x64\Debug\property tool.exe : fatal error LNK1120: 12 个无法解析的外部命令
具体就是这些报错,程序应该是没读到dll

fcode 发表于 2024-11-30 19:10:25

这些就是没有找到这些函数,你使用的是 Visual Studio 吗?
尝试对你的解决方案管理器截个图,你是把 refprp64.lib 添加到哪个位置了?
你需要让编译器在链接时加上这个 .lib 文件。

1468592801 发表于 2024-11-30 19:29:45

fcode 发表于 2024-11-30 19:10
这些就是没有找到这些函数,你使用的是 Visual Studio 吗?
尝试对你的解决方案管理器截个图,你是把 refpr ...

就跟这个图片一样

fcode 发表于 2024-11-30 19:33:43

这里是绝对不能输入 .dll 的。

我下载了一个,看了一下。似乎只要把 Fortran 文件夹下所有的 .FOR 添加到工程中就行了。
也不需要在上面的位置添加 *.lib 文件。

这个 *.lib 和 *.dll 文件似乎是给其他语言预编译好的。

1468592801 发表于 2024-11-30 19:44:27

这样子的话会出现这种情况
页: [1] 2
查看完整版本: fortran调用refprop时出现问题