WEB开发网
开发学院软件开发VC 用NIC和硬盘序列号实现软件的网络注册机制 阅读

用NIC和硬盘序列号实现软件的网络注册机制

 2006-07-20 11:37:27 来源:WEB开发网   
核心提示:本文示例源代码或素材下载 简介:PJSECURE 是一个 C 风格的 Win32 动态链接库,利用它可以实现软件产品的网络拷贝注册功能,用NIC和硬盘序列号实现软件的网络注册机制, 通过调用 RCP 函数 UuidCreate 或 UuidCreateSequential 快速获取远端机器的网卡地址, PJSE

本文示例源代码或素材下载

简介:

  • PJSECURE 是一个 C 风格的 Win32 动态链接库,利用它可以实现软件产品的网络拷贝注册功能。
  • 通过调用 RCP 函数 UuidCreate 或 UuidCreateSequential 快速获取远端机器的网卡地址。
  • PJSECURE 中的导出函数根据两个信息来唯一确定某台计算机。第一个函数可以获取所装网卡的 NIC 地址,该地址是一个12位的数字,由网卡的生产厂商保证其唯一性。第二个函数返回机器 C 盘的序列号。有了着两个信息,就可以成功创建自己的软件注册机制。
  • 源代码中包含 PJSECURE 的定义和实现以及一个测试该 DLL 的控制台程序。
  • 支持 Unicode ,并且随源代码一起提供生成配置选项。 

API 参考:

GetNicAddress

BOOL GetNicAddress(LPTSTR pszNicAddress, UINT nBufSize);

参数

pszNicAddress 如果函数调用成功,用该参数保存 NIC 地址。

nBufSize pszNicAddress 参数的长度,至少应该为13 或更大。

注释

该函数获取客户机器上网卡的 NIC 地址。调用程序负责分配缓冲接收该地址。所有 NIC 地址为12字节长,所以调用该函数前应该分配至少13个字节以上的空间来容纳该地址。该函数在内部调用 RCP 函数 UuidCreate 或 UuidCreateSequential。这意味着代码不依赖所安装的任何专门的网络协议。如果函数调用成功返回 TRUE,否则返回 FALSE。

GetCDriveSerialNumber

BOOL GetCDriveSerialNumber(LPDWORD pdwSerialNumber);

参数

pdwSerialNumber DWORD 指针,它根据函数的返回值来接收“C”盘的序列号。

注释

如果函数调用成功返回 TRUE,否则返回 FALSE。pdwSerialNumber中的返回值可用“VOL”命令行命令显示出来。对于安全敏感程序,调用该函数可以作为一种次要手段来获得关于客户的确认性信息。

版权声明:

  • 你可以在任何以二进制形式发布的产品(包括商业的、共享的、自由的或其它的)中包含此源代码
  • 在不修改每个模块(*.h、*.cpp)最上方版权细则的前提下,你可以用任何方式修改源代码
  • 如果你想要与自己的应用程序一起分发源代码,只允许分发作者最新发布的版本,以便保证源代码的出处是唯一的。

注意事项:

  • 如果在 Windows 2000 上运行该程序,请用 UuidCreateSequential 调用替换 UuidCreate 调用。

Tags:NIC 硬盘 序列号

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接