Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Почему это не работает? [D7, WinXP]


Rain ©   (2004-07-02 10:54:00) 

предполагалось, что модем наберет номер (это он делает), переведется в голосовой режим (командой AT#CLS=8) и в режим приема DTMF (командой AT#VTD=3F,3F,3F). Но по непонятным (для меня) причинам выполняется только первая команда. Может кто-нибудь что-то знает по этому вопросу? Заранее спасибо всем, кто поможет.


procedure TForm1.btnInitClick(Sender: TObject);
begin

    CommPort := 'COM1';                             {Open the comm port}
    hCommFile := CreateFile(PChar(CommPort),
                            GENERIC_WRITE,
                            0,
                            nil,
                            OPEN_EXISTING,
                            FILE_ATTRIBUTE_NORMAL,
                            0);
    if hCommFile=INVALID_HANDLE_VALUE then
        begin
             ShowMessage('Unable to open '+ CommPort);
             exit;
        end;

    PhoneNumber := 'ATDT' + Edit1.Text + #13 + #10;            {Edit1.text - собственно номер, по которому звонить}
        NumberWritten:=0;
        if WriteFile(hCommFile,
                     PChar(PhoneNumber)^,
                     Length(PhoneNumber),
                     NumberWritten,
                     nil) = false
        then
            begin
                 ShowMessage('Unable to write to ' + CommPort);
            end;

    PhoneNumber := 'AT#CLS=8' + #13 + #10;
    WriteFile(hCommFile,  {переводим модем в голосовой режим}
                     PChar(PhoneNumber)^,
                     Length(PhoneNumber),
                     NumberWritten,
                     nil);
                     
    PhoneNumber := 'AT#VTD=3F,3F,3F' + #13 + #10;
    WriteFile(hCommFile,  {переводим модем в режим приема DTMF}
                     PChar(PhoneNumber)^,
                     Length(PhoneNumber),
                     NumberWritten,
                     nil);
end;


Rain   (2004-07-02 11:36:00) [1]

вы уж простите за глупый вопрос, но зачем это, и как это сделать?


Reindeer Moss Eater   (2004-07-02 11:06:00) [2]

А где анализ результатов WriteFile?


Наверх

Титульная страница Поиск, карта сайта Написать письмо