www.pudn.com > LoadMachineCode111.rar > CommNew.cpp


// CommNew.cpp: implementation of the CCommNew class. 
// 
////////////////////////////////////////////////////////////////////// 
 
#include "stdafx.h" 
#include "loadmachinecode.h" 
#include "CommNew.h" 
#include "ComOperateNew.h" 
 
#ifdef _DEBUG 
#undef THIS_FILE 
static char THIS_FILE[]=__FILE__; 
#define new DEBUG_NEW 
#endif 
 
////////////////////////////////////////////////////////////////////// 
// Construction/Destruction 
////////////////////////////////////////////////////////////////////// 
const int PADDING_LEN =30; //填充位 
const int PAY_CODE_LEN = 20;//支付密码长度 
CComOperateNew m_comnew; 
 
CCommNew::CCommNew() 
{ 
 
} 
 
CCommNew::~CCommNew() 
{ 
 
} 
 
/*	联机计算支付密码,入口参数:PLAIN_TXT:(ACCU,SERVICE,DATE,TICKET_NUM, 
						BANLANCE)	 
	 		 出口参数:PAY_CODE		*/ 
BOOL CCommNew::Conn_Calu(const char *PLAIN_TXT,char *PAY_CODE,int com) 
{ 
	BOOL ret; 
	char send_buffer[PACKLEN]; 
	char rece_buffer[PACKLEN]; 
	char PADDING[PADDING_LEN]; 
 
	memset(send_buffer,0,PACKLEN); 
	memset(rece_buffer,0,PACKLEN); 
 
	memset(PAY_CODE,'\0',PAY_CODE_LEN+1); 
	/*	填充0		*/ 
	memset(PADDING,'0',PADDING_LEN); 
 
	strncpy(send_buffer,PADDING,PADDING_LEN); 
	strncpy(&send_buffer[30],PLAIN_TXT,strlen(PLAIN_TXT)); 
 
	ret=m_comnew.PortRW(CONN_CALU,send_buffer,rece_buffer,com); 
	if (ret!=TRUE)	 
		return ret; 
 
	strncpy(PAY_CODE,rece_buffer,PAY_CODE_LEN); 
 
	return TRUE; 
}