|
|
导航: |
论坛 -> 发布代码
斑竹:liumazi,ruralboy |
|
作者: |
hsj (hsj) |
★☆☆☆☆ |
-
|
盒子活跃会员 |
|
2017/9/7 10:30:26 |
标题: |
fortran获取硬盘序列号/cpu/mac/ip/显卡/主板等硬件信息 |
浏览:2405 |
|
加入我的收藏 |
楼主: |
以前写了个获取硬盘序列号的dll,delphi7开发,前几天碰到个朋友想在fortran上用,就研究了下,开发包可以到http://www.dxmylove.com/download/jyharddisk.zip下载,这里是fortran的代码 program FortranDemo
Use Kernel32 Implicit None Interface SUBROUTINE GetDiskSerialNumber1(drive, pout, poutsize) !DEC$ ATTRIBUTES STDCALL :: GetDiskSerialNumber1 !DEC$ ATTRIBUTES Alias:'GetDiskSerialNumber1':: GetDiskSerialNumber1 !DEC$ ATTRIBUTES REFERENCE:: pout, poutsize INTEGER :: poutsize CHARACTER(len=1) :: drive CHARACTER :: pout(*) End SUBROUTINE SUBROUTINE DoReg(user,userlen,regid,regidlen) !DEC$ ATTRIBUTES STDCALL :: DoReg !DEC$ ATTRIBUTES Alias:'DoReg':: DoReg !DEC$ ATTRIBUTES REFERENCE:: pout, poutsize INTEGER :: userlen,regidlen CHARACTER :: user(*),regid(*) End SUBROUTINE End Interface CHARACTER(len=20) dllname Logical RetLog INTEGER poutsize CHARACTER drive CHARACTER :: pout(100) CHARACTER(len=100) :: user CHARACTER(len=300) :: regid INTEGER userlen,regidlen Pointer (fGetDiskSerialNumber1, GetDiskSerialNumber1) Pointer (fDoReg, DoReg) !32位下INTEGER(4),64位下INTEGER(8) !INTEGER(4) hLib !DEC$ IF DEFINED (_X86_) INTEGER(4) hLib dllname="jydisk.DLL"C print *,'win32' !DEC$ ELSE INTEGER(8) hLib dllname="jydisk64.DLL"C print *,'win64 ' !DEC$ ENDIF hLib = LoadLibrary(dllname)
fDoReg = GetProcAddress(hLib, 'DoReg'C) print *,'DoReg= ',fDoReg fGetDiskSerialNumber1 = GetProcAddress(hLib, 'GetDiskSerialNumber1'C) print *,'GetDiskSerialNumber1= ',fGetDiskSerialNumber1 user="171833017@qq.com" regid="telme" userlen=len(trim(user)) regidlen=len(trim(regid)) call DoReg(user,userlen, regid,regidlen) drive="c" PRINT *, 'in= ',drive call GetDiskSerialNumber1(drive, pout,poutsize) !print *,'RetLog= ',Retlog
PRINT *, 'OUTPUT(1)= ',poutsize PRINT *, 'OUTPUT(2)= ',pout
RetLog = FreeLibrary(hLib)
end program FortranDemo
----------------------------------------------
qq:171833017,靖源软件http://www.dxmylove.com |
作者: |
|
2017/9/7 15:40:15 |
1楼: |
像这种调用DLL获取的很容易被HOOK修改吧,始终觉得不安全
----------------------------------------------
-
|
作者: |
|
2017/9/11 19:24:54 |
3楼: |
不是有现成的控件?
----------------------------------------------
菩提本无树,明镜亦非台,本来无一物,何处惹尘埃
|
作者: |
hsj (hsj) |
★☆☆☆☆ |
-
|
盒子活跃会员 |
|
2017/9/12 8:57:49 |
4楼: |
代码本身就支持,win64版本的就是基于xe5编译的
----------------------------------------------
qq:171833017,靖源软件http://www.dxmylove.com
|
|