Главная страница
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.052 c
1-1108642460
buka
2005-02-17 15:14
2005.03.06
DELHI и WEB


6-1103709772
Chaser
2004-12-22 13:02
2005.03.06
Не работает присвоение порта к IdUDPServer


1-1109234508
Brain Force
2005-02-24 11:41
2005.03.06
Как получить текущую позицию курсора мыши


1-1108752260
allrussia
2005-02-18 21:44
2005.03.06
Как отобразить Form1 поверх Direct3D приложения


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