当前位置: 首页 > news >正文

建设景区网站推文公司产品宣传画册设计

建设景区网站推文,公司产品宣传画册设计,网站建设哪里可以学,建设银行人力资源招聘网站我们在写软件的时候,希望我们的软件只在固定的机器上运行,其他机器上运行不了,那我们应该如何做呢? 1 首先我们需要得到运行机器的mac地址,这样可以简易的判断是否是我们授权的机器。 那我们首先定义一个授权mac机器…

我们在写软件的时候,希望我们的软件只在固定的机器上运行,其他机器上运行不了,那我们应该如何做呢?

1 首先我们需要得到运行机器的mac地址,这样可以简易的判断是否是我们授权的机器。

那我们首先定义一个授权mac机器列表

QStringList listMac;
listMac<<"8C:EC:4B:C9:CE:AC"<<"9C:EC:4B:C9:CE:AC"<<"7C:EC:4B:C9:CE:AC";这部也可以修改为读取远端数据库,其他方法可以自己按照自己情况考虑。

2 读取本机的mac信息,判断本机的mac是否在授权范围内。

3 读取注册表里面软件使用信息,我们可以用时间来判断是否过了有效期,加入第一次使用,注册表里面写入注册时间,下次进来对比当前时间和注册时间之间的差值,是否过了有效期。

4 对注册表的注册信息进行base64编码。

下面上代码:

#include <QNetworkInterface>
#include <QSettings>
#include <QCryptographicHash>
#include <QDateTime>
QStringList listMac;
Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);listMac<<"8C:EC:4B:C9:CE:AC";ReadLocalInfo();
}Widget::~Widget()
{delete ui;
}QString Widget::ReadSystemTable()
{QString info;//通过写入注册表来判断QSettings settings("HKEY_CURRENT_USER\\Software\\Code_Encryption\\Settings",QSettings::NativeFormat);info = settings.value("remain_times").toString();return info;}
void Widget::WriteSystemTable()
{}
void Widget::ReadLocalInfo()
{QString macAddress;QList<QNetworkInterface> allInterfaces = QNetworkInterface::allInterfaces();for (auto &interface : allInterfaces) {// 通常, 我们选择第一个非虚拟和非回环接口if (interface.flags().testFlag(QNetworkInterface::IsUp) &&!interface.flags().testFlag(QNetworkInterface::IsLoopBack)) {macAddress = interface.hardwareAddress();m_MacAddress = macAddress;break;}}if(!listMac.contains(macAddress)){qApp->exit();}m_nCount = ReadSystemTable();AnalysisLocalInfo();
}
void Widget::AnalysisLocalInfo()
{if(m_nCount.isEmpty()){QByteArray strInfo;QDateTime currentData = QDateTime::currentDateTime();QString strTemp = m_MacAddress+"|"+currentData.toString("yyyy-MM-dd hh:mm:ss");strInfo = strTemp.toLocal8Bit();strInfo = strInfo.toBase64();QSettings settings("HKEY_CURRENT_USER\\Software\\Code_Encryption\\Settings",QSettings::NativeFormat);settings.setValue("remain_times",strInfo);}else{QByteArray strInfo = QByteArray::fromBase64(m_nCount.toLocal8Bit());QList<QByteArray> listInfo = strInfo.split('|');QDateTime lastData = QDateTime::fromString((QString)listInfo.at(1),"yyyy-MM-dd hh:mm:ss");QDateTime currentData = QDateTime::currentDateTime();if(currentData.secsTo(lastData)>=86400){qApp->exit();}qDebug()<<"lastData"<<lastData.toString("yyyy-MM-dd hh:mm:ss")<<"currentData"<<currentData.toString("yyyy-MM-dd hh:mm:ss");}}

http://www.yayakq.cn/news/253722/

相关文章:

  • 个人博客网站html模板安徽省建设厅质量监督站网站
  • 网站建设方案ppt 枫子科技优秀品牌vi设计公司
  • 南京做网站南京乐识好科技有限公司 网站制作
  • 如何做搜索网站哈尔滨关键词优化报价
  • 网站建设7个基本流程图营业执照网上查询官网
  • 合肥网站建设方案维护视频交易类网页
  • 新上线的网站怎么做优化山东定制版网站建设公司
  • 哈尔滨网站建设吧wordpress腾讯云 COS
  • 太仓做网站的 太仓越秀网站建设推广
  • 网站建设上市苏州兼职网站开发
  • 自己有网站怎么推广网页制作与网站建设课堂实录
  • 手机上的软件网站建设如何建设网站论文文献
  • 开发工具和开发平台郑州企业网站seo
  • 中国石油工程建设协会网站搜狗收录提交申请
  • 哈尔滨制作企业网站门户网站建设公司流程
  • 局网站信息内容建设 自查报告快手短视频小程序
  • 网站服务器租赁需要什么手续彩灯制作公司
  • 做期货浏览哪些网站卡二卡三卡四精品
  • 润东电子科技 网站建设做电影网站要多少钱
  • 专利协会网站建设方案汽车公司网站建设
  • 怎样接做网站和软件的活励志故事网站源码
  • 重庆网站建设培训效果好的徐州网站建设
  • 石家庄建站源码如何配置php网站
  • 第二章营销型网站建设测验wordpress logy
  • 成都市青羊区城乡建设局网站东平做网站
  • 从您的角度来看_对于农产品网站的建设有什么想法或建议呢?wordpress怎么做链接
  • 网站建设后期服务协议产品推广词
  • 商城站地址黑龙江省和城乡建设厅网站
  • 是网站建设专业seo网站优化推广排名教程
  • 网站 wap大气网站背景图