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

📄 falcon_jxcdoc.cpp

📁 面向软件工程的Visual C++网络程序开发
💻 CPP
📖 第 1 页 / 共 2 页
字号:
	case 2332:
		AfxMessageBox("成功更新!");
		break;
	case 2923:
		AfxMessageBox("成功删除!");
		break;
	case 2921:
		AfxMessageBox("存储成功!");
		break;
	case 2210:
		AfxMessageBox("存储成功!");
		break;
	case 2222:
		m_b2222=TRUE;
		AfxMessageBox("存储成功!");
		break;
	case 2316:
		AfxMessageBox("成功更新!");
		break;
	case 2810:
		m_b2810=true;
		if(m_pMsg->ShortMessage != "")
			StringSeg(m_pMsg->ShortMessage);
		break;
	case 2811:
		m_b2811=true;
		AfxMessageBox(m_pMsg->ShortMessage);
		break;	
	case 2812:
		m_b2812=true;
		AfxMessageBox(m_pMsg->ShortMessage);
		break;	
	case 2813:
		m_b2813=true;
		AfxMessageBox(m_pMsg->ShortMessage);
		break;	
	case 2814:
		m_b2814=true;
		if(m_pMsg->ShortMessage != "")
			StringSeg(m_pMsg->ShortMessage);
		break;
	case 2110:
		m_b2110=true;
		break;	
	case 2111:
		m_b2111=true;
		AfxMessageBox(m_pMsg->ShortMessage);
		break;	
	case 2120:
		m_b2120=true;
		if(m_pMsg->ShortMessage != "")
			StringSeg(m_pMsg->ShortMessage);
		break;
	case 2410:
		m_b2410=true;
		if(m_pMsg->ShortMessage != "")
			StringSeg(m_pMsg->ShortMessage);
		else
			AfxMessageBox("无订货纪录!");
		break;

	case 2:
		
		break;
	case 3:
		DisplayMsg();
		break;
	case 4:
		DisplayMsg();
		break;
	case 5:

		break;
	case 6:
		break;
	case 9:
		exit(0);
		break;
	case 9999:
		m_pMsg->From = Name;
		m_pMsg->To = Name;
		m_pMsg->Type = 9999;
		m_pMsg->ShortMessage = "Online";
		m_pSocket->SendMsg(m_pMsg);
	default:
//		DisplayMsg();
		break;
	}

}

void CFALCON_JXCDoc::SendMsg(CString strMessage,int Type)
{
/*	CMsgDlg m_dlgMsg;
	m_dlgMsg.m_bSend = TRUE;
	m_dlgMsg.m_strFrom = Name;
	m_dlgMsg.m_strTo = m_pMsg->To;
	if(m_dlgMsg.DoModal() == IDOK)
	{
		

	}*/
	m_pMsg->To=m_pMsg->From=Name;
	m_pMsg->ShortMessage = strMessage ;
	m_pMsg->Type = Type;
	m_pSocket->SendMsg(m_pMsg);

}

void CFALCON_JXCDoc::DisplayMsg()
{
	AfxMessageBox(m_pMsg->ShortMessage);
/*	CMsgDlg m_dlgMsg;
	CString m_strTemp;

	if(m_pMsg->From == "")
		return;
	if(m_pMsg->From == Name)
		return;
	m_strTemp = m_pMsg->From;
	m_dlgMsg.m_bSend = FALSE;
	if(m_pMsg->To == "")
		m_dlgMsg.m_strTo = Name;
	else
	if (m_pMsg->To == "All")
		m_dlgMsg.m_strTo = Name;
	else
		m_dlgMsg.m_strTo = m_pMsg->To;

	m_dlgMsg.m_strMsg = m_pMsg->ShortMessage ;
	m_dlgMsg.m_strFrom = m_pMsg->From ;

	if(m_dlgMsg.DoModal() == IDOK)
	{
		m_pMsg->From = Name;
		//m_pMsg->To = m_dlgMsg.m_strTo ;
		m_pMsg->To = m_strTemp;
		m_pMsg->ShortMessage = m_dlgMsg.m_strMsg ;
		m_pMsg->Type = 3;
		m_pSocket->SendMsg(m_pMsg);
	}
*/
}

BOOL CFALCON_JXCDoc::ConnectToServer()
{
	if (m_bOnline)
		return TRUE;

	m_pSocket = new CServiceSocket(this);

	if (m_pSocket == NULL)
	{
		AfxMessageBox("Couldn't allocate memory for service socket!");
		return FALSE;
	}

	if (!m_pSocket->Create())
	{
		delete m_pSocket;
		m_pSocket = NULL;
		AfxMessageBox("Create Socket Error!");
		return FALSE;
	}
	
	m_pSocket->Name = Name;
	//m_strAddress = "127.0.0.1";
	//m_nPort = 6666;


	while (!m_pSocket->Connect(m_strAddress, m_nPort))
	{
		if (AfxMessageBox("网络不通或超时,重试?",MB_YESNO) == IDNO)
		{

//			delete m_pSocket;
//			exit(0);

			m_pSocket = NULL;
			return FALSE;
		}

	}

	m_pSocket->Init();

	m_pMsg->From = Name;
	m_pMsg->To = "All";
	m_pMsg->Type = 1;
	m_pMsg->ShortMessage = "Login in....";
	
	m_pSocket->SendMsg(m_pMsg);

	m_bOnline = TRUE;

	return TRUE;

}

void CFALCON_JXCDoc::offline()
{
	if (!m_bOnline)
		return;
	m_pSocket->Close();
	if (!m_pSocket)
		delete m_pSocket;
	m_bOnline = FALSE;
}

void CFALCON_JXCDoc::online()
{
	if (!m_bOnline)
	{
		ConnectToServer();
		m_bOnline = TRUE;
	}
}

void CFALCON_JXCDoc::OnServerAddressAndPort() 
{
	// TODO: Add your command handler code here
	CServerAddressandPortSetting sap;
	if(sap.DoModal()==IDOK)
	{
		m_strAddress=sap.m_sServerAddress;
		m_nPort=sap.m_nPort;
	}
}

CString CFALCON_JXCDoc::GetHostAddress()
{	
	char FAR  Name1[255];
	gethostname(Name1,255);
//	HOSTENT* hnet=gethostbyname(Name1);
	CString str=Name1;
	CTime time=CTime::GetCurrentTime( );
	int yy,mm,dd,hh,mi,ss;
	yy=time.GetYear();
	mm=time.GetMonth();
	dd=time.GetDay();
	hh=time.GetHour();
	mi=time.GetMinute();
	ss=time.GetSecond();

	CString str1;
	str1.Format("(%d-%d-%d-%d-%d-%d)",yy,mm,dd,hh,mi,ss);

	return str;
	
}
void CFALCON_JXCDoc::sendcloseMessage()
{

	m_pMsg->From = Name;
	m_pMsg->To = "All";
	m_pMsg->Type = 2;
	m_pMsg->ShortMessage = "Logout";

	m_pSocket->SendMsg(m_pMsg);
	
}

void CFALCON_JXCDoc::StringSeg(CString &strSource,int nNum)
{
	CString str= strSource;

/*	CString strRow,strCol,strTry;

//取命令码
	int i = str.Find(CHARFLAG,0);
	m_strComm = str.Mid(0,i);
//行数
	int j = str.Find(CHARFLAG,i+2);
	strRow  = str.Mid(i+2,j-i-2);
	m_iRow = atoi(strRow);
//列数
	int m = str.Find(CHARFLAG,j+2); 
	strCol  = str.Mid(j+2,m-j-2);
	m_iCol = atoi(strCol);
//具体字段
	int n = m_strComm.GetLength()+strRow.GetLength()+strCol.GetLength()+6;*/
	CString strTry  = strSource;
	if (m_StrArray.GetSize()!=0)
	{
		m_StrArray.RemoveAll();
	}

	m_StrArray.SetSize(nNum);

	int k=0;		
	for (int l=0;l<nNum;l++)
	{
		int	i = strTry.Find(CHARFLAG,k);
		str = strTry.Mid(k,i-k);
		m_StrArray.SetAt(l,str); 
		k = i+2;
	}			

}

void CFALCON_JXCDoc::DeleteContents() 
{
	// TODO: Add your specialized code here and/or call the base class
	if (m_pSocket!= NULL)
	{
		sendcloseMessage();
	}
	COleServerDoc::DeleteContents();
}

// 分割数据字符串
void CFALCON_JXCDoc::StringSeg(CString &strSource)
{
	CString str= strSource;
	CString strRow,strCol,strTry;

//行数
	int j = str.Find(CHARFLAG,0);
	strRow  = str.Mid(0,j);
	m_iRow = atoi(strRow);
//列数
	int m = str.Find(CHARFLAG,j+2); 
	strCol  = str.Mid(j+2,m-j-2);
	m_iCol = atoi(strCol);
//具体字段
	int n = strRow.GetLength()+strCol.GetLength()+4;
	strTry  = str.Right(str.GetLength()-n);

	if (m_StrArray.GetSize()!=0)
	{
		m_StrArray.RemoveAll();
	}

	m_StrArray.SetSize(m_iRow*m_iCol);

	int k=0;		
	for (int l=0;l<m_iRow*m_iCol;l++)
	{
		int i = strTry.Find(CHARFLAG,k);
		str = strTry.Mid(k,i-k);
		m_StrArray.SetAt(l,str); 
		k = i+2;
	}			

}

BOOL CFALCON_JXCDoc::GetQuanXian(CString UserName)
{
//	strInsert+=CHARFLAG;

	if(ConnectToServer())
	{

		SendMsg(UserName,1814);//发送delete
	}
	else
		return false;
b:	if (m_b2814)
	{
		m_b2814 = FALSE;
		if(m_pMsg->ShortMessage!="")
		{
			for(int i=0;i<m_StrArray.GetSize();i++)
				m_sQuanXianArray[i]=(m_StrArray.GetAt(i));
			return true;
		}
		else
		{
			AfxMessageBox("没有此账号!");
			return false;
		}
	}
	else
	{
		ProcessReadMessage();
		goto b;
	}
}

void CFALCON_JXCDoc::OnFileOpen() 
{
	CString strFilter;
	strFilter = _T("所有图象文件( *.fjxc)|*.fjxc|Windows 位图(*.bmp)|*.bmp|所有文件(*.*)|*.*||");
	
	CFileDialog dlg(TRUE, "fjxc", "*.fjxc", OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, (LPCTSTR)strFilter);
	if(dlg.DoModal() == IDCANCEL) return ;	

	CString strFileName=dlg.GetPathName();
	m_pImage->Load(strFileName);
	UpdateAllViews(NULL);
//	m_pMainWnd->SetWindowText("方恒进销存客户端");//-FALCON SOFT
//	m_pMainWnd->ShowWindow(SW_SHOWMAXIMIZED);
}

⌨️ 快捷键说明

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