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

Вниз

Ошибка при попытке позвонить через модем   Найти похожие ветки 

 
Lelik17   (2002-06-07 12:49) [0]

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
hCommFile : THandle;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var PhoneNumber : string;
CommPort : string;
NumberWritten: LongInt;
begin
CloseHandle(hCommFile);
PhoneNumber := "ATDP 7-812-943-98-10" + #13 + #10;
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;

{Dial the phone}
NumberWritten:=0;
if WriteFile(hCommFile,
PChar(PhoneNumber)^,
Length(PhoneNumber),
NumberWritten, - тут ругается!
nil) = false then begin
ShowMessage("Unable to write to " + CommPort);
end;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
CloseHandle(hCommFile);
end;

end.

Говорит, что ошибочка вышла по поводу NumberWritten. В чём дело?
Зарание спасибо?


 
Song ©   (2002-06-07 13:23) [1]

Посмотрите в FAQ как там сделано.


 
МИФИст ©   (2002-06-07 15:15) [2]

Может быть нужно воспользоваться:
SetCommState, SetCommTimeouts.
Про это подробно написано в статье
http://delphi.vitpc.com/mastering/ports5.htm

На счёт NumberWritten:

nNumberOfBytesToWrite

[in] Number of bytes to write to the file.
A value of zero specifies a null write operation. A null write operation does not write any bytes but does cause the time stamp to change. WriteFile does not truncate or extend the file. To truncate or extend a file, use the SetEndOfFile function.
Попробуй NumberWritten:=Length(PhoneNumber).




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

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

Наверх




Память: 0.47 MB
Время: 0.015 c
14-71320
Lola
2002-07-26 15:25
2002.08.22
Сегодня Международный день Сисадмина!


3-70980
SaS13
2002-07-31 11:21
2002.08.22
Остановить выполнение запроса


1-71174
Юра
2002-08-13 11:41
2002.08.22
Добавить новую страницу в TPageControl


1-71146
SS1
2002-08-13 14:10
2002.08.22
День недели из даты


14-71344
Anatoly Podgoretsky
2002-07-24 21:15
2002.08.22
На землю летит двухграммовый астероид