📄 simsimensdoc.cpp
字号:
{
rt_number++;
if((rt_number<TXA)&&(bcc!=char(DLE)))
{
SmallReturnIdle();
SetTString();
Transmit();
}
else
{
Show_TXA_OVER_T_TEXT();
Write(char(NAK));
Show_T_NAK();
EmptyTempStr();
LargeReturnIdle();
LinkError();
}
return;
}
void CSimSimensDoc::ReadDLE_1()
{
char c=NULL;
c=Read();
if(c==char(DLE))
{
Show_R_DLE();
WriteText();
m_nWriteStep=1;
}
else
{
if(c==char(STX))
{
Show_R_STX();
if(!priority)
{
Write(char(DLE));
Show_T_DLE();
m_nStatus=0;
m_nReadStep=1;
m_nWriteStep=0;
}
}
else
{
Show_R_OTHER();
Transmit();
rt_STX_number++;
}
}
if(rt_STX_number>TXA)
{
Show_TXA_OVER_STX();
EmptyTempStr();
LargeReturnIdle();
LinkError();
}
return;
}
void CSimSimensDoc::ReadDLE_2()
{
char c=NULL;
c=Read();
if(c==char(DLE))
{
Show_R_DLE();
Show_T_TEXT_SUCCESS();
EmptyTempStr();
LargeReturnIdle();
if(is_replace)
{
if(replace_arr.GetSize()!=0)
{
ReplaceData(replace_arr.GetAt(0));
replace_arr.RemoveAt(0);
}
else
is_replace=false;
}
}
else
{
Show_R_OTHER();
Show_T_TEXT_UNSUCCESS();
ReTransmit();
}
return;
}
void CSimSimensDoc::ReadSTX()
{
char c=NULL;
c=Read();
if(c==char(STX))
{
EmptyRString();
Show_R_STX();
Write(char(DLE));
Show_T_DLE();
m_nReadStep=1;
}
else
{
if(c==char(NAK))
LargeReturnIdle();
else
{
Show_R_OTHER();
::Sleep(ZVZ);
Show_ZVZ_WAIT();
Write(char(NAK));
Show_T_NAK();
SmallReturnIdle();
}
}
return;
}
void CSimSimensDoc::ReadText()
{
COMSTAT ComStat;
DWORD dwErrorFlags;
char c=NULL;
c=Read();
if(ClearCommError(m_hCom,&dwErrorFlags,&ComStat))
no_error=true;//?
if(c==char(DLE))
m_nReadStep=2;
else
{
rc=c;
receive_str[receive_number]=c;
receive_number++;
}
if(OutTime(ZVZ))
{
Show_ZVZ_OUTTIME();
Write(char(NAK));
Show_T_NAK();
rr_number++;
SmallReturnIdle();
}
if(rr_number>TXA)
{
Show_TXA_OVER_R_TEXT();
LargeReturnIdle();
LinkError();
}
return;
}
void CSimSimensDoc::ReadETX()
{
COMSTAT ComStat;
DWORD dwErrorFlags;
char c=NULL;
c=Read();
if(ClearCommError(m_hCom,&dwErrorFlags,&ComStat))
no_error=true;//?
if(c==char(DLE))
{
rc=c;
receive_str[receive_number]=c;
receive_number++;
m_nReadStep=1;
}
else
{
if(c==char(ETX))
{
receive_str[receive_number]=char(DLE);
receive_number++;
receive_str[receive_number]=char(ETX);
receive_number++;
m_nReadStep=3;
}
else
{
Show_R_OTHER();
no_error=false;
m_nReadStep=1;
}
}
if(OutTime(ZVZ))
{
Show_ZVZ_OUTTIME();
Write(char(NAK));
Show_T_NAK();
rr_number++;
SmallReturnIdle();
}
if(rr_number>TXA)
{
Show_TXA_OVER_R_TEXT();
LargeReturnIdle();
LinkError();
}
return;
}
void CSimSimensDoc::ReadBCC()
{
COMSTAT ComStat;
DWORD dwErrorFlags;
char c=NULL;
bool b=false;
c=Read();
if(ClearCommError(m_hCom,&dwErrorFlags,&ComStat))
no_error=true;//?
Show_R_DLEETXBCC();
b=CheckBCC(c);
if(b)
{
Show_CHECKBCC_SUCCESS();
b=no_error;
if(b)
{
Show_CHECK_SUCCESS();
Show_R_TEXT_SUCCESS();
Write(char(DLE));
Show_T_DLE();
if(receive_str[0]=='R')
is_replace=true;
else
LargeReturnIdle();
if(is_replace)
{
LargeReturnIdle();
if(replace_arr.GetSize()!=0)
{
ReplaceData(replace_arr.GetAt(0));
replace_arr.RemoveAt(0);
}
else
is_replace=false;
}
}
else
{
Show_CHECK_UNSUCCESS();
Show_R_TEXT_UNSUCCESS();
rr_number++;
if(rr_number>TXA)
{
Show_TXA_OVER_R_TEXT();
LargeReturnIdle();
LinkError();
}
else
{
Write(char(NAK));
Show_T_NAK();
SmallReturnIdle();
}
}
}
else
{
Show_CHECKBCC_UNSUCCESS();
Show_R_TEXT_UNSUCCESS();
rr_number++;
if(rr_number>TXA)
{
Show_TXA_OVER_R_TEXT();
LargeReturnIdle();
LinkError();
}
else
{
Write(char(NAK));
Show_T_NAK();
SmallReturnIdle();
}
}
return;
}
void CSimSimensDoc::ReadComm()
{
switch(m_nStatus)
{
case 0:
switch(m_nReadStep)
{
case 0:
ReadSTX();
break;
case 1:
ReadText();
break;
case 2:
ReadETX();
break;
case 3:
ReadBCC();
break;
default:;
}
break;
case 1:
switch(m_nWriteStep)
{
case 0:
ReadDLE_1();
break;
case 1:
ReadDLE_2();
break;
default:;
}
break;
default:;
}
return;
}
void CSimSimensDoc::Show_T_STX()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_T_STX);
}
void CSimSimensDoc::Show_T_DLE()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_T_DLE);
}
void CSimSimensDoc::Show_T_NAK()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_T_NAK);
}
void CSimSimensDoc::Show_T_DLEETXBCC()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_T_DLEETXBCC);
}
void CSimSimensDoc::Show_R_STX()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_R_STX);
}
void CSimSimensDoc::Show_R_DLE()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_R_DLE);
}
void CSimSimensDoc::Show_R_NAK()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_R_NAK);
}
void CSimSimensDoc::Show_R_DLEETXBCC()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_R_DLEETXBCC);
}
void CSimSimensDoc::Show_ZVZ_OUTTIME()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_ZVZ_OUTTIME);
}
void CSimSimensDoc::Show_QVZ_OUTTIME()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_QVZ_OUTTIME);
}
void CSimSimensDoc::Show_BWA_OUTTIME()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_BWA_OUTTIME);
}
void CSimSimensDoc::Show_ZVZ_WAIT()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_ZVZ_WAIT);
}
void CSimSimensDoc::Show_TXA_OVER_STX()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_TXA_OVER_STX);
}
void CSimSimensDoc::Show_TXA_OVER_T_TEXT()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_TXA_OVER_T_TEXT);
}
void CSimSimensDoc::Show_TXA_OVER_R_TEXT()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_TXA_OVER_R_TEXT);
}
void CSimSimensDoc::Show_T_TEXT_SUCCESS()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_T_TEXT_SUCCESS);
}
void CSimSimensDoc::Show_T_TEXT_UNSUCCESS()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_T_TEXT_UNSUCCESS);
}
void CSimSimensDoc::Show_R_TEXT_SUCCESS()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_R_TEXT_SUCCESS);
}
void CSimSimensDoc::Show_R_TEXT_UNSUCCESS()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_R_TEXT_UNSUCCESS);
}
void CSimSimensDoc::Show_CHECKBCC_SUCCESS()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_CHECKBCC_SUCCESS);
}
void CSimSimensDoc::Show_CHECKBCC_UNSUCCESS()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_CHECKBCC_UNSUCCESS);
}
void CSimSimensDoc::Show_CHECK_SUCCESS()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_CHECK_SUCCESS);
}
void CSimSimensDoc::Show_CHECK_UNSUCCESS()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_CHECK_UNSUCCESS);
}
void CSimSimensDoc::Show_R_OTHER()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_R_OTHER);
}
void CSimSimensDoc::Show_T_A()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_T_A);
}
void CSimSimensDoc::Show_R_A()
{
POSITION firstViewPos;
CView * pView;
firstViewPos=GetFirstViewPosition();
pView=GetNextView(firstViewPos);
pView->SendMessage(WM_SHOW_R_A);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -