Добрый вечер! У меня возник вопрос с запросами к модему с помощью компонента CPort пишу на Delphi. как отправить иниц. модему ? отправляю так PHP: procedure TForm1.initClick(Sender: TObject); VAR Data: string; begin init_Array[0]:='AT'; init_Array[1]:='AT&V'; ComPort.WriteStr(nit_Array[0]+#13#10); // send test command ComPort.ReadStr(Data, ComPort.InputCount); end; как отправить след команду? после ожидания ответа от первой? создаю массив команд например init_Array[0]:='AT'; init_Array[1]:='AT&V';
ответ приходит procedure TForm1.ComPortRxChar(Sender: TObject; Count: Integer); var Str: String; begin ComPort.ReadStr(Str, Count); showmessage(Str); end; а как запросить след команду с массива?
А нафига юзать вообще работу с портом таким образом? Тебе особо не важен тут битрейт, потому что дрова модема сами всё настраивают. Юзай стандартную работу с файлами, указав порт. Типа: CreateFile('COM4', ***** и потом WriteFile и ReadFile когда надоест, то CloseHandle Итд. короче заюзать можеш любую функцию открытия файла, главное открывать файл с правами RW
спасибо! но я хотел бы через компоненту пишу так procedure TForm1.initClick(Sender: TObject); VAR n:integer; begin init_Array[0]:='AT'; init_Array[1]:='AT&V'; init_Array[2]:='AT1'; init_Array[3]:='AT2'; For n:=0 to length(init_Array)-1 do Begin // showmessage(init_Array[n]); ComPort.WriteStr(init_Array[n]+#13#10); // send test command end; если так делаю то отправляеться 1 запрос со всем массивом а мне надо чтоб отправился первый запрос получили ответ , потом второй и так далее