Q&A

  • AsyncPro에서 모뎀을 이용한 파일전송
안녕하세요..

일전에 이런 질문을 올린적이 있었는데 그냥 AsyncPro를 구입해서 사용하라는 답변만..



전 AsyncPro2.57을 2주전쯤 구입했는데..

통신쪽으론 첨해보다 보니 개념 자체가 없어서 이렇게 글을 올립니다..



모뎀을 사용하여 1:1 통신으로 파일을 전송하는 모듈을 만들고 싶은데 어떤 식으로 해야 할지 개념만이라도 부탁드립니다.



혹시 AsyncPro 예제중에 이와 비슷한게 있나요??



사실 간혹 답변하다 이런 식으로 뜬금없이 질문을 하면 답변하기가 쉽지 않다는건 알고 있습니다.

하지만 진짜로 개념조차 없다보니 질문의 방향을 잡아서 질문하는 것 조차 힘들군요..

부탁 드립니다..

2  COMMENTS
  • Profile
    이상준 1999.04.23 18:51
    윈도95의 바탕화면에 있는 네트워크 환경처럼 LAN으로 연결된 컴퓨터들의

    컴퓨터 이름을 읽어오는 방법을 알고 싶습니다.

    그리고 읽어온 컴퓨터 이름을 가지고 서로 컴퓨터간의 통신이 가능한 방법도

    부탁드립니다.

  • Profile
    김영대 1999.04.23 21:07
    이상준 wrote:

    > 윈도95의 바탕화면에 있는 네트워크 환경처럼 LAN으로 연결된 컴퓨터들의

    > 컴퓨터 이름을 읽어오는 방법을 알고 싶습니다.

    > 그리고 읽어온 컴퓨터 이름을 가지고 서로 컴퓨터간의 통신이 가능한 방법도

    > 부탁드립니다.



    안녕하세요 김영대입니다



    원도우즈 네트워크 환경의 컴퓨터 리스트를 구하는 내부

    통신 프로토콜은 TCP/IP가 아닌 BetBEUI 를 사용합니다

    하지만 컴퓨터간의 통신 프로그램을 직접 작성하셔야 한다면

    TCP/IP 를 사용하는 것이 일반적이고 TCP/IP 에서는

    IP 주소를 리스트 형태로 다 주는건 없고 하나하나 검사해야 합니다



    아래 예제는 원도우즈 네트워크 환경의 컴퓨터 리스트를 구하는 예제입니다

    그리고 제 홈페이지(myhome.shinbiro.com/~cozykyd) 의 자료실 4 에 보시면

    "상대방 컴퓨터 이름으로 IP주소 구하기 (반대도 가능)" 자료가 있는데

    이건 컴퓨터 이름으로 IP를 구하고 그 반대의 기능도 가능한 예제입니다

    아래 예제와 자료실의 소스를 참고하시면 구현하실 수 있을겁니다

    그럼 수고하세요



    unit Unit1;



    interface



    uses

    Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

    StdCtrls;



    type

    TForm1 = class(TForm)

    LB_UserList: TListBox;

    Button1: TButton;

    procedure Button1Click(Sender: TObject);

    private

    { Private declarations }

    public

    { Public declarations }

    ServerName: String;

    function GetNetworkUserName: Boolean;

    end;



    PnetResourceArr = ^TNetResource;



    var

    Form1: TForm1;



    implementation

    {$R *.DFM}



    function TForm1.GetNetworkUserName: Boolean;

    var

    NetResource: TNetResource;

    Buf:Pointer;

    Count, BufSize, Res: DWORD;

    i: Integer;

    lphEnum: THandle;

    p: PnetResourceArr;

    begin

    GetNetworkUserName := False;

    LB_UserList.Clear;

    GetMem(Buf, 8192);

    try

    FillChar(NetResource, SizeOf(NetResource), 0);

    NetResource.lpRemoteName := PChar(ServerName);

    NetResource.dwDisplayType := RESOURCEDISPLAYTYPE_SERVER;

    NetResource.dwUsage := RESOURCEUSAGE_CONTAINER;

    NetResource.dwScope := RESOURCETYPE_DISK;

    Res := WNetOpenEnum(RESOURCE_GLOBALNET, RESOURCETYPE_DISK, RESOURCEUSAGE_CONTAINER,

    @NetResource,lphEnum);

    if Res <> 0 then

    System.Exit;

    while true do

    begin

    Count := -1;

    BufSize := 8192;

    Res := WNetEnumResource(lphEnum, Count, Pointer(Buf), BufSize);

    if Res = ERROR_NO_MORE_ITEMS then

    System.Exit;

    if (Res <> 0) then

    System.Exit;

    p := PNetResourceArr(Buf);

    for i := 0 to Count - 1 do

    begin

    LB_UserList.Items.Add(p^.lpRemoteName + 2);

    Inc(p);

    end;

    end;

    Res := WNetCloseEnum(lphEnum);

    If Res <> 0 then

    raise Exception(Res);

    finally

    FreeMem(Buf);

    GetNetworkUserName := True;

    end;

    end;



    procedure TForm1.Button1Click(Sender: TObject);

    begin

    ServerName := '전산운영팀'; // 네트워크 환경의 작업그룹명

    if GetNetworkUserName then

    Showmessage('총 '+IntToStr(LB_UserList.Items.Count)+' 개의 개체가 있습니다')

    else

    Showmessage('정보를 얻지 못했습니다');

    end;



    end.



    • 공대규
    • 1999.04.23 22:45
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.04.23 23:23
      공대규 wrote: > 안녕하십니까요? > > PaintBox에 Image1.canvas를 카피하려 할 때, 에러가 납니다. >...
    • 곽승주
    • 1999.07.06 00:22
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 그냥
      1999.07.06 02:09
      곽승주 께서 말씀하시기를... > Edit콘트롤에 KeyPress이벤트를 걸러두고 그안에서 엔터키(#13)가 > 눌려...
    • 공대규
    • 1999.04.23 22:45
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.04.23 23:23
      공대규 wrote: > 안녕하십니까요? > > PaintBox에 Image1.canvas를 카피하려 할 때, 에러가 납니다. >...
    • 그냥
      1999.07.06 02:03
      답이 아닌거 같긴한데... 제가 아는한 TQuery는 filer를 하지 않아도 Sql문에 그냥 조건절(where)를 사...
    • 이상준
    • 1999.04.23 18:51
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김영대
      1999.04.23 21:07
      이상준 wrote: > 윈도95의 바탕화면에 있는 네트워크 환경처럼 LAN으로 연결된 컴퓨터들의 > 컴퓨터 이름...
    • 고광준
      1999.07.05 23:06
      Unix Server와 PC와 UDP Socket을 써서 통신을 하려고 합니다. 근데 Unix Server에서 Port를 입력할때 hto...
    • 김영대
      1999.07.05 23:50
      고광준 께서 말씀하시기를... > Unix Server와 PC와 UDP Socket을 써서 통신을 하려고 합니다. > 근데 Un...
    • 이민병
    • 1999.04.23 19:14
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김경수
      1999.04.24 05:06
      안녕하세요 김경수라는 사람입니다. 전 nt용 오라클8하구 델파이4랑 해봤는데 뭐 같은내용이겠지요.. 오...
    • camplus
    • 1999.07.05 22:46
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 최석기
    • 1999.07.05 21:46
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 이상준
      1999.04.23 18:51
      윈도95의 바탕화면에 있는 네트워크 환경처럼 LAN으로 연결된 컴퓨터들의 컴퓨터 이름을 읽어오는 방법을 ...
    • 김영대
      1999.04.23 21:07
      이상준 wrote: > 윈도95의 바탕화면에 있는 네트워크 환경처럼 LAN으로 연결된 컴퓨터들의 > 컴퓨터 이름...
    • 임윤경
    • 1999.04.23 00:54
    • 2 COMMENTS
    • /
    • 0 LIKES
    • Jimmy
      1999.07.05 21:11
      안녕하세요... 회계관련 프로그램인데...두 테이블에 '잔액'이라는 필드가 있습니다. 이걸 계산해야 하는...
    • 김영대
      1999.04.23 18:23
      임윤경 wrote: > 제가 김영대씨 홈페이지에서 받은 FTP서버의 파일을 PC로 다운로드하는 소스에 보면, rec...
    • bisbuck
    • 1999.07.05 20:58
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 1999.07.05 20:27
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 이현아
      1999.04.23 03:04
      안녕하세요! 저는 이제 막 델파이 공부를 하는 직장인입니다. 다름이 아니구요! Edit박스로 성명...
    • 송기원
      1999.07.06 18:10
      EdbEngineError 의 errors[index].errorcode 또는 errors[index].NativeError를 참조하면 될거 같은데.. ...
    • 김영대
      1999.04.23 18:04
      이현아 wrote: > 안녕하세요! > 저는 이제 막 델파이 공부를 하는 직장인입니다. > 다름이 아니구요! >...
    • 이현아
      1999.04.24 16:43
      김영대 wrote: > 이현아 wrote: > > 안녕하세요! > > 저는 이제 막 델파이 공부를 하는 직장인입니다. ...
    • 강지영
      1999.04.23 00:51
      구창민님의 홈페이지 팁/강좌란에서 읽은 팁입니다. 실행을 하니까 그리드의 타이틀을 클릭하는 대로 쿼리...
    • 신인재
      1999.07.05 21:15
      Parent 프로퍼티를 설정하셔야 합니다. 아래와 같이 MyBtn.Parent := ScrollBox1; 서경철 께서 말씀...
    • 배리스
      1999.04.23 17:51
      안녕하세요. 강지영씨.. 오늘은 날씨가 별로 좋지 않네요. 하지만 이런 날씨가 더 좋은것 같습니다. 왜냐...
    • 김형하
    • 1999.04.22 20:25
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 레드맨
      1999.07.05 20:00
      델파이를처음 시작하려고 합니다. 뭐부터시작 해야할지? 자세히설명해주세요!!!부탁합니다.....
    • 이정욱
      1999.04.23 07:10
      네.. 저희도 통신 프로그램의 터미널을 만들때 부딪혔던 문제입니다. 프린터같은 경우면 간단하게 LineTo...
    • 배리스
    • 1999.04.23 06:39
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.04.23 07:08
      파워러브 델파이 창간호의 일부 입니다~ 1. 현재 라인번호 알아내기 메모에서 현재 Caret이 위치하...
    • 문창완
    • 1999.04.23 05:16
    • 4 COMMENTS
    • /
    • 0 LIKES
    • Endy
      1999.07.05 19:19
      저는 MS-SQL7.0을 사용합니다. Delphi에서 StoreProcedure를 실행하면 BDE Engine Error가 발생 합니다. 물...
    • 이정욱
      1999.04.23 07:03
      참.. 혹시 검색엔진이 야후같은것을 말씀하신것이라면 기본개념은 이렇습니다. 별것 아니죠. 데이타 베...
    • 조복기
      1999.07.05 19:54
      Endy 께서 말씀하시기를... > 저는 MS-SQL7.0을 사용합니다. Delphi에서 StoreProcedure를 실행하면 BDE E...
    • 이정욱
      1999.04.23 07:01
      그냥 참고만 하세요~ http://www.nobreak.com 에 가시면 CrazySearch라는것이 있습니다. 그것의 소스를 ...