Всё же разобрался. Терминал уже работает. Есть вопрос только. Надо сделать одну кнопку, которая будет отвечать за подключение и отключение com-порта, так вот знаю, что делается это в принципе легко, за счёт условия If ... Then ... Else ..., но трудность в том, что код отвещающий за включение и отключения там приличный. Короче помогите кто может соединить их в один, за счёт условия. В кодах как поянл сделанно так, что пока не нажал кнопку включить отключение нажать нельзя, и наоборот.
Код от кнопки включения:
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
//Открываем порт
hComm:=CreateFile(PChar(ComboBox1.Items[ComboBox1.ItemIndex]),
GENERIC_READ or GENERIC_WRITE,
0,
Nil,
OPEN_EXISTING,
0,
0);
//Проверяем, нормально создан порт?
if hComm = INVALID_HANDLE_VALUE then
begin
SysErrorMessage(GetLastError);
CloseHandle(hComm);
hComm:=0;
exit;
end
else
begin
ResBool:=GetCommState(hComm,DCB);
if ResBool = false then
begin
SysErrorMessage(GetLastError);
CloseHandle(hComm);
hComm:=0;
exit;
end;
end;
От отключения:
Код:
procedure TForm1.Button3Click(Sender: TObject);
begin
Timer1.Enabled:=false;
if hComm <> 0 then
CloseHandle(hComm);
hComm:=0;
CloseHandle(hReadCom);
hReadCom:=0;
Button1.Enabled:=true;
Button3.Enabled:=false;
ComboBox1.Enabled:=true;
ComboBox2.Enabled:=true;
ComboBox3.Enabled:=true;
ComboBox4.Enabled:=true;
ComboBox5.Enabled:=true;
CheckBox1.Enabled:=false;
CheckBox2.Enabled:=false;
Memo1.ReadOnly := true;
Caption := ProgrammVersion;
end;