|
쓰레드 내에서 통신이나 데이터베이스나 사용시 넣어주는건데 자세히는 모르지만 초기화 문제라고만 알고있어요
xml을 사용할때도 넣어주는건지는 확실하진 않지만
시작에
CoInitialize( NULL );
를 넣어주고
종료때
CoUninitialize();
를 넣어주시면 됩니다.
초보 님이 쓰신 글 :
: Client 부분
: void __fastcall TForm1::Button1Click(TObject *Sender)
: {
: IdTCPClient1->Connect();
: IdTCPClient1->WriteInteger(Edit1->Text.Length());
: IdTCPClient1->Write(Edit1->Text);
: ListBox1->Items->Add(Edit1->Text);
: IdTCPClient1->Disconnect();
: }
:
: Server부분
: void __fastcall TForm1::IdTCPServer1Execute(TIdPeerThread *AThread)
: {
: int length = AThread->Connection->ReadInteger();
: AnsiString Message = AThread->Connection->ReadString(length);
: ListBox1->Items->Add(Message);
: _di_IXMLmemberType Member = Getmember(XMLDocument1); //error code
: for(int i=0; i<Member->Count; i++)
: {
: for(int j=0; j<Member->ChildNodes->Count; j++)
: {
: if(Member->user[i]->Get_id() == Message)
: {
: ShowMessage(Message);
: }
: }
: }
: AThread->Connection->Disconnect();
: }
:
: error message
: Project Project1.exe raised exception class EOleSysError with message 'CoInitialize가 호출되지 않았습니다.' Process stopped use step or Run to continue.
:
: Client에서 Text를 입력해서 Server의 AnsiString Message로 받아 XML정보에서 Message의 값과 일치하면 Message값을
: 띄우는걸 만들어 본건데요.
: 제가 보기엔 문제가 없는데 처음보는 에러메세지가 떠서요.
: 도와주세요~!
|