110 lines
2.7 KiB
C++
110 lines
2.7 KiB
C++
#include "stdafx.h"
|
|
#include "LockSrvIPDlg.h"
|
|
#include "CoreTools.h"
|
|
|
|
CLockSrvIPDlg::CLockSrvIPDlg(CWnd* pParent /*=NULL*/)
|
|
: CDialog(CLockSrvIPDlg::IDD, pParent)
|
|
{
|
|
//{{AFX_DATA_INIT(CLockSrvIPDlg)
|
|
//}}AFX_DATA_INIT
|
|
m_nField0 = 0;
|
|
m_nField1 = 0;
|
|
m_nField2 = 0;
|
|
m_nField3 = 0;
|
|
}
|
|
|
|
void CLockSrvIPDlg::DoDataExchange(CDataExchange* pDX)
|
|
{
|
|
CDialog::DoDataExchange(pDX);
|
|
//{{AFX_DATA_MAP(CLockSrvIPDlg)
|
|
//}}AFX_DATA_MAP
|
|
DDX_Control(pDX, IDC_IPADDRESS1, m_wndIPAdr);
|
|
}
|
|
|
|
BEGIN_MESSAGE_MAP(CLockSrvIPDlg, CDialog)
|
|
//{{AFX_MSG_MAP(CLockSrvIPDlg)
|
|
//}}AFX_MSG_MAP
|
|
ON_BN_CLICKED(IDOK, &CLockSrvIPDlg::OnBnClickedOk)
|
|
END_MESSAGE_MAP()
|
|
|
|
BOOL CLockSrvIPDlg::OnInitDialog()
|
|
{
|
|
CDialog::OnInitDialog();
|
|
|
|
//保存到sys目录下
|
|
TCHAR szfileName[MAX_PATH],szFullPath[MAX_PATH];
|
|
GetModuleFileName(_hdllInstance,szfileName,MAX_PATH);
|
|
|
|
TCHAR drive[_MAX_DRIVE] = _T(""),
|
|
dir[_MAX_DIR] = _T(""),
|
|
fname[_MAX_FNAME] = _T(""),
|
|
ext[_MAX_EXT] = _T("");
|
|
|
|
//e:\,program files\autodesk\,myarx,exe
|
|
_tsplitpath(szfileName, drive, dir, fname, ext);
|
|
_tcscpy(szFullPath, drive);
|
|
_tcscat(szFullPath, dir);
|
|
|
|
CString sFullPath = szFullPath;
|
|
sFullPath.TrimRight(_T('\\'));
|
|
|
|
//上一级目录
|
|
int nPos = sFullPath.ReverseFind(_T('\\'));
|
|
CString sPath = sFullPath.Mid(0,nPos + 1);
|
|
sFullPath = sPath + _T("sys\\license.ini");
|
|
|
|
TCHAR szValue[MAX_PATH];
|
|
::GetPrivateProfileString(_T("Product"), _T("Server"), _T(""), szValue, MAX_PATH, sFullPath);
|
|
|
|
CStringArray arFields;
|
|
CoreTools::SplitStrintToArray(szValue,arFields,_T('.'));
|
|
|
|
if (arFields.GetSize() >= 4)
|
|
{
|
|
m_nField0 = _ttoi(arFields.GetAt(0));
|
|
m_nField1 = _ttoi(arFields.GetAt(1));
|
|
m_nField2 = _ttoi(arFields.GetAt(2));
|
|
m_nField3 = _ttoi(arFields.GetAt(3));
|
|
}
|
|
return TRUE;
|
|
}
|
|
|
|
void CLockSrvIPDlg::OnBnClickedOk()
|
|
{
|
|
m_wndIPAdr.GetAddress(m_nField0,m_nField1,m_nField2,m_nField3);
|
|
|
|
if (m_wndIPAdr.IsBlank())
|
|
{
|
|
AfxMessageBox(_T("没有正确填写ip地址!请填写网络锁服务器ip地址!"));
|
|
return;
|
|
}
|
|
|
|
//保存到sys目录下
|
|
TCHAR szfileName[MAX_PATH],szFullPath[MAX_PATH];
|
|
GetModuleFileName(_hdllInstance,szfileName,MAX_PATH);
|
|
|
|
TCHAR drive[_MAX_DRIVE] = _T(""),
|
|
dir[_MAX_DIR] = _T(""),
|
|
fname[_MAX_FNAME] = _T(""),
|
|
ext[_MAX_EXT] = _T("");
|
|
|
|
//e:\,program files\autodesk\,myarx,exe
|
|
_tsplitpath(szfileName, drive, dir, fname, ext);
|
|
_tcscpy(szFullPath, drive);
|
|
_tcscat(szFullPath, dir);
|
|
|
|
CString sFullPath = szFullPath;
|
|
sFullPath.TrimRight(_T('\\'));
|
|
|
|
//上一级目录
|
|
int nPos = sFullPath.ReverseFind(_T('\\'));
|
|
CString sPath = sFullPath.Mid(0,nPos + 1);
|
|
sFullPath = sPath + _T("sys\\license.ini");
|
|
|
|
CString sVal;
|
|
sVal.Format(_T("%d.%d.%d.%d"),m_nField0,m_nField1,m_nField2,m_nField3);
|
|
::WritePrivateProfileString(_T("Product"), _T("Server"),sVal,sFullPath);
|
|
|
|
OnOK();
|
|
}
|