⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 syssetup.cpp

📁 IP电话计费管理系统本地版
💻 CPP
📖 第 1 页 / 共 2 页
字号:

	cbSize = 100;
    QuerySet = sValue.GetBufferSetLength(cbSize + 1);

	QueryKey(sName, REG_SZ, (BYTE *)QuerySet, cbSize);
    sValue = QuerySet;

	if (sValue.IsEmpty())
		return 0;
	CloseKey();

    return  ::atoi(sValue); 
}


void CSysSetUp::SetStringItem(const CString &sItem, const CString &sKey, const CString &sName)
{
   	OpenKey(HKEY_LOCAL_MACHINE, sKey);
	SetKey(sName, REG_SZ, (LPCTSTR)sItem, sItem.GetLength());
    CloseKey();
}

CString CSysSetUp::GetStringItem(const CString &sKey, const CString &sName)
{
    CString sValue = _T("");
    LPSTR QuerySet = NULL;
	DWORD cbSize;
	OpenKey(HKEY_LOCAL_MACHINE, sKey);
	cbSize = 100;
    QuerySet = sValue.GetBufferSetLength(cbSize + 1);
	QueryKey(sName, REG_SZ, (BYTE *)QuerySet, cbSize);
    sValue = QuerySet;
    return  sValue; 
}

//设置和保存标志位
void CSysSetUp::SetFlag(int nFlag)
{
	SetItem(nFlag, _T("SOFTWARE\\IPCount"), _T("nFlag"));
}

int CSysSetUp::GetFlag()
{
	return GetItem(_T("SOFTWARE\\IPCount"), _T("nFlag"));
}

//设置和保存退出扎帐标志位
void CSysSetUp::SetQuitFlag(int nQuitFlag)
{
	SetItem(nQuitFlag, _T("SOFTWARE\\IPCount"), _T("nQuitFlag"));
}

int CSysSetUp::GetQuitFlag()
{
	return GetItem(_T("SOFTWARE\\IPCount"), _T("nQuitFlag"));
}

//设置和保存立即打印标志位
void CSysSetUp::SetPrintFlag(int nPrintFlag)
{
	SetItem(nPrintFlag, _T("SOFTWARE\\IPCount"), _T("nPrintFlag"));
}

int CSysSetUp::GetPrintFlag()
{
	return GetItem(_T("SOFTWARE\\IPCount"), _T("nPrintFlag"));
}

//设置和保存时段优惠标志位
void CSysSetUp::SetSaleCutFlag(int nSaleCutFlag)
{
	SetItem(nSaleCutFlag, _T("SOFTWARE\\IPCount"), _T("nSaleCutFlag"));
}

int CSysSetUp::GetSaleCutFlag()
{
	return GetItem(_T("SOFTWARE\\IPCount"), _T("nSaleCutFlag"));
}

//设置和保存单联打印标志位
void CSysSetUp::SetPrintOneFlag(int nPrintOneFlag)
{
	SetItem(nPrintOneFlag, _T("SOFTWARE\\IPCount"), _T("nPrintOneFlag"));
}

int CSysSetUp::GetPrintOneFlag()
{
	return GetItem(_T("SOFTWARE\\IPCount"), _T("nPrintOneFlag"));
}

//设置和保存是否配置ODBC
void CSysSetUp::SetODBCFlag(int nODBCFlag)
{
	SetItem(nODBCFlag, _T("SOFTWARE\\IPCount"), _T("nODBCFlag"));
}

int CSysSetUp::GetODBCFlag()
{
	return GetItem(_T("SOFTWARE\\IPCount"), _T("nODBCFlag"));
}
//设置ODBC配置
void CSysSetUp::SetODBCDataSources(const CString &strTitle)
{
	SetStringItem(strTitle, _T("SOFTWARE\\ODBC\\ODBC.INI\\ODBC Data Sources"), _T("IPCount"));
}

void CSysSetUp::SetODBCDBQ(const CString &strTitle)
{
	SetStringItem(strTitle, _T("SOFTWARE\\ODBC\\ODBC.INI\\IPCount"), _T("DBQ"));
}

void CSysSetUp::SetODBCDriver(const CString &strTitle)
{
	SetStringItem(strTitle, _T("SOFTWARE\\ODBC\\ODBC.INI\\IPCount"), _T("Driver"));
}

/*写字符串类型值
void CSysSetUp::SetODBCDriverId(const CString &strTitle)
{
	SetStringItem(strTitle, _T("SOFTWARE\\ODBC\\ODBC.INI\\IPCount"), _T("DriverId"));
}
*/

//写DWORD类型值
void CSysSetUp::SetODBCDriverId(DWORD dwVal)
{
   	OpenKey(HKEY_LOCAL_MACHINE, _T("SOFTWARE\\ODBC\\ODBC.INI\\IPCount"));
	if(::RegSetValueEx(m_hKey,
		_T("DriverId"),
		0,
		REG_DWORD,
		(CONST BYTE*) &dwVal, sizeof(DWORD)) != ERROR_SUCCESS)
	{;}
    CloseKey();
}

void CSysSetUp::SetODBCJet(const CString &strTitle)
{
	SetStringItem(strTitle, _T("SOFTWARE\\ODBC\\ODBC.INI\\IPCount\\Engines\\Jet"), _T("UserCommitSync"));
}

void CSysSetUp::OnRadioDown() 
{
	// TODO: Add your control notification handler code here
	SetRadio(1);
}

void CSysSetUp::OnRadioNodown() 
{
	// TODO: Add your control notification handler code here
	SetRadio(2);
}

//设置和保存选择的radio 号
void CSysSetUp::SetRadio(int nRadioNum)
{
	SetItem(nRadioNum, _T("SOFTWARE\\IPCount"), _T("nRadioNum"));
}

int CSysSetUp::GetRadio()
{
	return GetItem(_T("SOFTWARE\\IPCount"), _T("nRadioNum"));
}

//设置是否允许追加押金
void CSysSetUp::SetAddMoneyFlag(int nAddFlag)
{
	SetItem(nAddFlag, _T("SOFTWARE\\IPCount"), _T("nAddFlag"));
}

int CSysSetUp::GetAddMoneyFlag()
{
	return GetItem(_T("SOFTWARE\\IPCount"), _T("nAddFlag"));
}

//设置是否是无押金模式
void CSysSetUp::SetNoPreMoney(int nNoPreMoney)
{
	SetItem(nNoPreMoney, _T("SOFTWARE\\IPCount"), _T("nNoPreMoney"));
}

int CSysSetUp::GetNoPreMoney()
{
	return GetItem(_T("SOFTWARE\\IPCount"), _T("nNoPreMoney"));
}

//设置流水号
void CSysSetUp::SetTelIndex(const CString &sTelIndex)
{
	SetStringItem(sTelIndex, _T("SOFTWARE\\IPCount"), _T("TelIndex"));
}

CString CSysSetUp::GetTelIndex()
{
	CString sTelIndex = GetStringItem(_T("SOFTWARE\\IPCount"), _T("TelIndex"));
    if (sTelIndex.IsEmpty())
		sTelIndex = _T("00000");
    return sTelIndex;

}

//设置流水号
void CSysSetUp::SetUpSpace(const CString &sUpSpace)
{
	SetStringItem(sUpSpace, _T("SOFTWARE\\IPCount"), _T("UpSpace"));
}

CString CSysSetUp::GetUpSpace()
{
	CString sUpSpace = GetStringItem(_T("SOFTWARE\\IPCount"), _T("UpSpace"));
    if (sUpSpace.IsEmpty())
		sUpSpace = _T("");
    return sUpSpace;

}

//设置程序启动时的日期
void CSysSetUp::SetCurDay(const CString &sCurDay)
{
	SetStringItem(sCurDay, _T("SOFTWARE\\IPCount"), _T("CurDay"));
}

CString CSysSetUp::GetCurDay()
{
	CString sCurDay = GetStringItem(_T("SOFTWARE\\IPCount"), _T("CurDay"));
    return sCurDay;

}

//为每一线设置押金
void CSysSetUp::SetMoneyLine(const CString &strMoney,const CString &strLine)
{
	SetStringItem(strMoney, _T("SOFTWARE\\IPCount"), strLine);
}

CString CSysSetUp::GetMoneyLine(const CString &strLine)
{
	CString strMoney=GetStringItem(_T("SOFTWARE\\IPCount"), strLine);
	if(strMoney.IsEmpty())
		strMoney=_T("100");
	return strMoney;
}


void CSysSetUp::OnCancel() 
{
	// TODO: Add extra cleanup here
	CIPCountDlg *cdlg;
	cdlg=(CIPCountDlg *)GetParent();
	if(cdlg==NULL)
		return;	
	//保存串口设置信息
	UpdateData(TRUE);
 	CString sIniFile = cdlg->GetCurrentPath("IPCount.ini");
	int nGw1Com = atoi(m_strComboGw1);
	int nGw2Com = atoi(m_strComboGw2);

	if (strcmp(m_strComboGw1, m_strComboGw2) == 0)
	{
		AfxMessageBox("请选择不同的端口!");
		return;
	}

    WritePrivateProfileString( "IPCount::Common", "Lines", m_strComboLine/*NULL表示删除*/, sIniFile);
    WritePrivateProfileString( "IPCount::Common", "GW1", m_strComboGw1/*NULL表示删除*/, sIniFile);
    WritePrivateProfileString( "IPCount::Common", "GW2", m_strComboGw2/*NULL表示删除*/, sIniFile);   
    cdlg->nOperateLines = atoi(m_strComboLine);
	cdlg->nGwCom[0] = atoi(m_strComboGw1);
	if (!m_strComboGw2.IsEmpty())
	    cdlg->nGwCom[1] = atoi(m_strComboGw2);

	for (int i=0; i<nMaxPort; i++)
	{
		if (cdlg->nGwCom[i]<100)
		{
			cdlg->bOpenCom[i] = cdlg->InitCom(i+1, cdlg->nGwCom[i]);
			if (cdlg->bOpenCom[i])
			    cdlg->SendData("0d", cdlg->nGwCom[i]);
			//else
			//	return;
		}
	}

	cdlg->bSystem=FALSE;
	CDialog::OnCancel();
	DestroyWindow();
}

void CSysSetUp::OnSysSetup() 
{
	// TODO: Add your control notification handler code here
	CPreMoneySetup pdlg;
	pdlg.DoModal();
}

void CSysSetUp::ResetGrid(int nValue)
{
	for(int nGridCount=1;nGridCount<nValue+1;nGridCount++)
	{
	    m_UserGrid.SetTextMatrix(nGridCount,0,"");
	    m_UserGrid.SetTextMatrix(nGridCount,1,"");
	    m_UserGrid.SetTextMatrix(nGridCount,2,""); 
	}
	
}


void CSysSetUp::OnCheckQuit() 
{
	// TODO: Add your control notification handler code here
	m_bCheckQuit=!m_bCheckQuit;
	if(m_bCheckQuit)
	{
		SetQuitFlag(1);
	}
	else
	{
		SetQuitFlag(0);
	}
}

void CSysSetUp::OnCheckPrint() 
{
	// TODO: Add your control notification handler code here
	m_bCheckPrint=!m_bCheckPrint;
	if(m_bCheckPrint)
	{
		SetPrintFlag(1);
	}
	else
	{
		SetPrintFlag(0);
	}
}

void CSysSetUp::OnButtonPrint() 
{
	// TODO: Add your control notification handler code here
	pdlg->DoModal();
}
void CSysSetUp::ReadFromFile()
{
     SQLHENV henv = NULL;
     SQLHDBC hdbc = NULL;
     BOOL bIsConnected = FALSE;
     SQLHSTMT hstmt = NULL;
     SQLRETURN rc;
     SWORD    sMsgNum = 0;
     SDWORD   pfNative=0;
	 for (int k=0;k<10;k++)
		strLanWidth[k]="";
if (SQL_SUCCESS == (rc =::SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &henv)))
{
  if (SQL_SUCCESS == (rc = ::SQLSetEnvAttr(henv,SQL_ATTR_ODBC_VERSION, (SQLPOINTER) SQL_OV_ODBC3,SQL_IS_INTEGER)))
  {
	  if (SQL_SUCCESS == (rc =::SQLAllocHandle(SQL_HANDLE_DBC, henv, &hdbc)))
	  {
		   rc = ::SQLConnect(hdbc,(SQLCHAR*)"IPCount",SQL_NTS,(SQLCHAR*)"", SQL_NTS, (SQLCHAR*)"", SQL_NTS);
	       if ((SQL_SUCCESS == rc)|| (SQL_SUCCESS_WITH_INFO == rc))
		   {
               bIsConnected = TRUE;
               if (SQL_SUCCESS == (rc =::SQLAllocHandle(SQL_HANDLE_STMT, hdbc, &hstmt)))
			   {
				    CString strChar='\'';

					CString strSQL="";
                    strSQL="select * from PrintTb";
                    LPCSTR szSQL =strSQL; 
                    if (SQL_SUCCESS == (rc = ::SQLPrepare(hstmt,(unsigned char*)szSQL, SQL_NTS)))
					{
                        if (SQL_SUCCESS == (rc = ::SQLExecute(hstmt)))
						{
							SDWORD cb;
                            char sz1[10]="";
							char sz2[10]="";
							char sz3[10]="";
							char sz4[10]="";
							char sz5[10]="";
							char sz6[10]="";
							char sz7[10]="";
							char sz8[10]="";
							char sz9[10]="";
							char sz10[10]="";

			                //SQLBindCol(hstmt,1,SQL_C_CHAR,sz1,10,&cb);
							SQLBindCol(hstmt,2,SQL_C_CHAR,sz2,10,&cb);
							SQLBindCol(hstmt,3,SQL_C_CHAR,sz3,10,&cb);
							SQLBindCol(hstmt,4,SQL_C_CHAR,sz4,10,&cb);
							SQLBindCol(hstmt,5,SQL_C_CHAR,sz5,10,&cb);
							SQLBindCol(hstmt,6,SQL_C_CHAR,sz6,10,&cb);
							SQLBindCol(hstmt,7,SQL_C_CHAR,sz7,10,&cb);
							SQLBindCol(hstmt,8,SQL_C_CHAR,sz8,10,&cb);
							SQLBindCol(hstmt,9,SQL_C_CHAR,sz9,10,&cb);
							SQLBindCol(hstmt,10,SQL_C_CHAR,sz10,10,&cb);
                            
                            rc = SQLFetch(hstmt);	
                            nPrintGridCount=0;
                            while (SQL_SUCCESS == rc)
							{
								 nPrintGridCount++;
                                 //重新初始化每一个变量
								 if(nPrintGridCount==1)
								 {
									 strLanWidth[0]=sz2;
								     strLanWidth[1]=sz3;
								     strLanWidth[2]=sz4;
								     strLanWidth[3]=sz5;
								     strLanWidth[4]=sz6;
								     strLanWidth[5]=sz7;
								     strLanWidth[6]=sz8;
								     strLanWidth[7]=sz9;
								     strLanWidth[8]=sz10;
								 }
								 pdlg->m_PrintGrid.SetTextMatrix(nPrintGridCount,1,sz2);
                                 pdlg->m_PrintGrid.SetTextMatrix(nPrintGridCount,2,sz3);
								 pdlg->m_PrintGrid.SetTextMatrix(nPrintGridCount,3,sz4);
								 pdlg->m_PrintGrid.SetTextMatrix(nPrintGridCount,4,sz5);
								 pdlg->m_PrintGrid.SetTextMatrix(nPrintGridCount,5,sz6);
								 pdlg->m_PrintGrid.SetTextMatrix(nPrintGridCount,6,sz7);
								 pdlg->m_PrintGrid.SetTextMatrix(nPrintGridCount,7,sz8);
								 pdlg->m_PrintGrid.SetTextMatrix(nPrintGridCount,8,sz9);
								 pdlg->m_PrintGrid.SetTextMatrix(nPrintGridCount,9,sz10);
								 
								 strcpy((char *)sz1,LPCTSTR(""));
								 strcpy((char *)sz2,LPCTSTR(""));
								 strcpy((char *)sz3,LPCTSTR(""));
								 strcpy((char *)sz4,LPCTSTR(""));
								 strcpy((char *)sz5,LPCTSTR(""));
								 strcpy((char *)sz6,LPCTSTR(""));
								 strcpy((char *)sz7,LPCTSTR(""));
								 strcpy((char *)sz8,LPCTSTR(""));
								 strcpy((char *)sz9,LPCTSTR(""));
								 strcpy((char *)sz10,LPCTSTR(""));

			                     rc = SQLFetch(hstmt);
							}

						}

					}
				
			   }
     }
    }
   }
  }

 if (henv)
 {
  if (hdbc)
  {
   if (bIsConnected)
   {
    if (hstmt)
	{
     ::SQLFreeHandle(SQL_HANDLE_STMT, hstmt);
	}
     ::SQLDisconnect(hdbc);
     bIsConnected = FALSE;
   }
   ::SQLFreeHandle(SQL_HANDLE_DBC, hdbc);
   hdbc = NULL;
  }
  ::SQLFreeHandle(SQL_HANDLE_ENV, henv);
  henv = NULL;
 }

}

//点击启用优惠时段的check box
void CSysSetUp::OnCheckSalecut() 
{
	// TODO: Add your control notification handler code here
	m_bCheckSaleCut=!m_bCheckSaleCut;
	if(m_bCheckSaleCut)
	{
		SetSaleCutFlag(1);
	}
	else
	{
		SetSaleCutFlag(0);
	}
}

BEGIN_EVENTSINK_MAP(CSysSetUp, CDialog)
    //{{AFX_EVENTSINK_MAP(CSysSetUp)
	ON_EVENT(CSysSetUp, IDC_MSFLEXGRID_USER, -600 /* Click */, OnClickMsflexgridUser, VTS_NONE)
	//}}AFX_EVENTSINK_MAP
END_EVENTSINK_MAP()

void CSysSetUp::OnClickMsflexgridUser() 
{
	// TODO: Add your control notification handler code here
	m_strOName=m_UserGrid.GetTextMatrix(m_UserGrid.GetRow(),0);
	m_strOPswd1=m_strOPswd2=m_UserGrid.GetTextMatrix(m_UserGrid.GetRow(),1);
	m_strLevel=m_UserGrid.GetTextMatrix(m_UserGrid.GetRow(),2);
	UpdateData(FALSE);
}

void CSysSetUp::OnSelchangeComboLine() 
{
	// TODO: Add your control notification handler code here
	int nTempLine =  m_eComboLine.GetCurSel();	
	if (nTempLine >= 1)
		m_eComboGw2.EnableWindow(TRUE);
	else
	    m_eComboGw2.EnableWindow(FALSE);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -