Q&A

  • 클라이언트에서 접속하려고 할때 10060에러가
납니다..
찾아보니 '접속 시도가 시간초과 되었습니다.',소켓이 종료되었습니다.','서버가 응답하지 없습니다' 대게 이런 뜻이라는데, 도대체 어떻게 이를 해결해야 할지 모르겠습니다.
참고로, 집에서 네트웍으로 연결된 두대의 컴퓨터에서 테스트 할때는 문제가 없답니다. 다른네트웍으로 연결하려할 때 그 에러가 난답니다.
네트웍 성능의 문제가 아닐까 막연한 추측도 해보지만 확실한 증거두 없고
어찌할 바를 모르겠습니다.

이에 대한 경험을 해본 분들의 도움 부탁드립니다.
아래는 서버 프로그램 소스입니다. 단순히 서버는 클라이언트의 요구가 있을때마다 서버쪽의 날짜와 시간을 문자열로 만들어 요구했던 클라이언트에게 보내주는 역할만 합니다.

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ScktComp, StdCtrls, ComCtrls, ExtCtrls;

type
  TForm1 = class(TForm)
    Memo1: TMemo;
    ServerSocket: TServerSocket;
    Panel1: TPanel;
    Label1: TLabel;
    edPort: TEdit;
    btnOpen: TButton;
    procedure ServerSocketClientRead(Sender: TObject;
      Socket: TCustomWinSocket);
    procedure ServerSocketClientConnect(Sender: TObject;
      Socket: TCustomWinSocket);
    procedure ServerSocketClientDisconnect(Sender: TObject;
      Socket: TCustomWinSocket);
    procedure btnOpenClick(Sender: TObject);
  private
    { Private declarations }
     procedure CloseConnections;
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.CloseConnections;
var i : Integer;
begin
   for i :=0 to ServerSocket.Socket.ActiveConnections -1 do
      ServerSocket.Socket.Connections[i].Close;
end;

procedure TForm1.ServerSocketClientRead(Sender: TObject;
  Socket: TCustomWinSocket);
var sReq, msg, SendMsg : String;

begin
   sReq := Socket.ReceiveText;

   case StrToInt(sReq) of
      0 : begin
             SendMsg :=FormatDateTime('yyyy-mm-dd hh:nn:ss',now);
             msg := '클라이언트('+Socket.RemoteAddress +')에서 서버시간 요청('+SendMsg+')';
             Memo1.Lines.Add(msg);
             Socket.SendText(SendMsg);
          end;
   end;
end;

procedure TForm1.ServerSocketClientConnect(Sender: TObject;
  Socket: TCustomWinSocket);
begin
   Memo1.Lines.Add('클라이언트('+Socket.RemoteAddress +') 접속');
end;

procedure TForm1.ServerSocketClientDisconnect(Sender: TObject;
  Socket: TCustomWinSocket);
begin
   Memo1.Lines.Add('클라이언트('+Socket.RemoteAddress +') 접속 해제');
   memo1.Lines.Clear;
end;

procedure TForm1.btnOpenClick(Sender: TObject);
begin

   if ServerSocket.Active then
   begin
      CloseConnections;
      ServerSocket.Active := False;
      btnOpen.Caption := '서버 실행';
      edPort.Enabled := True;

   end
   else
   begin
      ServerSocket.Active := True;
      btnOpen.Caption := '실행 정지';
      edPort.Enabled := False;
   end;
end;

end.
0  COMMENTS
    • [ROOKIE]
      2003.10.15 01:20
    • 최용일
      2003.10.15 01:43
      안녕하세요. 최용일입니다. 속성창에서 폼의 OnCloseQuery이벤트를 만들어서 아래와 같이 코딩해보세요....
    • 미로
    • 2003.10.14 20:43
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2003.10.15 01:39
      안녕하세요. 최용일입니다. 변환하는 컴포넌트 안에 Encode/Decode알고리즘이 다 들어있습니다. 안그러...
    • 이추형
      2003.11.11 20:08
      가장 쉬운 방법은 오라클의 언어 설정을 한글로 하시면 되고요 어렵다면 에러 처리시 글로벌변수로 에러별...
    • 연기훈
      2003.10.15 02:16
      어떤걸 출력하는 건지... QREPORT 로 작성한 레포트인지 다이렉트 출력인지... 어떤 종류의 출력...
    • 조지연
    • 2003.10.14 02:47
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 연기훈
      2003.10.14 03:01
      Object Inspector 창에서 Events 창을 확인해보세요 Form 이벤트요.. 거기 OnClose 에 FormClose가 ...
    • 조지연
      2003.10.14 03:09
      네... 정상적으로 연결되어있답니다. 물론 확인해 봤구여... 지우고 다시 만들어 보기도 했거든요... ...
    • 윤수아
      2003.10.21 01:17
      정확히 어떤 경우인지 모르겠는데요... 혹시 MainForm이 있고 AForm이 있는 경우에... 프로그램 종료시 M...
    • 성더기
      2003.10.17 00:47
      답변이 될런지는 모르겠습니다만.. 혹시 formCreate에서 이벤트를 호출하시지는 않으셨지요 Create에서...
    • 염선희
    • 2003.10.14 02:17
    • 0 COMMENTS
    • /
    • 12 LIKES
    • midaskpp
    • 2003.10.14 02:03
    • 3 COMMENTS
    • /
    • 0 LIKES
    • KDDG_ZZOM
      2003.10.14 19:23
      function GetOSInfo: string; var   Platform: string;   BuildNumber: integer; ...
    • KDDG_ZZOM
      2003.10.14 18:59
      unit Unit1; interface uses   Windows, Messages, SysUtils, Classes, Graphics, Contro...
    • midaskpp
      2003.10.15 23:12
      님 감쏴합니다.. [냉무]
    • 이승훈
    • 2003.10.14 01:39
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김상우
      2003.11.27 18:59
      인디 FTP 컴포넌트를 사용하세요. 인디FTP 컴포넌트의 ChangeDir('/test') 를 하신후 List(AFiles, ...
    • 연기훈
      2003.10.14 02:46
      제가 진행하고 있는 프로그램중 동적 생성 부분문 복사해봤습니다. 참조하시길.. procedure TfrmMRD1...
    • 홍선영
      2003.10.16 02:29
      해결했습니다. 방법은 델파이에서는 from DB명::테이블명 입니다. ㅋㅋ : 을 하나 더 추가해야 ...
    • 살며배우며
      2003.10.14 07:27
      참고만 하세요 만약 오라클이라면 DB LINK를 사용하면 되지 않을까요? A DB에서 B DB로 링크를 걸고...
    • 홍선영
      2003.10.14 19:04
      음.. 답변 감사합니다. 그런데..현재 환경은 informix 입니다. 오라클에서는 그런 기능이 있군요.. i...
    • 살며배우며
      2003.10.15 06:50
      저도 인포믹스는 써보지 않아서 잘모르겠네요 인터넷에 찾아보니까 그런기능을 하는 명령어가 있는듯 ...
    • Galaxy
      2003.10.14 03:01
      안녕하세요 수고 많습니다. SQL EXplore에서 Select * From tableName Select * From Corder wher...
    • 홍선영
      2003.10.14 03:24
      음..답변은 잘 봣습니다. 그런데.. 제가 질문한 의도와는 빗나간 듯 합니다. 제가 궁금한건...
    • 김유빈
    • 2003.10.13 23:45
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 강형철
      2003.10.13 23:29
      일단 질문사항이 있으면 먼저 물어보지 마시고 검색을 해봅시다... 그래도 없을 경우에는 질문을 ^^ 팁...
    • [ROOKIE]
      2003.10.14 21:19
      여러가지 방법이 있겠지만... 저는 이렇게 했네요. var    submenu : TMenuItem; begin &nb...
    • 김현석
    • 2003.10.13 20:20
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 김수현
    • 2003.10.13 19:28
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 성더기
      2003.10.13 21:01
      OnDrawCell이던가? 할튼 그런 이벤트에 코딩을 하셔야 할거 같습니다 그냥은 힘들구요.. 뭐 가능하시다...
    • 김수현
      2003.10.14 04:11
      만약 리얼그리드나 퀀텀그리드를 사용하게 되면 확실히 가능한건지.. 그리고 그럴경우 Rave Report상에 ...
    • 성더기
      2003.10.17 00:33
      Rave에서는 잘모르겠습니다.. 제가 Rave를 사용해보지를 않아서..^^ 그리드와 Rave와는 별도로 동작하...
    • 구니
    • 2003.10.13 13:51
    • 2 COMMENTS
    • /
    • 0 LIKES
    • [ROOKIE]
      2003.10.14 21:21
      아마 두번째 인자가 기다리는 시간을 세팅하는 부분일텐데요? -1 : 무작정 기다리기? 5000 : 5초동안 ...
    • 구니
      2003.10.15 03:32
      감사합니다.
    • 박국희
    • 2003.10.13 03:23
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 김경록
      2003.10.13 05:35
      Database에는 여러 종류가 있습니다. 1. 주로 1대의 PC에서만 1사용자가 접속하는 종류 2. 여러 PC에서 ...
    • 박국희
      2003.10.13 17:22
      아~ 그렇구나~ 답변 주셔서 넘 감사드려요.. 전 제가 뭘 잘못한줄 알고 몇시간동안 계속 하면서 속만 끓...
    • 연기훈
      2003.10.14 03:03
      델파이 6.0에서 착성된 소스네요.. 지금 제가 7.0으로 작성한 파일 보니 [FileVersion] Version=7....
    • goodlsw
    • 2003.10.13 03:09
    • 0 COMMENTS
    • /
    • 0 LIKES