Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Компоненты и классы
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 12.04.2010, 16:09
Aless_me Aless_me вне форума
Прохожий
 
Регистрация: 12.04.2010
Сообщения: 1
Репутация: 10
По умолчанию Ошибка при вызова процедуры пакета

Добрый день всем! Есть такая проблема. Я создал процедуры по работе с портами rs-232. Код уместил в пакет (bpl). При вызова процедур из формы выдает ошибку.

Вот код некоторых процедур из пакета
Код:
unit PortDevice;

interface

uses
  Windows, SysUtils, Classes;

type
  TN4_11 = class
  private
    CT:TCommTimeouts;
    F:THandle;
    DCB:TDCB;
    Over:TOverlapped;
    ByteWritten: Dword;
    str:string;
  public
    procedure Connect(Port:string);
    procedure Disconnect;
  end;

  var N4_11:TN4_11;

implementation

procedure TN4_11.Connect(Port:string);
begin
  F := CreateFile(PChar('\\.\'+Port),
                        GENERIC_READ or GENERIC_WRITE,
                        0,
                        nil, OPEN_EXISTING,
                        FILE_FLAG_OVERLAPPED, 0);
  //параметры порта
  GetCommState(F, DCB);
  DCB.BaudRate := 9600;
  DCB.Parity := NOPARITY;
  DCB.ByteSize := 8;
  DCB.StopBits := ONESTOPBIT;
  SetCommState(F, DCB);

  GetCommTimeouts(F, ct);
  CT.WriteTotalTimeoutConstant := 0;
  CT.WriteTotalTimeoutMultiplier := 0;
  CT.ReadTotalTimeoutConstant := 5;
  CT.ReadIntervalTimeout := MAXDWORD;
  CT.ReadTotalTimeoutMultiplier := MAXDWORD;
  SetCommTimeouts(F, CT);

  PurgeComm(F,PURGE_TXCLEAR or PURGE_RXCLEAR);
  Over.hEvent := CreateEvent(nil, True, False, nil);

  EscapeCommFunction(F, RTS_CONTROL_HANDSHAKE);
  EscapeCommFunction(F, DTR_CONTROL_HANDSHAKE);
end;

procedure TN4_11.Disconnect;
begin
  CloseHandle(F);
end;
Admin: Пользуемся тегами!

Заранее спасибо.

Последний раз редактировалось Admin, 12.04.2010 в 16:18.
Ответить с цитированием
  #2  
Старый 25.04.2010, 21:21
Аватар для Bars1992
Bars1992 Bars1992 вне форума
Активный
 
Регистрация: 24.04.2010
Адрес: Украина, Кременчуг
Сообщения: 249
Репутация: 22
По умолчанию

Не создавай заново велосипед. За тебя уже все зделали!
Скачай компонент TMSA32
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 12:28.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter