Einzelnen Beitrag anzeigen

Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#6

Re: Message wenn sich die IP einer NIC ändert?

  Alt 28. Apr 2006, 12:52
ich hab auch schnell mal nen Veranschauligungsbeispiel gebastelt:
Delphi-Quellcode:
var LDLLHandle: Cardinal;
    NotifyAddrChange: function(AHandle: PCardinal; AOverlapped: POverlapped): DWORD; stdcall;
    LRes: DWORD;
begin
  LDLLHandle := LoadLibrary('iphlpapi.dll');
  if (LDLLHandle > 0) then
  begin
    NotifyAddrChange := GetProcAddress(LDLLHandle, 'NotifyAddrChange');
    if Assigned(NotifyAddrChange) then
    begin
      LRes := NotifyAddrChange(nil, nil);
      if LRes = NOERROR then
        showmessage('ipchanged')
      else
        ShowMessage('error');
    end;
    FreeLibrary(LDLLHandle);
  end;
Das ganze müsste noch im Thread ausgeführt werden weil durch den Aufruf mit den "nil"-Parametern die Funktion erst zurück kehrt wenn es eine Änderung gibt.
Desweiteren hab ich die Funktion dynamich eingebunden da Sie wohl bei der XP-Home-Version nicht verfügbar ist.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat