[C++] 纯文本查看 复制代码 void newdlg::OnBnClickedButton1()
{
CString str;
GetDlgItemText(IDC_EDIT1, str);
if (str.IsEmpty())
{
MessageBoxA(NULL, "卡密不能为空", "提示框", MB_OK);
return;
}
if (denglu()==true)
{
CDialog::OnOK();
}
else {//
MessageBoxA(NULL, "请输入正确的卡密", "提示框", MB_OK);
return;
}
BOOL newdlg::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: 在此添加额外的初始化
static string versionname = "1.0";
Model::PlatformType platformtypeid = Model::PlatformType::NetVer;
//加密的key;注意:如果软件设置了DES加密通讯那么此值必填(此参数是在软件列表里面进行设置)
string encryptKey = "c24e8e26";
//签名盐(此参数是在软件列表里面进行设置);注意:如果软件设置了加密通讯,那么此值必填
string signSalt = "bd763aea";
//请求接口时,业务数据data参数加密码通讯类型(此参数是在软件列表里面进行设置)
Model::EncryptType encrypttypeid = Model::EncryptType::RC4;
//软件管理-->软件列表,里面找到相对应的softcode,填写到此处
string softcode = "3162b2efd52a500b";
// 个人中心里面可以查看得到。代{过}{滤}理商的话,那么在:代{过}{滤}理管理--》代{过}{滤}理商列表,可以查看得到;
// 注意:如果是作者自己就填写自己的platformUserCode,如果是代{过}{滤}理商的,得填写代{过}{滤}理商的Code
string platformUserCode = "0a3e44db4dbeecad";
//构建初始化软件入参
Model::In_IniSoftInfoArgs IniInfoArgs;
IniInfoArgs.maccode = Help::NetworkVerHelp::GetMac();//必填
IniInfoArgs.timestamp = Help::NetworkVerHelp::GetTimeStamp();//必填
IniInfoArgs.requestflag = to_string(IniInfoArgs.timestamp);//必填
IniInfoArgs.versionname = versionname;//必填
//请求接口,获取初始化软件结果
Model::Result result = Help::NetworkVerHelp::GetIniSoftInfo(IniInfoArgs, platformtypeid, encryptKey, signSalt, encrypttypeid, softcode, platformUserCode);
if (result.code == 0)//初始软件成功
{
SetWindowText(L"连接服务器成功");
}
else
{
SetWindowText(L"连接服务器失败");
}
return TRUE; // return TRUE unless you set the focus to a control
// 异常: OCX 属性页应返回 FALSE
}
bool newdlg::denglu()
{
CString str;
CWnd* cwnd;
cwnd = GetDlgItem(IDC_EDIT1);
cwnd->GetWindowText(str);
string Stdstr = (CW2A(str.GetString()));
Model::In_CardLoginArgs args;
args.maccode = Help::NetworkVerHelp::GetMac();//必填
args.timestamp = Help::NetworkVerHelp::GetTimeStamp();//必填
args.requestflag = to_string(args.timestamp);//必填
args.cardnum = Stdstr;//必填
//请求接口,获取登录结果
Model::Result result = Help::NetworkVerHelp::GetLoginByCard(args);
//Model::Out_Login LoginData = Help::NetworkVerHelp::ConvertLoginData(result.data);
if (result.code == 0)
{
Model::Out_Login LoginData = Help::NetworkVerHelp::ConvertLoginData(result.data);
loginToken = LoginData.token;
heartbeatkey = LoginData.heartbeatkey;
cardEndTime = LoginData.endtime;
CString str(LoginData.endtime.c_str());
MessageBox(TEXT("到期时间:")+str, TEXT("提示框"), MB_OK);
isLogin = true;
return true;
}
else if(result.code != 0)
{
return false;
}
}
BOOL newdlg::PreTranslateMessage(MSG* pMsg)
{
// TODO: 在此添加专用代码和/或调用基类
if (pMsg->message == WM_KEYDOWN)
{
switch (pMsg->wParam)
{
case VK_RETURN: //回车
OnBnClickedButton1();
return TRUE;
case VK_ESCAPE://ESC
if (MessageBox(TEXT("Do you want to exit the program?"), TEXT("Notify"), MB_YESNO) == IDYES)
{
exit(0);
}
return TRUE;
}
}
return CDialog::PreTranslateMessage(pMsg);
}
void newdlg::OnClose()
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
if (!isLogin)
{
exit(0);
}
else
{
CDialog::OnClose();
}
}
|