Einzelnen Beitrag anzeigen

toyoman

Registriert seit: 2. Jun 2003
323 Beiträge
 
Delphi 2010 Enterprise
 
#80
  Alt 14. Jun 2005, 19:16
Zitat von justify:
Huhu,

sorry, da hab' ich dann wohl was verwechselt - ist ja aber auch egal!

Es geht um eine kleine Unterkategorie, die nur testen soll, ob eine LAN-Verbindung hergestellt ist oder nicht und dementsprechend was ausgeben soll, also "verbunden" oder "nicht verbunden"!

Das alles soll bei einem Buttonklick passieren.

Könntest Du mir sagen, wie ich den Code abändern muß, damit es genau so geschieht?
Du kannst die Prozedur von oben übernehmen und in deine Button.click Prozedur eintragen (zu oberst).
-Entferne alle Logfileschreiben Zeilen die brauchst du indem Fall nicht. Uses Registry nicht vergessen!

Würde sagen so müssts gehn:

Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, registry, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
function NetworkConnect : Boolean;
var
  reg : TRegistry;
  i : Integer;
  NetworkCards : String;
begin
  result := false;
  reg := TRegistry.Create(KEY_READ);
  reg.RootKey := HKEY_LOCAL_MACHINE;
  for i := 0 to 15 do //Mehr als 15 Netzwerkkarten sollte kein normaler Rechner haben...
  begin
    if reg.KeyExists('\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkCards\' +inttostr(i)) = true then
    begin
      reg.OpenKey('\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkCards\' +inttostr(i),false);
      NetworkCards := reg.ReadString('ServiceName');
     // break;
      if NetworkCards <> 'then
      begin
        reg.OpenKey('\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\'+NetworkCards,false);
        if reg.ReadString('DHCPDomain') <> 'then
        begin
            result := true
        end else
        begin
            result := false;
        end;
      end;
    end;
  end;
  reg.Free;
end;
begin
  // Network Cable unplugged?
   if networkconnect=true then
   begin
      showmessage('Netzwerkkabel ist eingesteckt!');
   end else
   begin
      showmessage('Netzwerkkabel ist ausgesteckt!');
   end;
end;

end.
  Mit Zitat antworten Zitat