Недавно добавленные исходники

•  DeLiKaTeS Tetris (Тетрис)  4 514

•  TDictionary Custom Sort  6 535

•  Fast Watermark Sources  6 323

•  3D Designer  9 270

•  Sik Screen Capture  6 656

•  Patch Maker  7 032

•  Айболит (remote control)  7 044

•  ListBox Drag & Drop  5 912

•  Доска для игры Реверси  97 303

•  Графические эффекты  7 245

•  Рисование по маске  6 544

•  Перетаскивание изображений  5 408

•  Canvas Drawing  5 783

•  Рисование Луны  5 486

•  Поворот изображения  5 016

•  Рисование стержней  3 569

•  Paint on Shape  2 831

•  Генератор кроссвордов  3 710

•  Головоломка Paletto  2 987

•  Теорема Монжа об окружностях  3 794

•  Пазл Numbrix  2 499

•  Заборы и коммивояжеры  3 183

•  Игра HIP  2 149

•  Игра Go (Го)  2 086

•  Симулятор лифта  2 460

•  Программа укладки плитки  2 127

•  Генератор лабиринта  2 603

•  Проверка числового ввода  2 279

•  HEX View  2 611

•  Физический маятник  2 221

 
скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Delphi Sources

Определяет наличие СОМ портов



Автор: Михаил

{ **** UBPFD *********** by delphibase.endimus.com ****
>> Определяет наличие СОМ портов

Данная процедура позволяет определить наличие доступных СОМ-портов.
Список добавлятся в ComboBox. После этого можно выбирать нужный порт.

Зависимости: Windows, Messages, SysUtils, Variants, Classes,
Graphics, Controls, Forms, Dialogs, ComCtrls

Автор:       Михаил, mikhail.sazonov@niitp.ru, Москва
Copyright:   Сазонов Михаил
Дата:        2 октября 2003 г.
***************************************************** }

unit SetComPort;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, dfsStatusBar, ExtCtrls, StdCtrls, ImgList, Buttons,
  ToolWin;

type
  TForm1 = class(TForm)
    StrNP: TRichEdit;
    dfsStatusBar1: TdfsStatusBar;
    ImageList1: TImageList;
    CoolBar1: TCoolBar;
    Panel1: TPanel;
    LoadNP: TBitBtn;
    Auto: TCheckBox;
    SetRegim: TRadioGroup;
    GroupBox1: TGroupBox;
    ComPort: TComboBox;
    BaudRate: TComboBox;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Parity: TComboBox;
    ByteSize: TComboBox;
    StopBits: TComboBox;
    CloseItem: TBitBtn;
    procedure InquiryPort(Sender: TObject); {опрос существующих портов}
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure CloseItemClick(Sender: TObject);
    procedure ComPortChange(Sender: TObject);
    procedure BaudRateChange(Sender: TObject);
    procedure ParityChange(Sender: TObject);
    procedure ByteSizeChange(Sender: TObject);
    procedure StopBitsChange(Sender: TObject);
    procedure SetRegimClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    FHandl: THandle; {дескриптор порта}
    DCB: TDCB; {ссылка на структуру настройки порта}
    PortName: string; {имя порта, для дальнейшей работы}
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.InquiryPort(Sender: TObject);
var
  i: integer;
begin {опрос существующих портов}
  for i := 0 to 31 do {цикл опроса}
  begin {пробуем получить дескриптор порта}
    FHandl := CreateFile(PChar('COM' + IntToStr(i + 1)),
      GENERIC_READ or GENERIC_WRITE,
      0,
      nil,
      OPEN_EXISTING, FILE_FLAG_OVERLAPPED, 0);
    if FHandl <> INVALID_HANDLE_VALUE then {если порт есть то добавить в список}
      ComPort.Items.Add('COM' + IntToStr(i + 1));
    CloseHandle(FHandl); {закрыть дескриптор}
  end;
end;

..........







Copyright © 2004-2025 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте