칸나기 님이 쓰신 글 :
: 이제 보름 정도 c++ 빌더를 한 초보 입니다.
: 시리얼 통신 프로그램을 이용한 간단한 프로그램을 제작하는데
: 텍스트에 저장된 내용을 시리얼 통신을 통해 보내는 법을 알고 싶습니다.
:
: 컴포넌트는 자료실에 있는 U&I-Serial을 사용했습니다
:
: 도와주세요ㅜ.ㅜ
:
: 만약에 텍스트에
: 1
: 2
: 3
:
: 이렇게 저장되있으면
:
: 클라이언트 메모박스에
: 1,2,3
: 이렇게 보이도록 하는 방법좀 알려주세요
========================================================================
정확한 답인지는 모르겠습니다. 저도 엄청난 초보라서요.
우선
http://cbuilder.borlandforum.com/impboard/impboard.dll?action=read&db=bcb_tutorial&no=21를
보시고시리얼포트를 만들어서 상대방컴퓨터와 제컴퓨터를 연결을 해줍니다.
그리고 ComPort1를 연결하시고
아래와 같이 메모장 두개와 Edit1 버튼을 만듬니다.
void __fastcall TForm1::Button1Click(TObject *Sender)
{
ComPort1->WriteStr(Edit1->Text); //보내는 명령어 WritesStr
Memo1->Lines->Add(">>" + Edit1->Text);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
ComPort1->Open();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ComPort1RxChar(TObject *Sender, int Count)
{
String strTemp; //문자형변수선언
ComPort1->ReadStr( strTemp, Count ); //읽어오는명령어 ReadStr (변수에 너어주고 카운터길이)
Memo2->Lines->Add( strTemp);
=======================================================================================
상대방 컴퓨터에는 소스가 약간 틀립니다.
void __fastcall TForm1::Button1Click(TObject *Sender)
{
ComPort1->WriteStr(Edit1->Text); //보내는 명령어 WritesStr
Memo1->Lines->Add(">>" + Edit1->Text);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
ComPort1->Open();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ComPort1RxChar(TObject *Sender, int Count)
{
String strTemp = ""; //문자형변수선언
ComPort1->ReadStr( strTemp, Count ); //읽어오는명령어 ReadStr (변수에 너어주고 카운터길이)
Memo2->Lines->Add( strTemp ); //그대로 뿌려줌
if ( strTemp == "A");
{ ComPort1->WriteStr("1");
}
strTemp = "";
}
A를 입면했다면 상대방 컴퓨터에는 숫자 1을 전송하게 합니다.
메모장에 저장하는것을 공부하셔서 응용하시면 될듯 합니다 .
미천한 초보가 글을 남겨 도움이 됬는지 모르겠습니다.
그리고 하실때 주의하실거는 comprt에 포트를 잘마춰주셔야합니다. 확인은 연결했을때 장치관리자에서확인하시면됩니다.