Текущий архив: 2006.07.16;
Скачать: CL | DM;
ВнизIP адресса Найти похожие ветки
← →
Sco © (2006-02-25 20:19) [0]Я с другом коннекчусь через модем, т.е соединение типа как и в нет. Так как коннект через модем то и юзера 2, мне надо уметь быстро ети IP доставать, ну WarCraft,WarHammer как то ето быстро же делают. Кто нидь знает?
← →
Eraser © (2006-02-25 20:24) [1]
> Sco © (25.02.06 20:19)
> Я с другом коннекчусь через модем
к чему конектишься?
переформулируй вопрос. Вообще непонятно что требуется.
← →
Gnobobel (2006-02-25 22:26) [2]Откуда доставать? Почему быстро? lol
IP ты ставишь ещё при настройке соединения. Что их там искать?
← →
Sco © (2006-02-26 06:18) [3]Я коннекчусь через "входящие подключение" у глобального сервака, и "подключение к интернету" у глобального клиента. Получается такая телефонная сетка, все кто через модем режется в ВарКрафт,ВарХаммер,Солдат и т.д., Вайс Сити, все делают точно также.
IP можно посмотреть нажав на значок подключения, потом сведения и там они (IP) есть. Но я хочу автоматизировать ето! Я хочу чтобы прога сама могла найти ети IP.
← →
Delphi_is_cool © (2006-02-26 12:50) [4]
uses
..., Ras, RasHelperClasses;
type
PRasPPPIp = ^TRasPPPIp;
TRasPPPIp = packed record
dwSize : LongWord;
dwError : LongWord;
szIpAddress : array [0..RAS_MaxIpAddress] of Char;
szServerIpAddress: array [0..RAS_MaxIpAddress] of Char;
end;
var
Form1: TForm1;
RasIp: TRasPPPIp;
implementation
{$R *.dfm}
function DialUpConnected : Boolean;
var
I: Byte;
RasIpSize: LongWord;
procedure InitRasIp;
begin
RasIpSize := SizeOf(TRasPPPIp);
ZeroMemory(@RasIp, RasIpSize);
RasIp.dwSize := RasIpSize;
end;
begin
with TRasConnectionsList.Create do
try
Result := Count > 0;
if Result then
begin
InitRasIp;
for I := 0 to Count - 1 do
begin
Result := Items[I].ConnStatus.rasconnstate = RASCS_Connected;
if Result then
begin
RasGetProjectionInfo(Items[I].RasConn.hrasconn, RASP_PppIp, @RasIp, RasIpSize);
Break;
end;
end;
end;
finally
Free;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if DialUpConnected then
begin
Edit1.Text := RasIp.szIpAddress; // Ip клиента
Edit2.Text := RasIp.szServerIpAddress; // Ip сервера
end;
end;
← →
Sco © (2006-03-06 17:17) [5]to Delphi_is_cool © у клиента адресс сервера находит, ну и адресс клиента тоже, а у сервера ничего не находит.
← →
Sco © (2006-03-08 16:14) [6]Часть задачи выполнена, но человек к которому я соединяюсь, т.е. у него есть "входящие подключения", говорит что DialUpConnected=false, то есть прога не видит соединения! Как в таком случае найти IP клиента?
← →
Pavia © (2006-03-08 23:13) [7]Sco
WarCraft,WarHammer Постоянно шлют Broudcast - широко вещятельные пакеты для этого в старые времена применялся IPX. Сейчас это можно сделать через UDP. IP=255.255.255.255
Сервер отправляет широко вещательный пакеты клиент принемает пакет. Определяет адресс сервера и отсылает ответ серверу. Сервер принемает ответ от куда становиться ясно с какого ип пришло сообщение.
← →
Pavia © (2006-03-08 23:31) [8]Для получения своего адресса
если пользуешься инди то
LocalName;
Если юзаешь winsock
gethostname();
gethostbyname();
← →
Sco © (2006-03-09 12:05) [9]to Pavia © Проблема втом, что суть моей проги найти IP друга, и сохранить в файле, который использует Network Assistent, потом её запустить и чатиться бес поблем, ты написал как найти свой IP, и как найти IP клиента если он "дружит" с твоей программой, а как быть если он не "дружит" с твоей программой?
← →
piople © (2006-03-11 08:43) [10]Отрубить себе голову...
← →
Sco © (2006-03-11 13:04) [11]> piople ©
Очееень тупой прикол, у тебя все приколы такие ТУПЫЕ?
Не знаешь - не пиши!
Страницы: 1 вся ветка
Текущий архив: 2006.07.16;
Скачать: CL | DM;
Память: 0.47 MB
Время: 0.009 c