软件使用权的控制 您所在的位置:网站首页 c语言类的使用程序代码 软件使用权的控制

软件使用权的控制

2024-06-06 12:59| 来源: 网络整理| 查看: 265

         有时候, 自己写了一个软件, 放到网上, 大家都可以使用。但是, 如果要控制别人的使用权, 该怎么办呢?  在本文中, 我们用一个极其简单的例子来说明控制机制。 当然, 如果你的软件写得够好, 有很大的客户需求, 搞一个使用权的控制机制, 说不定可以小小地赚一笔钱呢大笑

 

         我们把这个软件的名称定为Beauty.exe吧, 其源码是(下面的程序只是为了示意, 为了简便起见, 魔鬼数字我就不替换成宏了, 也没有过多考虑空指针等健壮性问题):

 

#include #include #include #include using namespace std; // 获取Beauty.exe所在路径 void getExePath(char *path, int size) { char szBuf[1025] = {0}; GetModuleFileName(NULL, szBuf, sizeof(szBuf)); char *p = strrchr(szBuf, '\\'); *p = '\0'; strncpy(path, szBuf, size - 1); path[size - 1] = '\0'; } // 私有转化算法(不能公开) void privateConvert(char *pStr) { int len = strlen(pStr); int i = 0; for(i = 0; i < len; i++) { pStr[i] = pStr[i] * pStr[i] % 128; // 爱咋写咋写 if('\0' == pStr[i]) { pStr[i] = 1; } } } // Beauty.exe的开始部分 int main() { /* Beauty.exe软件的认证部分, 如果不通过, 则不可以用Beauty.exe */ // 获取Beauty.exe所在目录下的license.txt文件的第一行 char szLicenseFile[2049] = {0}; getExePath(szLicenseFile, sizeof(szLicenseFile)); strcat(szLicenseFile, "\\license.txt"); // strcat不安全哈 // 校验license.txt文件是否存在 ifstream in(szLicenseFile); if(!in) { cout


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有