Q&A

  • socket통신에서 ...?
TClientSocket과 TServerSocket을 이용해서



문자열을 보내는 프로그램을 만들라구 합니다.



아주 단순한거죠... -___-;



그런데~~~~



작업 순서는



1. 서버와 연결

2. 서버에 문자열 전송

3. 서버와 연결 끊기



요렇습니다.



그래서



1번을 A라는 버튼에

2번을 B라는 버튼에

3번을 C라는 버튼에



각각 구현하면 아무 문제 없이 됩니다.



그런데



1,2,3번을 D라는 버튼에 구현하면



하나건너 하나씩만 문자열이 전송된다는 거죠... -____-;;



대체 무슨 문제가 있는걸까요?



버근가요???



T___T



정말 미치겠습니다.



고수님들 답변 부탁드립니다....



감사합니다.



---------------- 참고 소스입니다. -------------



// cs는 TClientSocket

procedure TForm1.ButtonAClick(Sender: TObject);

begin

cs.Open;

end;



procedure TForm1.ButtonBClick(Sender: TObject);

begin

cs.Socket.SendText( DateTimeToStr(NOw) );

end;



procedure TForm1.ButtonCClick(Sender: TObject);

begin

cs.Close;

end;



// ↓ 문제의 소스... -___-+++

procedure TForm1.Button6Click(Sender: TObject);

begin

cs.Open;

cs.Socket.SendText( DateTimeToStr(NOw) );

cs.Close;

end;



1  COMMENTS
  • Profile
    구창민 1999.05.28 19:54
    남윤혁 께서 말씀하시기를...

    > TClientSocket과 TServerSocket을 이용해서

    >

    > 문자열을 보내는 프로그램을 만들라구 합니다.

    >

    > 아주 단순한거죠... -___-;

    >

    > 그런데~~~~

    >

    > 작업 순서는

    >

    > 1. 서버와 연결

    > 2. 서버에 문자열 전송

    > 3. 서버와 연결 끊기

    >

    > 요렇습니다.

    >

    > 그래서

    >

    > 1번을 A라는 버튼에

    > 2번을 B라는 버튼에

    > 3번을 C라는 버튼에

    >

    > 각각 구현하면 아무 문제 없이 됩니다.

    >

    > 그런데

    >

    > 1,2,3번을 D라는 버튼에 구현하면

    >

    > 하나건너 하나씩만 문자열이 전송된다는 거죠... -____-;;

    >

    > 대체 무슨 문제가 있는걸까요?

    >

    > 버근가요???

    >

    > T___T

    >

    > 정말 미치겠습니다.

    >

    > 고수님들 답변 부탁드립니다....

    >

    > 감사합니다.

    >

    > ---------------- 참고 소스입니다. -------------

    >

    > // cs는 TClientSocket

    > procedure TForm1.ButtonAClick(Sender: TObject);

    > begin

    > cs.Open;

    > end;

    >

    > procedure TForm1.ButtonBClick(Sender: TObject);

    > begin

    > cs.Socket.SendText( DateTimeToStr(NOw) );

    > end;

    >

    > procedure TForm1.ButtonCClick(Sender: TObject);

    > begin

    > cs.Close;

    > end;

    >

    > // ↓ 문제의 소스... -___-+++

    > procedure TForm1.Button6Click(Sender: TObject);

    > begin

    > cs.Open;

    > cs.Socket.SendText( DateTimeToStr(NOw) );

    > cs.Close;

    > end;

    >



    남윤혁님 안녕하세요? 구창민입니다.

    cs 는 ClientSocket 인가요?

    Open하셨다구 무조건 서버와 붙었다고 판단할수 없구요.

    Button6Click 안에서 cs.Open 하셨다면

    OnConnect 이벤트에서

    cs.Socket.SendText( DateTimeToStr(NOw) );...

    등등..문자열을 날리는 문장과 닫는 문장을

    기술해 보세요.

    그리고, 첨언이지만 항상 오픈했을때 에러처리 문장을 함께

    사용하셔야 안전한 프로그램이 됩니다.

    접속에 실패했을시는 문장을 수행하면 안 되기 때문이지요.

    해보구 안 되시면 다시 질문 올려주세요.

    그럼.. 즐거운 프로그래밍 되세요~



    • Pascal
    • 1998.11.20 10:40
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1998.11.21 02:46
      음.. DLL을 사용하신 부분의 소스를 보여주시면 더 쉽게 설명이 가능할 텐데요... DLL을 사용하실때는 ...
    • 이호선
    • 1999.05.29 07:47
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최석기
      1999.05.29 18:08
      이호선 께서 말씀하시기를... > 안녕하세요.. > Delphi에서 제공하는 인스톨 쉴드를 사용하여 Setup프로...
    • 이용성
    • 1998.11.19 08:07
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 신인재
      1998.11.20 20:25
      음냐 제가 프로그램을 짜서 갈켜 드리려구 했는데.. 델파이 코리아에 BatchMove컴포넌트를 이용한 팁이 있...
    • 신인재
      1998.11.21 05:35
      신인재 wrote: > 음냐 제가 프로그램을 짜서 갈켜 드리려구 했는데.. > 델파이 코리아에 BatchMove컴포넌...
    • 표경나
      1998.11.19 05:34
      웹 어플리케이션을 만들고 있는 중입니다. 작업환경은 윈95이구요.. 그래서 ms personal web이라는 걸 구...
    • 신인재
      1998.11.19 07:52
      표경나 wrote: 음냐~~~ 인잽니다.... 파일이 깨져서 하나도 알아 볼 수 가 없다는 뜻이 무었인지요.......
    • 표경나
    • 1998.11.19 05:34
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 북해
      1999.05.29 02:15
      안녕하세요. 이곳 자료실에서 인스톨쉴드5.5 트라이얼버전을 다운 받았는데요, 인스톨을 시켜보니까 패스워...
    • 신인재
      1998.11.19 07:52
      표경나 wrote: 음냐~~~ 인잽니다.... 파일이 깨져서 하나도 알아 볼 수 가 없다는 뜻이 무었인지요.......
    • kbs91
    • 1999.05.29 01:29
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 나 연숙
      1998.11.19 02:06
      안녕하세요.. 저는 델파이 3.0을 사용하고 있는데요 Ftp Component 를 사용해서 RemoteHost에 있는 Fil...
    • 안치봉
      1999.05.29 01:59
      kbs91 께서 말씀하시기를... > 안녕하세요. > 저는 김범술이라고 하는데요. > TPrinter를 이용하여 출력...
    • 김정배
    • 1998.11.18 06:47
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 김재현
      1999.05.29 01:26
      각각의 개별적인 .EXE 실행파일에서 하나의 TDatabase 컴포넌트를 공유하는 법을 알고 싶습니다. 즉 메...
    • 이정욱
      1998.11.21 14:58
      델파이란, C++같은 프로그래밍 언어 입니다. 파스칼을 확장한 형태 입니다. 즉, 델파이는 프로그램을 만...
    • 이정욱
      1999.05.29 09:25
      제 생각으로는 직접적으로는 불가능하다고 생각이 드네요... 구조상... 서로 Table이름을 교환해서 (파라...
    • 김 완진
      1998.12.13 02:01
      델파이가 언어라고 하셨는데, 개발환경으로 보는 것이 맞지않나 생각합니다. 예를 들면 Visual C++은 C++...
    • 이현택
      1999.05.29 00:59
      Q_report 에서 출력화면을 shape compnent로 작성을 했습니다 출력시 3장이상 출력하고나면 4장째 PC 가 D...
    • 이정욱
      1998.11.16 10:34
      컴포넌트 중에 Packet에 관한 컴포넌트가 있습니다. 그것을 사용해 보세요. 이태호 wrote: > 또 질문 ...
    • 이태호
      1998.11.17 12:18
      이정욱 wrote: > 컴포넌트 중에 Packet에 관한 컴포넌트가 있습니다. > 그것을 사용해 보세요. > > 이...
    • 마성수
    • 1999.05.28 23:31
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 손현민
      1998.11.16 21:35
      시스템 환경은 NT4.0,SQL6.5,ODBC 입니다. Query를 사용해서 for문을 돌리는 도중 Insufficent memory for...
    • 박성훈
      1999.05.31 04:59
      마성수 께서 말씀하시기를... > Query해서 나온 자료를 DBGRID에 뿌린후 > Request Live 를 TRUE 로 하면...
    • 신인재
      1998.11.17 06:58
      손현민 wrote: > 시스템 환경은 NT4.0,SQL6.5,ODBC 입니다. > Query를 사용해서 for문을 돌리는 도중 Ins...
    • 박성훈
      1999.06.04 03:15
      박성훈 께서 말씀하시기를... > 마성수 께서 말씀하시기를... > > Query해서 나온 자료를 DBGRID에 뿌린...
    • 김계환
    • 1999.05.28 23:19
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 손현민
      1998.11.16 21:35
      시스템 환경은 NT4.0,SQL6.5,ODBC 입니다. Query를 사용해서 for문을 돌리는 도중 Insufficent memory for...
    • 유수
      1999.05.29 03:51
      안녕하세여.. 실행될 때 마다 다른 방식으로 로고를 보이기 위해선, 먼저 Randomize, Random 함...
    • 신인재
      1998.11.17 06:58
      손현민 wrote: > 시스템 환경은 NT4.0,SQL6.5,ODBC 입니다. > Query를 사용해서 for문을 돌리는 도중 Ins...
    • 이호선
      1999.05.28 22:56
      안녕하세요. 2가지 궁금한 사항이 있어서 질문합니다. MSACCESS를 델파이에서 연결해 쓰는 방법중에서 SQ...
    • 이정욱
      1998.11.16 10:34
      컴포넌트 중에 Packet에 관한 컴포넌트가 있습니다. 그것을 사용해 보세요. 이태호 wrote: > 또 질문 ...
    • 이정욱
      1999.05.28 23:23
      Diamond라는 컴포넌트가 있습니다. 이것을 사용하면 BDE가 없이 DAO를 가지고 직접 MSACCESS데이타에 접근...
    • 이태호
      1998.11.17 12:18
      이정욱 wrote: > 컴포넌트 중에 Packet에 관한 컴포넌트가 있습니다. > 그것을 사용해 보세요. > > 이...
    • 이태호
    • 1998.11.10 11:00
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 김태균
      1999.05.28 19:21
      안녕하세요. DB에 있는 자료를 Query해서 MS-Word로 넘기려고 합니다. 표가 없을때 텍스트만 넘기는 것...
    • 이정욱
      1998.11.16 10:33
      음.. 마이크로 소프트웨어라는 잡지에 제가 글을 썼었는데, 몇월호 였는지는 기억이 잘 나지 않는군요... ...
    • 남윤혁
    • 1999.05.28 19:16
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      1999.05.28 19:54
      남윤혁 께서 말씀하시기를... > TClientSocket과 TServerSocket을 이용해서 > > 문자열을 보내는 프로...
    • 손지연
    • 1998.11.11 20:35
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 종모
      1998.11.15 11:13
      안녕하세요? 초보라 답변이 될지 모르겠네요. > 주폼과 별폼의 연결이라... 1. 간단하게 주폼에서...
    • 신인재
      1998.11.12 08:32
      손지연 wrote: > 주폼과 별폼을 연결하려고 하는데 어떻게 해야 하나요? > 자세히 설명을 해 주시면 고맙...
    • 김동수
    • 1999.05.28 19:16
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 글쎄요.
      1999.05.28 22:47
      김동수 께서 말씀하시기를... > 밑에 방법으로 해봤는데... > 같은 결과만 떨어지네요... > 다른 방법은...
    • Heaven
    • 1999.05.28 18:26
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 표경나
      1998.11.14 09:34
      델파이에서 생성된 dbf파일을 엑셀로 보내려고 시도를 하니 SpredOCX.dcp가 없다는 에러가 생깁니다. OCX...
    • 신인재
      1999.05.29 21:57
      음냐... 코딩으로 처리 하세요....... 답변이 부실해서 죄송하고요........ 코딩으로 처리해 보신 후...
    • 신인재
      1998.11.14 21:51
      음냐...인잽니다..... 음 액셀파일로 컨버전 하실려구 하시는 군요.... 음 SpredOCX는 비베에서 쓰는 물...
    • 신인재
      1998.11.14 22:08
      에고 죄송해요...한가지 빠졌네요.... SAveFileDlg다음에 이걸 주가 시켜 줘야 해요.... 음냐..기억을 더...