Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2007.03.04;
Скачать: [xml.tar.bz2];

Вниз

Как соединить два компа при помощи модемов?   Найти похожие ветки 

 
PanModem   (2006-09-25 18:42) [0]

Как соединить два компа при помощи модемов? Как это делает Hyper Terminal?


 
PanModem   (2006-09-25 18:50) [1]

function Tmainform.SetupCOMPort: Boolean;
const RxBufferSize = 256;
 TxBufferSize = 256;
var DCB: TDCB;
 Config: string;
 CommTimeouts: TCommTimeouts;
begin
 Result := True;
 if not SetupComm(ComFile, RxBufferSize, TxBufferSize) then
   Result := False;
 if not GetCommState(ComFile, DCB) then
   Result := False;

 Config := "baud=" + IntToStr(ComSpeed) + " parity=n data=8 stop=1"; //Устанавливаем скорость
 if not BuildCommDCB(@Config[1], DCB) then
   Result := False;
 if not SetCommState(ComFile, DCB) then
   Result := False;

 with CommTimeouts do
   begin
     ReadIntervalTimeout := 0;
     ReadTotalTimeoutMultiplier := 0;
     ReadTotalTimeoutConstant := 1000;
     WriteTotalTimeoutMultiplier := 0;
     WriteTotalTimeoutConstant := 1000;
   end;
 if not SetCommTimeouts(ComFile, CommTimeouts) then
   Result := False;
end;


Вот так я подключаюсь к момеду

procedure Tmainform.Connect;
begin
 ComString := "COM4";
 ComSpeed := 9200;

 if OpenCOMPort = true then //Открываем порт…
 begin
   mainform.Canvas.Draw(Image2.Left,Image2.Top,f1);
   if SetupCOMPort = true then //…и конфигурируем его
   begin
     mainform.Canvas.Draw(Image2.Left,Image2.Top,f2);
     Terminal.Lines.Add("Подключено к "+ComString+" на "+INtTostr(ComSpeed)+"Б\С");
   end;
 end;
 Sleep(1500); //засыпаем на полторы секунды чтобы дать время на соединение
end;
function Tmainform.OpenCOMPort: Boolean;
var DeviceName: array[0..80] of Char;
 Device: string;
begin
 Device := ComString;
 StrPCopy(DeviceName, Device);
 ComFile := CreateFile(DeviceName,
   GENERIC_READ or GENERIC_WRITE,
   0,
   nil,
   OPEN_EXISTING,
   FILE_ATTRIBUTE_NORMAL,
   0);
 if ComFile = INVALID_HANDLE_VALUE then
   begin
     Result := False;
     Status := Result;
   end
 else
   begin
     Result := True;
     Status := Result;
   end;

end;


 
PanModem   (2006-09-25 18:53) [2]

А как звонить и передавать файлы? Другого соединения нет.


 
Reindeer Moss Eater ©   (2006-09-25 20:04) [3]

Позвонить : записать в открытый порт "atd" + номер телефона + CR
Передать файл : открыть файл, прочитать в буфер, записать буфер в порт. Повторить пока файл не будет передан целиком.


 
PanModem   (2006-09-25 23:37) [4]

Спасибо, а какая команда записывает буфер в модем?


 
PanModem   (2006-09-25 23:40) [5]

И каков должен быть размер буфера


 
Reindeer Moss Eater ©   (2006-09-26 00:23) [6]

Спасибо, а какая команда записывает буфер в модем?
Нет никакого модема. Есть только открытый порт и writefile.

И каков должен быть размер буфера
Любой. Какой больше нравится.


 
PanModem   (2006-09-26 00:29) [7]

Сенькью



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

Форум: "Сети";
Текущий архив: 2007.03.04;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.237 c
11-1149004549
parovoZZ
2006-05-30 19:55
2007.03.04
Стоит ли ставить сабж


15-1171001483
vajo
2007-02-09 09:11
2007.03.04
Подскажите хороший файлообменник.


2-1171527285
Astronom
2007-02-15 11:14
2007.03.04
Запуск приложения в ЛВС


5-1149162789
StriderMan
2006-06-01 15:53
2007.03.04
Реализация UNDO (редактор формы)


15-1170753819
ZMRaven
2007-02-06 12:23
2007.03.04
захват и обработка видео...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский