以文本方式查看主题

-  Fortran中文网  (http://fortran.cn/bbs/index.asp)
--  Fortran语言开发经验交流  (http://fortran.cn/bbs/list.asp?boardid=3)
----  [求助]读取MAC地址,winXP可以用,但是到了win7运行不了  (http://fortran.cn/bbs/dispbbs.asp?boardid=3&id=2934)

--  作者:letsunsing
--  发布时间:2014/7/6 11:51:39

--  [求助]读取MAC地址,winXP可以用,但是到了win7运行不了
读取MAC地址,winXP可以用,但是到了win7运行不了,求教源程序如下:

!   子程序 获取系统用户名和MAC地址

   subroutine machostnm

   USE MSFLIB

   LOGICAL(4) 爀攀猀甀氀琀

 character 猀甀氀琀(17)

c write(*,*) \'   \'

 write(*,\'(1x,a16\\)\') \' 正在验证用户... \'

   result = SYSTEMQQ(\'ipconfig /all >ipconfig.txt\')

   result = SYSTEMQQ(\'find "Physical Address" ipconfig.txt >

  &massage.txt\')

   result = SYSTEMQQ(\'for /f "skip=1 tokens=2 delims=:" %a in

  & (massage.txt) do @echo %a>a.txt\')

   result = SYSTEMQQ(\'for /f "tokens=* delims=- " %a in (a.txt)

  & do @echo %a>mac地址.txt\')

   result = SYSTEMQQ(\'find "Host Name" ipconfig.txt >

  &massage.txt\')

   result = SYSTEMQQ(\'for /f "skip=1 tokens=2 delims=:" %a in

  & (massage.txt) do @echo %a>a.txt\')

   result = SYSTEMQQ(\'for /f "tokens=* delims=- " %a in (a.txt)

  & do @echo %a>host用户名.txt\')

   result = SYSTEMQQ(\'del ipconfig.txt\')

   result = SYSTEMQQ(\'del massage.txt\')

   result = SYSTEMQQ(\'del a.txt\')

   ! 物理网卡地址在 洀愀挀 址.txt 蜀件中

 open(12,file=\'mac地址.txt\')

 read(12,\'(17a1)\') (sult(i),i=1,17)

 close(12,status=\'delete\')

 write(111,*) sult

c  write(*,\'(A28,17a1\\)\') \'mac地址:\',(sult(i),i=1,17)

 open(12,file=\'host用户名.txt\')

 read(12,\'(17a1)\',err=123) (sult(i),i=1,17)

 close(12,status=\'delete\')

123 write(*,\'(1x,A12,17a1\\)\') \' 用户名:\',(sult(i),i=1,17)

 return

   end

win xp下面用得好好的,到了win7就用不了。

这是一个程序加密的子程序,把授权的电脑MAC地址写入源程序,电脑MAC地址跟程序一致才能运行。

现在电脑系统都逐步升级到win7 win8,导致原有程序无法运行或无法加密。

求教论坛高手。

[此贴子已经被作者于2014-7-6 11:52:49编辑过]


--  作者:qwe8520
--  发布时间:2015/4/9 18:05:31

--  
这个我也不回复。。。。









着するこグッチ偽物
--  作者:robci
--  发布时间:2016/7/5 21:31:58

--  
参考了您的内容:

在32位系统XP下,可以用 下面两条语句,将物理地址写入到 massage.txt文本文件里,

      call system(\'ipconfig/all>ipconfig.txt\')

      call system(\'find "Physical Address" ipconfig.txt>massage.txt\')

      call systemQQ(\'ipconfig/all>ipconfig.txt\')

      call systemQQ(\'find "Physical Address" ipconfig.txt>massage.txt\')

但在64位的win7系统下,上面两种方法就不行了,不知您后面解决此问题没?期待您的解答,谢谢!


京ICP备05056801号