Вниз
Скачать: CL | DM;

public array of THandle   Найти похожие ветки 

← →
NPR2   (2004-03-10 10:14) [0]

В главной форме описываю массив как public и складываю в него Handle, открытых СОМ портов. Но в дочернем окне при write в порт и read из порта я не вижу нужного элемента этого массива, т.е
   WriteFile(aHandle[m]," 1 1c"+#239,6,dw_Write,@OverWrite) не работает.
А когда в главной форме описываю просто как Thandle и открываю только один порт, то все проходит нормально.
Как сделать, чтобы все работало.


← →
Я ©   (2004-03-10 10:21) [1]

1. "Не работает" это: не компилируется или не выполняет того, что нужно?
2. Обращение: MainForm.aHandle[m]. Хотя (по описанию) это нарушение инкапсуляции. Используйте public property.


← →
NPR2   (2004-03-10 10:30) [2]

Самое интересное, что компилируется и выполняется, только без результата - если я в лоб руками набиру. В авто подсказке этот элемент не виден.


← →
Я ©   (2004-03-10 10:36) [3]

Приведите:
1. Декларацию класса основной формы
2. Код записи данных в массив
3. Код чтения данных из массива
4. Как задается размер массива?


← →
NPR2   (2004-03-10 11:40) [4]

unit Gl;
interface
uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, Menus, ExtCtrls, DB, DBTables,Registry;
type
 TGl_Form = class(TForm)
...
public
 aHandle:array of THandle;
...
procedure TGl_Form.FormCreate(Sender: TObject);
...
   SetLength(aHandle,st_Com_Port.Count); количество СОМ портов из реестра
for m:=0 to st_Com_Port.Count-1 do
  begin
   aHandle[m]:=CreateFile(PChar(st_Com_Port.Strings[m]),
                GENERIC_READ or GENERIC_WRITE,0,nil,
                OPEN_EXISTING,FILE_FLAG_OVERLAPPED,0);
...
end;
procedure TGl_Form.Timer_SworTimer(Sender: TObject);
....
   WriteFile(aHandle," 1 1c"+#239,6,dw_Write,@OverWrite);
...



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.023 c
1-1078349850
reef
2004-03-04 00:37
2004.03.28
Error creating form "Access violation at XXXXX in vcl50.bpl"


11-1056787866
mox
2003-06-28 12:11
2004.03.28
Timer


14-1078160755
Yorick
2004-03-01 20:05
2004.03.28
Soft для Siemens A60


1-1078389952
Calm
2004-03-04 11:45
2004.03.28
Как построить график в реальном времени по данным с COM-порта?


14-1077804171
Budy
2004-02-26 17:02
2004.03.28
Иконка около часов




   Наверх