Fortran Coder

标题: Fortran如何得到计算机名和网卡地址? [打印本页]

作者: tm20038175    时间: 2015-2-11 08:51
标题: Fortran如何得到计算机名和网卡地址?
如题,Fortran如何得到计算机名和网卡地址?有什么函数和算法吗?

作者: 楚香饭    时间: 2015-2-11 10:20
Fortran 语法里没有这些内容。

如果你使用的 IVF 编译器,可以试试这个代码获取计算机名:

[Fortran] 纯文本查看 复制代码
Program www_fcode_cn
  USE IFPORT
  Implicit None
  Character(len=30) :: name
  Integer :: k
  k = HOSTNAM (name)
  write(*,*) name
End Program www_fcode_cn


至于网卡地址,是一个复杂的事情,费力不讨好。
原因是:
1.一个计算机可以有多个网卡。
2.一个网卡可以有多个地址(一般都可以有两个,一个可修改,一个较难修改,而后者一般要通过驱动级函数才可以获取)

我建议你放弃获取网卡地址。

如果你要做软件加密,还是找商业化的公司来做,比较靠谱。千万别用 ipconfig /all 写入 txt 再读取来获取,完全没有保密性和安全性可言。

商业软件加密,通常都不用网卡地址。CPU和硬盘序列号较多,windows安装日期也可行。
作者: pasuka    时间: 2015-2-11 13:34
楚香饭 发表于 2015-2-11 10:20
Fortran 语法里没有这些内容。

如果你使用的 IVF 编译器,可以试试这个代码获取计算机名:

hostnm在gfortran下也是支持的
作者: 楚香饭    时间: 2015-2-11 19:36
感谢楼上提醒,确实没注意到。用得少
作者: jason388    时间: 2015-2-13 21:01
写一个C函数(没准网上可搜到)获取硬件信息,然后在Fortran中调用该C函数即可。但正如楚香饭提示的那样,这种方式加密确实不可取。




欢迎光临 Fortran Coder (http://bbs.fcode.cn/) Powered by Discuz! X3.2