Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.03.06;
Скачать: CL | DM;

Вниз

модем   Найти похожие ветки 

 
Sicilla ©   (2005-01-17 20:19) [0]

Подскажите, как мне включить/выключить динамик модема?


 
Sicilla ©   (2005-01-17 20:57) [1]

Я нашел такой код:
procedure TForm1.Button1Click(Sender: TObject);
var
  phoneCommand: string;
  CommPort: string;
  NumberWritten: LongInt;
begin
    PhoneCommand := "atm0" + #13 + #10;
    CommPort := "COM3";
    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;
    NumberWritten := 0;
    if WriteFile(hCommFile,PChar(PhoneCommand)^,Length(PhoneCommand),NumberWritten,nil) = false then  //здесь ошибка.
       begin
            ShowMessage("Unable to write to " + CommPort);
       end;
    CloseHandle(hCommFile);
end;

Помогите, кто может


 
dimaxx ©   (2005-01-17 23:52) [2]

var
 phoneCommand: string;
 CommPort: string;
 NumberWritten: cardinal;
 hCommFile: THandle;

begin
 PhoneCommand:="atm0"+#13#10;
 CommPort:="COM3";
 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;
 if not WriteFile(hCommFile,PChar(PhoneCommand)^,Length(PhoneCommand),NumberWritten,nil) then
   begin
     ShowMessage("Unable to write to "+CommPort);
   end;
 CloseHandle(hCommFile);
end;


 
Sicilla ©   (2005-01-18 17:02) [3]

В строке
WriteFile(hCommFile,PChar(PhoneCommand)^,Length(PhoneCommand),NumberWritten,nil)
у меня вылетает ошибка Types of actual and formal var parameters must be identical. Не могу понять в чем дело. Помогите!?


 
dimaxx ©   (2005-01-18 22:40) [4]

А мой код посмотреть лень? У меня все заработало.

NumberWritten должен быть типа cardinal (он же longword), а не longint. Вот оттуда и ошибка. Она означает, что типы передаваемого и объявленного параметров должны быть идентичными.


 
Sicilla ©   (2005-01-18 23:04) [5]

Я это понял, спасибо. Но теперь не могу вызвать правильную команду. Помоги, если не трудно.


 
dimaxx ©   (2005-01-19 23:27) [6]

Команда atm0 правильная. Может, в конце нулевой символ поставить, а не перевод строки? То есть "atm0"+#0



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

Текущий архив: 2005.03.06;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.041 c
4-1102528255
lendasoft
2004-12-08 20:50
2005.03.06
Показать форму на втором мониторе


14-1108377909
}|{yk
2005-02-14 13:45
2005.03.06
Здоровеньки булы! И что тут без меня творилось? :)


14-1108379603
*Pavel
2005-02-14 14:13
2005.03.06
Знатокам советских ОЗУ (на 565 РУ5Д)


14-1108125817
SteelMan
2005-02-11 15:43
2005.03.06
специальность: 071900 "Информационные системы и технологии"


1-1109019848
suharew
2005-02-22 00:04
2005.03.06
Как переименовать папку