Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[11298] 도움 주셔서 감사합니다 ^^
04학번 [] 1441 읽음    2007-04-11 18:16
안영제님께서 조언해주신대로 한번 해보고 또 의문 나는점이 생기면 여쭤보겠습니다.
그럼 좋은 하루 되세요 ^^

civilian,안영제 님이 쓰신 글 :
: procedure TfrmMain.comport1ReceiveData(Sender: TObject; DataPtr: Pointer;
: DataSize: Cardinal);
: var
: tmp:string;
: begin
:   SetLength(tmp, DataSize);
:   Move(DataPtr^, tmp[1], DataSize);
:   G_data:=G_data+tmp; //전역변수에 이어 붙이기
:
:   if (ord(G_data[length(G_data)-1])=$0D) and (ord(G_data[length(G_data)])=$0A) then
:     G_data:='';  //전역변수 클리어
: end;
:
: 이렇게 한번 해보시죠
:
: 04학번 님이 쓰신 글 :
: : procedure TfrmMain.comport1ReceiveData(Sender: TObject; DataPtr: Pointer;
: :  DataSize: Cardinal);
: : var
: :  tmp:string;
: : begin
: :  tmp := stringOfChar(' ', DataSize );
: :  move( DataPtr^, pchar(tmp)^, DataSize );
: :  G_data:=G_data+tmp; //전역변수에 이어 붙이기
: :
: :  if (ord(G_data[length(G_data)-1])=$0D) and (ord(G_data[length(G_data)])=$0A) then
: :    G_data:='';  //전역변수 클리어
: :
: : end;
: :
: : 이렇게 comport를 통해서 데이터를 받았습니다. 처음엔 메모에 이 데이터들이 맞게 오나 보려고 뿌려보았습니다. 그런데 계속 켜놓으니 윈도우 작업관리자의 프로세스 메모리가 계속 늘어 나는 것입니다. 그래서 메모장 때문에 그러려니 하고 메모장 뿌리는 부분를 삭제 했습니다. 그런데도 동일한 증상입니다 ㅜ
: : 전역변수를 클리어 했는데 과연 왜그럴까요?

+ -

관련 글 리스트
11291 [질문] 이 소스를 보고 뭐가 잘못됐는지 조언부탁드립니다;; 04학번 1491 2007/04/10
11292     Re:[질문] 이 소스를 보고 뭐가 잘못됐는지 조언부탁드립니다;; civilian,안영제 1516 2007/04/10
11298         도움 주셔서 감사합니다 ^^ 04학번 1441 2007/04/11
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.