如何监测windows刚刚拨号上网!当上网后我想把当前的动态ip发送出去!(50分)

  • 主题发起人 主题发起人 bearsoft
  • 开始时间 开始时间
B

bearsoft

Unregistered / Unconfirmed
GUEST, unregistred user!
如何捕获这个连接到internet的事件!
 
你的程序在后台用一个 timer 或线程不停地检测不就可以了?
 
你是不是要得到当前的ip地址
 
registry


--------------------------------
http://www3.msstudio.net/xuqian
 
你可用WINDOWS目录下的那个Winipcfg.exe !
 
我已经实现了这个功能,过程如下:
用一个Timer监控,用GetLocalHostIPAdress函数得到当前地址,
一旦IP地址不是127.0.0.1或是你的局域网地址如:192.0.0.1,
那个新的IP地址就是上网后的动态IP地址!
 
RasConnectionNotification
 
procedure TForm5.BitBtn2Click(Sender: TObject);
var
EventHandle: THandle;
begin
EventHandle := CreateEvent(nil, False, False, nil);
if EventHandle <> Null then
begin
if RasConnectionNotification(INVALID_HANDLE_VALUE, EventHandle,
RASCN_Connection or RASCN_Disconnection) = 0 then
begin
if WaitForSingleObject(EventHandle, INFINITE) = WAIT_OBJECT_0 then
begin
MessageDlg('Ok', mtInformation, [mbOK], 0);
end;
end;
CloseHandle(EventHandle);
end;
end;

get ras.pas at http://delphi-jedi.org
 
接受答案了.
 
后退
顶部