大头鼹鼠 发表于 2017-3-13 09:54:06

利用fortran调用电脑的计算器后怎么关闭console

本帖最后由 大头鼹鼠 于 2017-3-13 09:59 编辑

program eee
    implicit none
    integer:: res
   callSYSTEM ("C:\windows\system32\calc.exe")
    end program eee
   
   

li913 发表于 2017-3-13 10:47:03

我在win10运行,打开计算器后console自动关闭。

大头鼹鼠 发表于 2017-3-13 11:05:02

li913 发表于 2017-3-13 10:47
我在win10运行,打开计算器后console自动关闭。

这个win10也太牛逼了吧:':'(:'(

vvt 发表于 2017-3-13 17:12:54

本帖最后由 vvt 于 2017-3-14 22:24 编辑

语法规范里没有这个功能。
如果是windows平台,可以试试这样:

注意,win10 不能用 calc 来测试。因为 calc 实际上又运行了 Calculator.exe而这个代码只能结束子进程,不能结束孙子进程。

use kernel32
use , intrinsic :: ISO_C_Binding
Type(      T_STARTUPINFO) ::stStartUp
Type(T_PROCESS_INFORMATION      ) ::stProcInfo
integer i
Call GetStartupInfo( stStartUp )
i = CreateProcess( 0 , "c:\windows\system32\notepad.exe"//c_null_char , 0 , 0 , 1 , 0 , 0 , 0 , LOC( stStartUp ) , LOC(stProcInfo) )
read(*,*)
i = TerminateProcess( stProcInfo%hProcess , 0 )
end

大头鼹鼠 发表于 2017-3-14 09:23:24

vvt 发表于 2017-3-13 17:12
语法规范里没有这个功能。
如果是windows平台,可以试试这样:



谢谢 不错
页: [1]
查看完整版本: 利用fortran调用电脑的计算器后怎么关闭console