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

Вниз

Работа с модемом...   Найти похожие ветки 

 
Геннадий   (2002-08-17 22:29) [0]

Я посылаю модему АТ-команду на дозвон. Он звонит. Ему отвечает другой модем и они сами, без моего участия устанавливают связь между собой, так? А что бы можно было использовать стандартные компоненты для сетевой работы, входящие в поставку Делфи, этого достаточно? Или надо дать знать операционке, что есть связь с другим компом? Звоню через WriteLn(F, "AT D P 999999");

И как в этом случае узнать свой и его IP-адрес? Ведь для обмена файлами/строками нужно указать свойства Host...


 
Mozart_mcs   (2002-08-19 01:55) [1]

При соединении двух компов по модему в w98 IP - стандартный:
у сервера: 192.168.55.1
у клиента: 192.168.55.2


 
ППавел   (2002-08-19 05:58) [2]

Свой IP можно узнать таким образом:
Uses Winsock;

function MyIP : string;

type
TaPInAddr = array [0..10] of PInAddr;
PaPInAddr = ^TaPInAddr;
var
ph : PHostEnt;
ptr : PaPInAddr;
Buffer : array [0..63] of char;
i : Integer;
GInitData : TWSADATA;
begin
WSAStartup($101, GInitData);
Result := "";
GetHostName(Buffer, SizeOf(Buffer));
ph :=GetHostByName(buffer);
if ph = nil then
begin
Exit;
end;
ptr := PaPInAddr(Ph^.h_addr_list);
I := 0;
while ptr^[I] <> nil do
begin
result:=StrPas(inet_ntoa(ptr^[I]^));
Inc(I);
end;
WSACleanup;
end;


 
Reindeer Moss Eater   (2002-08-19 08:52) [3]

>Геннадий
При таком способе соединения модемов никаких транспортных протоколов к нему (соединению) не привязывается. Соответственно никаких дополнительных IP адресов не появляется. Все что можно делать в этом случае - это писать в порт и читать из него. И ничего более.


 
ППавел   (2002-08-19 10:52) [4]

Определить свой IP можно так:

Uses Winsock;

function MyIP : string;

type
TaPInAddr = array [0..10] of PInAddr;
PaPInAddr = ^TaPInAddr;
var
phe : PHostEnt;
pptr : PaPInAddr;
Buffer : array [0..63] of char;
I : Integer;
GInitData : TWSADATA;
begin
WSAStartup($101, GInitData);
Result := "";
GetHostName(Buffer, SizeOf(Buffer));
phe :=GetHostByName(buffer);
if phe = nil then
begin
Exit;
end;
pptr := PaPInAddr(Phe^.h_addr_list);
I := 0;
while pptr^[I] <> nil do
begin
result:=StrPas(inet_ntoa(pptr^[I]^));
Inc(I);
end;
WSACleanup;
end;


 
ППавел   (2002-08-19 10:55) [5]

Извеняюсь за повтор


 
Роман Василенко   (2002-08-19 14:24) [6]

Э, надобно использовать RAS-API, и стандартные компоненты.

Вот ссылочка, я уже писал об этом.

http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1028828918&n=2

Второй раз писать лень.




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

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

Наверх




Память: 0.45 MB
Время: 0.007 c
1-78405
Cosinus
2002-10-15 09:57
2002.10.24
Работа с DrawGrid.


7-78690
Геннадий
2002-08-17 22:29
2002.10.24
Работа с модемом...


1-78408
Tornado
2002-10-15 11:46
2002.10.24
Странно ...


3-78281
Melov
2002-09-27 10:32
2002.10.24
Какие компоненты использовать для работы с MSSQL?


7-78691
matrixxxx
2002-08-06 20:20
2002.10.24
делаю программу для изготовления sms. Нужно чтобы введенный текст





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский