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
[4256] [질문] async pro에서 포트 자동으로 찾기
j1025427 [ ] 1816 읽음    1998-08-28 17:24
1
소스입니다. 꼭좀 도움을....
unit autocom;
interface
uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  OoMisc, AdPort, StdCtrls, comobj, Comserv, commctrl, commdlg, vclcom,
  comctrls, comstrs, AdSelCom,  AdDial, AdGetNum, AdPBEdit, AdIniDB, AdPBook, AdModem, AdModDB,
  AdProtcl, AdPStat, AdStatLt, AdExcept, AdxBP, FileCtrl,
  AdFax, AdFStat, AdFaxPrn, AdFPStat, AdFaxCvt, AdTapi, AdTStat, AdXPort,
  ShellApi;
type
  TForm1 = class(TForm)
    Button1: TButton;
    ComPort1: TApdComPort;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
var
  Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
var
  ComFrm : TComselectform;
  ValidPortNo : array[1..8] of boolean;

  vp, I, next : integer;
  com : string;

  Frm          : TComPortOptions;
begin

Frm := TComPortOptions.Create(Self);
if Frm.Execute then

  begin
    if (Frm.ComPort <> nil) then

      begin
      {close and open ports}

      ComPort1.Assign(Frm.ComPort);
      end;

    end;
next:=1;

  while next<=3 do
    begin

    comport1.comnumber:=next;
    try

      ComPort1.Open := True;
      Application.ProcessMessages;

      next:=next+1;
     { Break;}

    except
      on EOpenComm do

        begin
        ComFrm := TComSelectForm.Create(Self);

        Application.ProcessMessages;
        {for I := 1 to 8 do

          begin
          if not ComFrm.ValidComPort(I) then

            ValidPortNo[I] := False
          else

            ValidPortNo[I] := True;
          end;
        If VP = 0 then

          begin
          if (ComFrm.ShowModal = mrOK) then

            begin
            Com               := ComFrm.SelectedCom;

            ComPort1.ComNumber := Ord(Com[4]) - Ord('1') + 1;
            WritePortOptions;

            end
          else

            Halt;
          end;

        Application.ProcessMessages;
        If ValidPortNo[VP] then

          begin
          Comport1.ComNumber := VP;

          Com := 'COM' + IntToStr(VP);
          WritePortOptions;

          Dec(VP);
          end

        else
          Dec(VP);}

        ComFrm.Free;
        end

      else
        raise;

      next:=next+1;
      end;

    end;
  Frm.Free;
end;

procedure TForm1.Button2Click(Sender: TObject);
var

  h :boolean;
begin

h:=IsPortAvailable(1);
end;
end.




+ -

관련 글 리스트
4256 [질문] async pro에서 포트 자동으로 찾기 j1025427 1816 1998/08/28
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.