我想在启动程序时获取VB.NET或VB代码来访问硬盘序列号。这是为了帮助我保护我自己的软件免受试图盗版副本的人的影响。通过访问硬盘序列号来保护软件
3
A
回答
2
人们经常需要升级/更换硬盘。 更好地使用来自DMI的序列号。
3
我不能为您提供代码,对不起,但我提供了一个基于我以前在该地区的经验的警告。
许多许可系统使用的“硬盘序列号”实际上是写在磁盘上的软数字,而不是硬连线到硬件中。
使用“重影”软件快速生成许多台式机或使用虚拟化软件快速生成大量服务器的企业通常具有相同的硬盘驱动器标识。
所以要小心,如果你的目标是防止企业购买一个副本,并在许多机器上使用它(可能是无意的)。
7
在c#中,但你明白了。您需要为此使用System.Management:
string driveLetter = Environment.SystemDirectory.Substring(0, 2);
string sn = new System.Management.ManagementObject("Win32_LogicalDisk.DeviceID=\"" + driveLetter + "\"").GetPropertyValue("VolumeSerialNumber").ToString();
正如其他人指出的,这可能不是处理此问题的最佳方法。但是,这是你的事。
1
事实上,我已经使用磁盘序列号来保护我的软件。
在vb 6.0中,我们可以创建和使用FileSystemObject。它允许访问硬盘驱动器的序列号,以及其他几个功能:
- 显示每个硬盘
- 创建,删除的使用和可用空间,移动文件夹
- 复制文件和文件夹
- 打印文本文件
- ...等
注意,编写代码,并声明该对象之前,您必须ACTIVAT e
Project--> References --> Microsoft Scripting Runtime
以下代码提取有关驱动器的一些信息,但您也可以提取驱动器的序列号。
Sub ShowDriveInfo(path)
Dim fso, drv, bytesPerGB, freeGB, totalGB, s
s = ""
bytesPerGB = 1024 * 1024 * 1024
Set fso = CreateObject("Scripting.FileSystemObject")
Set drv = fso.GetDrive(fso.GetDriveName(path))
s = s & drv.Path & " - "
if drv.IsReady Then
freeGB = drv.FreeSpace/bytesPerGB
totalGB = drv.TotalSize/bytesPerGB
s = s & FormatNumber(freeGB, 3) + " GB free of "
s = s & FormatNumber(totalGB, 3) + " GB"
Else
s = s & "Not Ready"
End If
s = s & "<br />"
document.write (s)
End Sub
如果您仍需要它,请在[email protected]或[email protected]下降了一张字条给我。我会给你发送源代码。
0
请在下面找到确切的回答你的问题:
Function ShowDriveInfo(drvpath)
Dim fso, d, s, t
Set fso = CreateObject("Scripting.FileSystemObject")
Set d = fso.GetDrive(fso.GetDriveName(fso.GetAbsolutePathName(drvpath)))
Select Case d.DriveType
Case 0: t = "Unknown"
Case 1: t = "Removable"
Case 2: t = "Fixed"
Case 3: t = "Network"
Case 4: t = "CD-ROM"
Case 5: t = "RAM Disk"
End Select
s = "Drive " & d.DriveLetter & ": - " & t
s = s & "<BR>" & "SN: " & d.SerialNumber
ShowDriveInfo = s
End Function
相关问题
- 1. 通过密码批处理文件保护外部硬盘
- 2. 通过JavaScript访问硬件
- 3. 访问硬盘
- 4. 如何通过.htaccess保护phpmyadmin访问
- 5. 网站访问通过密码保护
- 6. UWP无法通过FolderPicker访问硬盘中的文件夹
- 7. 通过网络查询访问Google云端硬盘文件
- 8. 确定单声道硬盘序列号?
- 9. 如何获得SCSI硬盘序列号?
- 10. 如何获取硬盘序列号?
- 11. 通过序列号识别光盘
- 12. Raspberry软件保护
- 13. 直接访问硬盘
- 14. 直接访问硬盘?
- 15. 通过Crouton在Chromebook上本地访问Google云端硬盘
- 16. java越来越硬盘序列
- 17. 如何通过.htaccess保护文件夹访问权限?
- 18. 通过USB从iPhone应用程序访问Mac硬盘驱动器
- 19. Softlayer安全软件访问保护日志
- 20. 保存附件到硬盘
- 21. x86组件上的受保护模式键盘访问
- 22. 如何通过C++访问硬盘驱动器的文件系统和扇区?
- 23. ParseObject()保护访问
- 24. 通过“opencpu knitr应用程序”无法访问R软件包
- 25. 保护软件的方法
- 26. BSD硬盘代号
- 27. Weblogic - 通过授予访问特定IP来保护Web服务URL
- 28. 使用信号量来保护队列的问题
- 29. 访问轨私人/保护方法通过JavaScript或jQuery的
- 30. 通过继承访问内部类的受保护字段
太苛刻了,查尔斯?我把它当作寻求帮助来找到操作系统调用来获取这些信息。 – Oddthinking 2008-11-26 01:43:40