vehicle 发表于 2010-3-31 21:53

fortran 调用ansys

call SYSTEM(' C:\Program Files\Ansys Inc\v121\ansys\bin\INTEL\ANSYS121.exe -b      &
               -i D:\Software_Job\ansysjob\fortranToansys\beamHBFortoAnsys.mac          &
                                 -o D:\Software_Job\ansysjob\fortranToansys\trussanswer.txt ')
我用这个命令实现时,为什么提示我
'C:\Program' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
Press any key to continue
这是为什么呢?

jxj97011311 发表于 2010-4-20 12:38

我最近做ansys二次开发也碰到了同样的问题,不知道你的问题解决了没有

hrbeu221 发表于 2011-3-24 19:17

不知道楼上的问题解决了没呢?

Rainyboy 发表于 2011-3-24 22:53

回复 3 # hrbeu221 的帖子

这个问题与语言无关,任何语言调用ANSYS时命令行处理不当都会产生类似的错误。
实际上,希望在自己的程序中调用ANSYS,就是让系统执行如下命令行:

C:\Program Files\ANSYS Inc\v110\ANSYS\bin\intel\ansys110.exe -g

但是,直接将这一行命令输入CMD窗口,就会报错,这是由于Program Files目录和ANSYS Inc目录的名称中含有空格,应该如下处理:

“C:\Program Files\ANSYS Inc\v110\ANSYS\bin\intel\ansys110.exe" -g

如图:



FORTRAN我不了解,以C语言举例吧,C语言中执行命令行语句的函数是system(const char *)
如果希望使用该函数调用ANSYS,应当执行:

system("\"C:\\Program Files\\ANSYS Inc\\v110\\ANSYS\\bin\\intel\\ansys110.exe\" -g");

而不是:

system("C:\\Program Files\\ANSYS Inc\\v110\\ANSYS\\bin\\intel\\ansys110.exe -g");

更不是:

system("C:\Program Files\ANSYS Inc\v110\ANSYS\bin\intel\ansys110.exe -g");

Chelsea 发表于 2011-3-25 01:27

参考:http://forum.vibunion.com/forum-redirect-goto-findpost-ptid-15530-pid-174088-fromuid-78822.html

把单引号改为双引号看看
页: [1]
查看完整版本: fortran 调用ansys