Всем привет=)
Писала программу, которая обращается к COM-порту: пока что просто открывает/закрывает его. Открывает нормально, а при закрытии выдается ошибка: "Project project1.exe raised exception class EExternalException with message 'External exception C0000008'. Process stopped. Use Step or Run to continue."
Фрагмент программы:
Код:
var Port:THandle;
begin
if button1.Caption='Открыть' then
begin
Port:=CreateFile(
'\\.\COM3',
GENERIC_READ or GENERIC_WRITE,
0,
nil,
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL,
0
);
if (port=INVALID_HANDLE_VALUE)
then showmessage('Ошибка!')
else begin
showmessage('Порт открыт');
button1.Caption:='Закрыть';
end; end else
if button1.Caption='Закрыть' then
begin
showmessage('Порт закрыт');
CloseHandle (port);// тут тупая ошибка
button1.Caption:='Открыть';
end;
end;
Подскажите, пожалуйста, как избавиться от ошибки?