• 大小: 10KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-06-15
  • 语言: C/C++
  • 标签: NetworkCfg  wmi  WinCE  

资源简介

c++封装好的IP的获取和修改源码,通过NetworkCfg和wmi方式,支持Windows和WinCE系统,实际测试结果准确,使用简单

资源截图

代码片段和文件信息

#include “IPConfig.h“ 
#include “UCFileDefine.h“
using namespace E9_IO_File;

IPConfigRun::IPConfigRun()
{
pDlgResult = NULL;
iNetIndex = 0;
OperateType=-1;
NetworkCfgLst.clear();
}

IPConfigRun::~IPConfigRun(){}

void IPConfigRun::run()
{
if (pDlgResult)
{
if (OperateType == 0)
{
((IPConfig*)pDlgResult)->EmitResult(0 ipInfoFunction.GetNetworkCfg(NetworkCfgLst));
}
else if (OperateType == 1)
{
#ifdef E9_TRACK_WINDOWS //PC端
((IPConfig*)pDlgResult)->EmitResult(1 ipInfoFunction.ModifyIP(iNetIndex E9_QSTRTOWSTR(qsValueLst[0]).c_str() E9_QSTRTOWSTR(qsValueLst[1]).c_str() E9_QSTRTOWSTR(qsValueLst[2]).c_str()));
#else//CE端
((IPConfig*)pDlgResult)->EmitResult(1 ipInfoFunction.RegIP(qsValueLst));
#endif
}
}
}

void IPConfigRun::GetNetworkCfg()
{
OperateType = 0;
start();
}

//控件的排版
void IPConfigRun::ArrangeCtrl()
{

}

void IPConfigRun::UpDateIP(QStringList valueLst)//CE
{
OperateType = 1;
qsValueLst = valueLst;
start();
}

void IPConfigRun::UpDateIP(int iIndex QStringList valueLst)//PC
{
OperateType = 1;
iNetIndex = iIndex;
qsValueLst = valueLst;
start();
}

void IPConfigRun::BuildResultInterface(IBasicUI* pDlg)
{
pDlgResult = pDlg;
}

IPConfig::IPConfig(QWidget *parent /*= 0*/) :IBasicUI(parent)
{
setWindowtitle(TRANS_STR(“SYSSET/IPConfig“));
setWindowFlags(windowFlags()&~Qt::WindowContextHelpButtonHint&~Qt::WindowOkButtonHint);
iPConfigRun.BuildResultInterface(this);
QVBoxLayout* vBoxLytAll = new QVBoxLayout(this);

comNetCard = new QComboBox(this);//网卡

QVBoxLayout* vBoxLytIP = new QVBoxLayout(this);
QHBoxLayout* hBoxLytUp = new QHBoxLayout(this);
QHBoxLayout* hBoxLytMid = new QHBoxLayout(this);
QHBoxLayout* hBoxLytDown = new QHBoxLayout(this);
vBoxLytIP->addLayout(hBoxLytUp);
vBoxLytIP->addLayout(hBoxLytMid);
vBoxLytIP->addLayout(hBoxLytDown);
QVBoxLayout* vBoxLytDNS = new QVBoxLayout(this);
QHBoxLayout* hBoxLytTop = new QHBoxLayout(this);
QHBoxLayout* hBoxLytBottom = new QHBoxLayout(this);
vBoxLytDNS->addLayout(hBoxLytTop);
vBoxLytDNS->addLayout(hBoxLytBottom);
QHBoxLayout* hBoxLytOK = new QHBoxLayout(this);

grpIPSet = new E9GroupBox(“IP“ this);//IP设置
labIP=new E9Label(“  IP:“““this);
labCode = new E9Label(TRANS_STR(“SYSSET/SubnetCode“) + “:“ ““this);//掩码
labGateway = new E9Label(TRANS_STR(“SYSSET/Gateway“) + “:“““ this);//网关
edtIP=new E9LineEdit(this);
edtCode = new E9LineEdit(this);
edtGateway = new E9LineEdit(this);
grpIPSet->setLayout(vBoxLytIP);
hBoxLytUp->addWidget(labIP);
hBoxLytUp->addWidget(edtIP);
hBoxLytMid->addWidget(labCode);
hBoxLytMid->addWidget(edtCode);
hBoxLytDown->addWidget(labGateway);
hBoxLytDown->addWidget(edtGateway);

grpDNSSet = new E9GroupBox(“DNS“ this);//DNS设置
labDNS = new E9Label(TRANS_STR(“SYSSET/FirstDNS“) + “:“““ this);//首选
labDNSSpare = new E9Label(TRANS_STR(“SYSSET/DNSSpare“) + “:“““ this);//备用
edtDNS = new E9LineEdit(t

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-08-28 11:29  IP获取与修改封装\
     文件        6907  2017-10-11 10:22  IP获取与修改封装\IPConfig.cpp
     文件        1575  2017-10-11 10:00  IP获取与修改封装\IPConfig.h
     文件       25011  2016-11-15 17:53  IP获取与修改封装\wmi.cpp
     文件        2945  2016-11-15 17:53  IP获取与修改封装\wmi.h

评论

共有 条评论