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

📄 heng.c

📁 站长96年写的一个Internet上用的股票行情、分析、交易、资讯程序源码
💻 C
📖 第 1 页 / 共 4 页
字号:
	if(ret==-1)		return ANS_SYS_ERR;	if(ret==-2)		return ANS_SUSP_REQ;	if(ret==-3)		return ANS_NO_PRIV;		if(ReqFile.hf[lpJyDest->zqsid] ==INVALID_HANDLE_VALUE)		return ANS_SYS_ERR;	memset(&ReqBuf,0,rlen);	memset(&Answer,0,sizeof(ANSWER));	ReqBuf.command =8;	ReqBuf.status ='\001';		ReqBuf.request.r_inq_entrust.arg_type ='3';	if(AskWtcx->jys ==0)		strcpy(ReqBuf.request.r_inq_entrust.stock_account,			AskWtcx->gddm);	else		sprintf(ReqBuf.request.r_inq_entrust.stock_account,			"A%s",AskWtcx->gddm);	ReqBuf.request.r_inq_real.exchange_type =		(AskWtcx->jys ==0)?'2':'1';	ReqBuf.request.r_inq_entrust.inquire_mode ='1';//	memset(CommBuffer,' ',*(short *)CommFile.dbfStruct.rlen);//	StringToFld(CommBuffer,CommFile.fldStruct[fld_GDDM],AskWtcx->gddm);//	CommBuffer[*(short*)(CommFile.fldStruct[fld_STKNO].offset)]//		=(AskWtcx->jys ==0)?'Z':'H';                        //	StringToFld(CommBuffer,CommFile.fldStruct[fld_DATE],AskWtcx->wtrq);      //	StringToFld(CommBuffer,CommFile.fldStruct[fld_HTHM],AskWtcx->hthm);      //	CommBuffer[*(short*)(CommFile.fldStruct[fld_ASKNO].offset)]=REQ_WTCX;//	CommBuffer[*(short*)(CommFile.fldStruct[fld_JYMM].offset)]=AskWtcx->cdcx;//	CommBuffer[*(short*)(CommFile.fldStruct[fld_STAT].offset)]=';';//	wsprintf(temp,"%d",sd);//	StringToFld(CommBuffer,CommFile.fldStruct[fld_ADDR],temp);//	wsprintf(temp,"%d",jyNum);//	StringToFld(CommBuffer,CommFile.fldStruct[fld_SERI],temp);	//	ClearAns(lpJyDest);//    wsprintf(temp,"%s%d%s",AnsFile.path[lpJyDest->zqsid],lpJyDest->recNum,".ANS");//    remove(temp);	if(WriteRecord(ReqFile.hf[lpJyDest->zqsid],lpJyDest->recNum,hlen,rlen,		(char *)&ReqBuf)!=0)	{		ErrMsg(NULL, "不能写交换文件!");		return ANS_SYS_ERR;	}	if(ChangeJyDest(sd, lpJyDest, REQ_WTCX, AskWtcx->jys, -1, jyNum) <0)		return ANS_SYS_ERR;	if(fTestJy)	{		Sleep(1000);/*		CommBuffer[*(short*)(CommFile.fldStruct[fld_ANSNO].offset)]=ANS_SUCC;		CommBuffer[*(short*)(CommFile.fldStruct[fld_STAT].offset)]=';';		StringToFld(CommBuffer,CommFile.fldStruct[fld_JYMM],"22");		wsprintf(temp,"%d",jyNum);		StringToFld(CommBuffer,CommFile.fldStruct[fld_SERI],temp);	    WriteRecord(AnsFile.hf[lpJyDest->zqsid],lpJyDest->recNum,hlen,			rlen,CommBuffer);		wsprintf(temp,"%s%d%s",AnsFile.path[lpJyDest->zqsid],lpJyDest->recNum,".ANS");		hFile =OpenFile(temp, &os, OF_CREATE|OF_SHARE_DENY_NONE|OF_WRITE);		if(hFile ==HFILE_ERROR)			return ANS_SYS_ERR;		for(i=0;i<22;i++)		{			CommBuffer[*(short*)(CommFile.fldStruct[fld_ANSNO].offset)]=i-(int)(i/2)*2==0 ?'B':'S';			wsprintf(temp,"%04d",i+1);			StringToFld(CommBuffer,CommFile.fldStruct[fld_GPDM],temp);      			wsprintf(temp,"%8d",(i+1)*100);			StringToFld(CommBuffer,CommFile.fldStruct[fld_WTGS],temp);			wsprintf(temp,"%8d",i+10);			StringToFld(CommBuffer,CommFile.fldStruct[fld_WTJG],temp);      			wsprintf(temp,"%06d",i+100);			StringToFld(CommBuffer,CommFile.fldStruct[fld_HTHM],temp);      			StringToFld(CommBuffer,CommFile.fldStruct[fld_DATE],"111111");      			CommBuffer[*(short*)(CommFile.fldStruct[fld_STAT].offset)]=';';			_lwrite(hFile,&CommBuffer[1], rlen-1);			_lwrite(hFile,"\r\n",2);		}		_lclose(hFile);*/	    WriteRecord(AnsFile.hf[lpJyDest->zqsid],lpJyDest->recNum,			0,sizeof(ANSWER),(char *)&Answer);	}	return 0;}int JyDest_ChkUsr(LPJY_DEST lpJyDest){	BYTE SendBuff[2048];	int ret, len;    JY_ANS_CHKUSR AnsUser;	//ReadRecord(AnsFile.hf[lpJyDest->zqsid],lpJyDest->recNum,hlen,	//	rlen,CommBuffer);	//stat=CommBuffer[*(short*)(CommFile.fldStruct[fld_STAT].offset)];	//if(stat !=';') 	//	return 0;	REQUEST_BUFFER ReqBuf;	ANSWER Answer;	memset(&ReqBuf,0,rlen);	memset(&Answer,0,sizeof(ANSWER));	ReadRecord(ReqFile.hf[lpJyDest->zqsid],lpJyDest->recNum,		hlen,rlen,(char *)&ReqBuf);	if(ReqBuf.status !='\002')		return 0;	if(ReadRecord(AnsFile.hf[lpJyDest->zqsid],lpJyDest->recNum,			0,sizeof(ANSWER),(char *)&Answer)!=0)		ret =-1;	else	{		//if(strncmp(Answer.a_inq_account.status,"000",3) ==0)		ret =ReqBuf.error;		if(ret>=0)		{			//ret =0;			lpJyDest->jyzh =Answer.a_inq_account.fund_account;			lpJyDest->zjye =Answer.a_inq_account.current_balance;			lpJyDest->kyje =Answer.a_inq_account.enable_balance;		}	}	//FldToString(CommBuffer,&CommFile.fldStruct[fld_SERI],temp);		//if(lpJyDest->jyNum!=atoi(temp)) 	//	return 0;	//ret=CommBuffer[*(short*)(CommFile.fldStruct[fld_ANSNO].offset)];	//if(ret==' ')	//	return 0;	if(ret<0)	{		//ret =ANS_SYS_ERR;		switch(ret)		{			case -51:				ret ='1';			break;			case -52:				ret ='6';			break;			default:				ret ='1';		}	}	else ret =ANS_SUCC;	strcpy(SendBuff, JY_CHKUSR_HEAD);	len =strlen(SendBuff);	*(short *)&SendBuff[len] =lpJyDest->jyNum;	len +=sizeof(short);	AnsUser.jys=lpJyDest->curJys;    AnsUser.userId=lpJyDest->userId;	strcpy(AnsUser.gddm,lpJyDest->gddm);	AnsUser.flag=(char)ret;	memcpy(&SendBuff[len],&AnsUser,sizeof(JY_ANS_CHKUSR));	len+=sizeof(AnsUser);	UDP_SendBuff("检查交易用户", lpJyDest->sd, SendBuff, len,NULL);  		lpJyDest->isReqEnd =TRUE;		//ClearReq(lpJyDest);	return 0;}	       int JyDest_ChgPwd(LPJY_DEST lpJyDest){	BYTE SendBuff[100];	int ret,len;	JY_ANS_CHGPWD AnsChgPwd;//	ReadRecord(AnsFile.hf[lpJyDest->zqsid],lpJyDest->recNum,hlen,//		rlen,CommBuffer);//	stat=CommBuffer[*(short*)(CommFile.fldStruct[fld_STAT].offset)];                     //	if(stat !=';') //		return 0;//	FldToString(CommBuffer,&CommFile.fldStruct[fld_SERI],temp);	//	if(lpJyDest->jyNum!=atoi(temp)) //		return 0;////	ret=CommBuffer[*(short*)(CommFile.fldStruct[fld_ANSNO].offset)];//	if(ret==' ')//		return 0;	REQUEST_BUFFER ReqBuf;	ANSWER Answer;	memset(&ReqBuf,0,rlen);	memset(&Answer,0,sizeof(ANSWER));	ReadRecord(ReqFile.hf[lpJyDest->zqsid],lpJyDest->recNum,		hlen,rlen,(char *)&ReqBuf);	if(ReqBuf.status !='\002')		return 0;//	if(ReadRecord(AnsFile.hf[lpJyDest->zqsid],lpJyDest->recNum,//			0,sizeof(ANSWER),(char *)&Answer)!=0)//		ret =-1;//	else 	ret =ReqBuf.error;		if(ret<0)		ret =ANS_SYS_ERR;	else	ret =ANS_SUCC;	AnsChgPwd.flag =(char)ret;	AnsChgPwd.jys =lpJyDest->curJys;		strcpy(SendBuff, JY_CHGPWD_HEAD);	len =strlen(SendBuff);	*(short *)&SendBuff[len] =lpJyDest->jyNum;	len +=sizeof(short);	strcpy(AnsChgPwd.gddm, lpJyDest->gddm);	memcpy(&SendBuff[len], &AnsChgPwd, sizeof(AnsChgPwd));	len +=sizeof(AnsChgPwd);	UDP_SendBuff("修改交易密码", lpJyDest->sd, SendBuff, len, NULL);	lpJyDest->isReqEnd =TRUE;//	ClearReq(lpJyDest);	return 0;}	       int JyDest_BuySell(LPJY_DEST lpJyDest){	char hthm[20];	BYTE SendBuff[100];	int ret, len;    JY_ANS_BUYSELL AnsBuySell; /*	ReadRecord(AnsFile.hf[lpJyDest->zqsid],lpJyDest->recNum,		hlen,rlen,CommBuffer);	stat=CommBuffer[*(short*)(CommFile.fldStruct[fld_STAT].offset)];                     	if(stat !=';') 		return 0;		FldToString(CommBuffer,&CommFile.fldStruct[fld_SERI],temp);		if(lpJyDest->jyNum!=atoi(temp)) 		return 0;	ret=CommBuffer[*(short*)(CommFile.fldStruct[fld_ANSNO].offset)];	if(ret==' ')		return 0;	hthm[0] =0;*/	REQUEST_BUFFER ReqBuf;	ANSWER Answer;	memset(&ReqBuf,0,rlen);	memset(&Answer,0,sizeof(ANSWER));	ReadRecord(ReqFile.hf[lpJyDest->zqsid],lpJyDest->recNum,		hlen,rlen,(char *)&ReqBuf);	if(ReqBuf.status !='\002')		return 0;	if(ReadRecord(AnsFile.hf[lpJyDest->zqsid],lpJyDest->recNum,			0,sizeof(ANSWER),(char *)&Answer)!=0)		ret =-1;	else ret =ReqBuf.error;	if(ret<0)	{		ret =ANS_SYS_ERR;	}	else	{		//FldToString(CommBuffer,&CommFile.fldStruct[fld_HTHM],hthm);		//memset(temp,' ',(short)CommFile.fldStruct[fld_HTHM].wid);		//if(strncmp(hthm,temp,(short)CommFile.fldStruct[fld_HTHM].wid)==0)		//	return 0;		lpJyDest->zjye =Answer.a_ent_enter.current_balance;		lpJyDest->kyje =Answer.a_ent_enter.enable_balance;		sprintf(hthm,"%06d",ret);		ret =ANS_SUCC;	}	AnsBuySell.jys=lpJyDest->curJys;	strcpy(AnsBuySell.gddm,lpJyDest->gddm);	strcpy(AnsBuySell.hthm,hthm);	AnsBuySell.bs=REQ_BUYSEL;	AnsBuySell.flag=(char)ret;	strcpy(SendBuff, JY_BUYSELL_HEAD);	len =strlen(SendBuff);	*(short *)&SendBuff[len] =lpJyDest->jyNum;	len +=sizeof(short);		memcpy(&SendBuff[len],&AnsBuySell,sizeof(AnsBuySell));	len+=sizeof(AnsBuySell);		UDP_SendBuff("买卖委托", lpJyDest->sd, SendBuff, len, NULL);	lpJyDest->isReqEnd =TRUE;	//ClearReq(lpJyDest);	return 0;}	       int JyDest_Cancel(LPJY_DEST lpJyDest){	BYTE SendBuff[600];	int ret,len,retnum;	JY_ANS_CANCEL AnsCancel;/*	ReadRecord(AnsFile.hf[lpJyDest->zqsid],lpJyDest->recNum,		hlen,rlen,CommBuffer);	stat=CommBuffer[*(short*)(CommFile.fldStruct[fld_STAT].offset)];	if(stat!=';') 		return 0;	FldToString(CommBuffer,&CommFile.fldStruct[fld_SERI],temp);		if(lpJyDest->jyNum!=atoi(temp)) 		return 0;	ret=CommBuffer[*(short*)(CommFile.fldStruct[fld_ANSNO].offset)];	if(ret==' ')		return 0;*/	REQUEST_BUFFER ReqBuf;	ANSWER Answer;	memset(&ReqBuf,0,rlen);	memset(&Answer,0,sizeof(ANSWER));    memset(&AnsCancel,0,sizeof(JY_ANS_CANCEL));	ReadRecord(ReqFile.hf[lpJyDest->zqsid],lpJyDest->recNum,		hlen,rlen,(char *)&ReqBuf);	if(ReqBuf.status !='\002')		return 0;	if(ReadRecord(AnsFile.hf[lpJyDest->zqsid],lpJyDest->recNum,			0,sizeof(ANSWER),(char *)&Answer)!=0)		ret =-1;	else ret =ReqBuf.error;	//FldToString(CommBuffer,&CommFile.fldStruct[fld_JYMM],temp);	//memset(tmp,' ',(short)CommFile.fldStruct[fld_JYMM].wid);	//if(ret==ANS_SUCC&&strncmp(temp,tmp,(short)CommFile.fldStruct[fld_JYMM].wid)==0)	//	return 0;	//retnum=atoi(temp);	retnum =1;	if(ret<0)	{		AnsCancel.flag[0] =ANS_SYS_ERR;	}	else	{//		if(retnum==1)//		{//			ret=CommBuffer[*(short*)(CommFile.fldStruct[fld_ANSNO].offset)];					lpJyDest->zjye =Answer.a_ent_cancel.current_balance;		lpJyDest->kyje =Answer.a_ent_cancel.enable_balance;		AnsCancel.flag[0] =ANS_SUCC;//		}/*		else		{			wsprintf(temp,"%s%d%s",AnsFile.path[lpJyDest->zqsid],lpJyDest->recNum,".ANS");			hFile =OpenFile(temp, &os, OF_SHARE_DENY_NONE|OF_READ);			if(hFile ==HFILE_ERROR)				return 0;			i=_llseek(hFile, 0L, FILE_END);			if(i==HFILE_ERROR)			{				_lclose(hFile);				return 0;			}			if((i-1)/(rlen+1)!=retnum)			{				_lclose(hFile);				return 0;			}			_llseek(hFile, 0L, FILE_BEGIN);			for(i =0; i<retnum; i++)			{				if((short)_lread(hFile,&CommBuffer[1],rlen -1)!=rlen -1)					break;				ret=CommBuffer[*(int*)(CommFile.fldStruct[fld_ANSNO].offset)];						AnsCancel.flag[i] =ret;				_llseek(hFile, 2L, FILE_CURRENT);			}			_lclose(hFile);			remove(temp);		}*/	}	AnsCancel.jys =lpJyDest->curJys;	strcpy(AnsCancel.gddm, lpJyDest->gddm);		strcpy(SendBuff, JY_CANCEL_HEAD);	len =strlen(SendBuff);	*(short *)&SendBuff[len] =lpJyDest->jyNum;	len +=sizeof(short);	memcpy(&SendBuff[len], &AnsCancel, sizeof(AnsCancel));	len +=sizeof(AnsCancel);	UDP_SendBuff("撤消委托", lpJyDest->sd, SendBuff, len,NULL);	lpJyDest->isReqEnd =TRUE;//	ClearReq(lpJyDest);	return 0;}	       int JyDest_Yecx(LPJY_DEST lpJyDest){	JY_ANS_YECX AnsYecx;	int ret, i,retnum;//	ReadRecord(AnsFile.hf[lpJyDest->zqsid],lpJyDest->recNum,//		hlen,rlen,CommBuffer);//	stat=CommBuffer[*(short*)(CommFile.fldStruct[fld_STAT].offset)];                     //	if(stat !=';') //		return 0;//	FldToString(CommBuffer,&CommFile.fldStruct[fld_SERI],temp);	//	if(lpJyDest->jyNum!=atoi(temp)) //		return 0;//	ret=CommBuffer[*(short*)(CommFile.fldStruct[fld_ANSNO].offset)];//	if(ret==' ')//		return 0;//	FldToString(CommBuffer,&CommFile.fldStruct[fld_JYMM],temp);//	memset(tmp,' ',(short)CommFile.fldStruct[fld_JYMM].wid);//	if(ret==ANS_SUCC&&strncmp(temp,tmp,(short)CommFile.fldStruct[fld_JYMM].wid)==0)//		return 0;//	retnum=atoi(temp);//	if(ret==ANS_SUCC&&retnum>0)//	{//		wsprintf(tmp,"%s%d%s",AnsFile.path[lpJyDest->zqsid],lpJyDest->recNum,".ANS");//		hFile =OpenFile(tmp, &os, OF_SHARE_DENY_NONE|OF_READ);////		if(hFile ==HFILE_ERROR)//			return 0;////		i=_llseek(hFile, 0L, FILE_END);//		if(i==HFILE_ERROR)//		{//			_lclose(hFile);//			return 0;//		}//		if((i)/(rlen+1)<retnum)//		{//			_lclose(hFile);//			return 0;//		}//		_llseek(hFile, 0L, FILE_BEGIN);//	}	REQUEST_BUFFER ReqBuf;	ANSWER Answer;	memset(&ReqBuf,0,rlen);	memset(&Answer,0,sizeof(Answer));	ReadRecord(ReqFile.hf[lpJyDest->zqsid],lpJyDest->recNum,		hlen,rlen,(char *)&ReqBuf);	if(ReqBuf.status !='\002')		return 0;	ReadRecord(AnsFile.hf[lpJyDest->zqsid],lpJyDest->recNum,		0,sizeof(ANSWER),(char *)&Answer);	ret =ReqBuf.error;	AnsYecx.kys=lpJyDest->kyje;	AnsYecx.zjye=lpJyDest->zjye;	if(ret>=0)	{

⌨️ 快捷键说明

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