|
죄송하지만... 조금더 구체적으로 설명해주실 수 있을까요..
깊게 공부를 못한터라 어느 부분을 공부하면 좋을까요 ?
객체 생성부분이 없다는건 어떤 객체를 TIdPeerThread의 객체생성인가요?
try{
for(Loop = 0; Loop<List->Count; Loop++){
AThread = (TIdPeerThread *) List->Items[Loop];
AThread->Connection->WriteLn(shiftWork.STX+shiftWork.Line+shiftWork.From+shiftWork.To+shiftWork.Command+shiftWork.SendTime+shiftWork.ResultCode+
shiftWork.Size+shiftWork.HeaderEnd+shiftWork.StnId+shiftWork.McPort+shiftWork.Worker+shiftWork.MegId +shiftWork.ExWorker+shiftWork.ETX);
}
}__finally{
IdTCPServer1->Threads->UnlockList();
}
이런식으로 구성하여서 했더니 버튼을 눌렀을때 동작을 합니다. 일반 함수내부에서 사용하려고 했을때 입니다. 이렇게 하니
또 똑같은 오류가 이쪽에서 발생을 합니다.........하................................ 아는분의 조언으로 만든건대 아무 뜻도 모르고 만든거라
List->Count와 List->Items는 어떤역할을 하는건가요? 해석좀.....부탁드리겠습니다.
oid __fastcall TPBCICT::Helpme(int y)
{
int Loop;
TList *List;
TIdPeerThread *AT;
try{
for(Loop = 0; Loop<List->Count; Loop++){
AT = (TIdPeerThread *) List->Items[Loop];
AT->Connection->WriteLn(GetInfo("Common","STX")+GetInfo("Common","line")+GetInfo("Common","myid")+GetInfo("Input","To")+GetInfo("Result","Command")+
GetInfo("Common","SendTime")+GetInfo("Result","ResultCode")+GetInfo("TimeSet","Size")+GetInfo("Common","HeaderEnd")+GetInfo("Input","StnId")+
GetInfo("Common","McPort")+GetInfo("Common","Worker")+GetInfo("Result",BarcodeSection[y])+GetInfo("Input","ICTModel")+
GetInfo("Result","TestStartTime")+"^^^^^^^^^^"+GetInfo("Result","PCMCount")+GetInfo("Result","InspResult")+GetInfo("Result","PCMTestTime")+
"^^"+GetInfo("Result","ItemCount")+GetInfo("Common","ETX"));
}
}__finally{
IdTCPServer1->Threads->UnlockList();
}
Intotheblue 님이 쓰신 글 :
: 님 코드 보면..
: athread 를 선언만 하고.. 객체 생성하는 부분이 없네요.
: 당연히 에라가 날수 밖에 없죠.
:
: 앱돌이 님이 쓰신 글 :
: : 이런식으로 AThread를 써서 송신을 하려고하는대요 자꾸 violation오류가 생깁니다. 화살표 되있는 부분에서
: :
: : 왜 에러가 생기고 해결방법좀 알려주세요 고수님들 부탁드립니다. ㅜ.ㅠ
: :
: :
: : void __fastcall TPBCICT::Button3Click(TObject *Sender)
: : {
: :
: : TIdPeerThread *AThread;
: : struct MES shiftWork;
: :
: : SaveInfo("shiftWork",Edit8->Text,"ExWorker");
: : SaveInfo("Common",SendTime,"SendTime");
: : shiftWork.STX = GetInfo("Common","STX");
: : shiftWork.Line = GetInfo("Common","line");
: : shiftWork.From = GetInfo("Common","myid");
: : shiftWork.McPort = GetInfo("Common","McPort");
: : shiftWork.To = GetInfo("Input","To");
: : shiftWork.Command = GetInfo("shiftwork","Command");
: : shiftWork.SendTime = GetInfo("Common","SendTime");
: : shiftWork.ResultCode = GetInfo("shiftwork","ResultCode");
: : shiftWork.Size = GetInfo("shiftwork","Size");
: : shiftWork.HeaderEnd = GetInfo("Common","HeaderEnd");
: : shiftWork.StnId = GetInfo("Common","StnId");
: : shiftWork.McPort = GetInfo("Common","McPort");
: : shiftWork.MegId = GetInfo("shiftwork","MegId");
: : shiftWork.ExWorker = GetInfo("shiftWork","ExWorker");
: : shiftWork.ETX = GetInfo("Common","ETX");
: : ---->AThread->Connection->WriteLn(shiftWork.STX+shiftWork.Line+shiftWork.From+shiftWork.To+shiftWork.Command+shiftWork.SendTime+shiftWork.ResultCode+
: : shiftWork.Size+shiftWork.HeaderEnd+shiftWork.StnId+shiftWork.McPort+shiftWork.Worker+shiftWork.MegId +shiftWork.ExWorker+shiftWork.ETX);
: :
: : if(shiftWork.Worker != shiftWork.ExWorker){
: : Edit13->Text = "0";
: : }
: : SaveInfo("Common",shiftWork.ExWorker,"Worker");
: :
: : }
|