AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Alle im Netzwerk befindlichen Clients scannen
Thema durchsuchen
Ansicht
Themen-Optionen

Alle im Netzwerk befindlichen Clients scannen

Ein Thema von Gintonik · begonnen am 16. Nov 2012 · letzter Beitrag vom 17. Nov 2012
Antwort Antwort
Seite 4 von 5   « Erste     234 5      
Benutzerbild von MuTzE.Y85
MuTzE.Y85

Registriert seit: 11. Apr 2006
152 Beiträge
 
#31

AW: Alle im Netzwerk befindlichen Clients scannen

  Alt 17. Nov 2012, 10:30
Windows 7 HP 64
LAN-PC: C2Q Q9550 @ 4004 MHz @ 1.232 V @ Mugen 2 | DFI LANParty JR P45-T2RS | G.Skill 4GB DDR2-1000 CL5 | ZOTAC GTX 280 @ GTX 285 @ 1.06 V | WD Caviar Blue 320GB / WD Caviar Black 640GB | BeQuiet DPP P7 450W | Antec Mini P180
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#32

AW: Alle im Netzwerk befindlichen Clients scannen

  Alt 17. Nov 2012, 10:36
Also übertragen möchte ich nix. Es geht wirklich nur darum zu wissen, wann ein PC im Netzwerk ist.
Zur Erklärung. Ich hab hier nur eine 1000er Leitung und wenn jemand anderes im Internet ist, wenn ich zocken will, dann bekomm ich arge Probleme mit dem Ping
Daher würde ich gerne vorher wissen, ob jemand online ist, dann brauch ich das Spiel gar nicht erst zu starten.
Genau dafür bieten einige Router (z.B. FritzBox) die Möglichkeit der Priorisierung an. Dann kann es dir egal sein, wer wie noch im Internet aktiv ist.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von MuTzE.Y85
MuTzE.Y85

Registriert seit: 11. Apr 2006
152 Beiträge
 
#33

AW: Alle im Netzwerk befindlichen Clients scannen

  Alt 17. Nov 2012, 10:55
Redest du von Traffic-Shaping?
Das ist aktiviert...

Sobald jemand anderes auch nur eine Seite aufruft, geht mein Ping auf bis zu 1800 ms hoch. Da geht gar nix mehr.
LAN-PC: C2Q Q9550 @ 4004 MHz @ 1.232 V @ Mugen 2 | DFI LANParty JR P45-T2RS | G.Skill 4GB DDR2-1000 CL5 | ZOTAC GTX 280 @ GTX 285 @ 1.06 V | WD Caviar Blue 320GB / WD Caviar Black 640GB | BeQuiet DPP P7 450W | Antec Mini P180
  Mit Zitat antworten Zitat
borstenei

Registriert seit: 11. Nov 2011
121 Beiträge
 
#34

AW: Alle im Netzwerk befindlichen Clients scannen

  Alt 17. Nov 2012, 10:56
Hi pinge mit dieser Funktion:
Delphi-Quellcode:

uses
  Windows, SysUtils, Variants, Classes, Graphics, Controls,
  ExtCtrls, ComCtrls, winsock, StdCtrls, wininet;


function Ping(IP:string; TimeOut:Cardinal):Boolean;
   var hICMP : DWORD;
       pierWork : PICMP_ECHO_REPLY;
       dwSize : DWORD;
       Class1,Class2,Class3,Class4 : String;
       i,j : Byte;
 begin
   Result:=False;
   j:=1;
   for i:=1 to Length(IP) do begin
     if IP[i]<>'.then begin
       case j of
         1: Class1:=Class1+IP[i];
         2: Class2:=Class2+IP[i];
         3: Class3:=Class3+IP[i];
         4: Class4:=Class4+IP[i];
       end;
     end else
       Inc(j);
   end;
   hICMP := IcmpCreateFile;
   if hICMP = INVALID_HANDLE_VALUE then exit;
   try
    dwSize := SizeOf(ICMP_ECHO_REPLY)+8;
     pierWork := AllocMem(dwSize);
     try
       if IcmpSendEcho(hICMP,MAKELONG(MAKEWORD(StrToInt(Class1), StrToInt(Class2)),MAKEWORD(StrToInt(Class3), StrToInt(Class4))),nil,0,nil,pierWork,dwSize,TimeOut) = 0 then
         Result:=False
       else
         Result:=True;
     finally
      FreeMem(pierWork,dwSize);
    end;
  finally
    IcmpCloseHandle(hIcmp);
  end;
end;
ist hier aus dem Forum.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#35

AW: Alle im Netzwerk befindlichen Clients scannen

  Alt 17. Nov 2012, 11:05
Redest du von Traffic-Shaping?
Das ist aktiviert...

Sobald jemand anderes auch nur eine Seite aufruft, geht mein Ping auf bis zu 1800 ms hoch. Da geht gar nix mehr.
Und du hast die Verbindung von deinem Rechner zu dem Server bei Echtzeitanwendungen eingetragen?
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von MuTzE.Y85
MuTzE.Y85

Registriert seit: 11. Apr 2006
152 Beiträge
 
#36

AW: Alle im Netzwerk befindlichen Clients scannen

  Alt 17. Nov 2012, 12:53
Redest du von Traffic-Shaping?
Das ist aktiviert...

Sobald jemand anderes auch nur eine Seite aufruft, geht mein Ping auf bis zu 1800 ms hoch. Da geht gar nix mehr.
Und du hast die Verbindung von deinem Rechner zu dem Server bei Echtzeitanwendungen eingetragen?
Sowas hab ich glaub ich nicht. Wüsste jedenfalls nicht wo.
In meinem D-Link Router kann ich allen Scheiß einstellen, aber der hat ja nunmal kein Modem, darum ist die Fritzbox davor.

Das gehört zwar hier nicht her, aber ich habe auch cFosSpeed. Würde das funktionieren wenn ich das auch auf dem anderen Rechner installiere?
Weil ja 2 IP-Kreise bei mir vorhanden sind.
LAN-PC: C2Q Q9550 @ 4004 MHz @ 1.232 V @ Mugen 2 | DFI LANParty JR P45-T2RS | G.Skill 4GB DDR2-1000 CL5 | ZOTAC GTX 280 @ GTX 285 @ 1.06 V | WD Caviar Blue 320GB / WD Caviar Black 640GB | BeQuiet DPP P7 450W | Antec Mini P180

Geändert von MuTzE.Y85 (17. Nov 2012 um 13:06 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#37

AW: Alle im Netzwerk befindlichen Clients scannen

  Alt 17. Nov 2012, 13:04
Die Fritzbox kann das und die Priorisierung sollte auch der letzte Übergabepunkt im eigenen Netz übernehmen.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von MuTzE.Y85
MuTzE.Y85

Registriert seit: 11. Apr 2006
152 Beiträge
 
#38

AW: Alle im Netzwerk befindlichen Clients scannen

  Alt 17. Nov 2012, 13:16
Ich glaube meine ist zu alt. Hab ne 3170.

Zitat:
Folgende AVM-Geräte unterstützen die Priorisierung:

FRITZ!Box Fon WLAN 7112; FRITZ!Box Fon WLAN 7141; FRITZ!Box Fon WLAN 7170; FRITZ!Box Fon WLAN 7170 SL; FRITZ!Box Fon WLAN 7170 SL (Annex A) Edition A; FRITZ!Box Fon WLAN 7170 (Annex A) Edition A/CH; FRITZ!Box Fon WLAN 7170 (Annex B) Edition A/CH; FRITZ!Box Fon WLAN 7240; FRITZ!Box Fon WLAN 7270; FRITZ!Box Fon WLAN 7270 Edition A/CH; FRITZ!Box WLAN 3270; FRITZ!Fon 7150; FRITZ!Box Fon WLAN 7570 VDSL; FRITZ!Box Fon WLAN 7390

borstenei, wie ermittelst du die rechner namen?
Kann ich die exe vom tool mal haben?
LAN-PC: C2Q Q9550 @ 4004 MHz @ 1.232 V @ Mugen 2 | DFI LANParty JR P45-T2RS | G.Skill 4GB DDR2-1000 CL5 | ZOTAC GTX 280 @ GTX 285 @ 1.06 V | WD Caviar Blue 320GB / WD Caviar Black 640GB | BeQuiet DPP P7 450W | Antec Mini P180

Geändert von MuTzE.Y85 (17. Nov 2012 um 13:31 Uhr)
  Mit Zitat antworten Zitat
borstenei

Registriert seit: 11. Nov 2011
121 Beiträge
 
#39

AW: Alle im Netzwerk befindlichen Clients scannen

  Alt 17. Nov 2012, 14:14
Macadresse und Computername mit diesen Funktionen
Delphi-Quellcode:
function GetComputerName(IPAddr: String): string;
 var
   SockAddrIn: TSockAddrIn;
   HostEnt: PHostEnt;
   WSAData: TWSAData;
 begin
   WSAStartup($101, WSAData);
   SockAddrIn.sin_addr.s_addr := inet_addr(PAnsiChar(AnsiString(IPAddr))); // <-- IP-Addr nach AnsiString wandeln
   HostEnt := gethostbyaddr(@SockAddrIn.sin_addr.S_addr, 4, AF_INET);
   if HostEnt <> nil then
     Result := string(StrPas(Hostent^.h_name)) // <- Hostname nach String wandeln
   else
     Result := '';
 end;


function GetMacAddr(const IPv4: String): String;
   const
     SrcIP: in_addr = (S_addr: 0);
   var
     DestIP: in_addr;
     MacAddr: array[0..5] of Byte;
     MacAddrLen, RC: DWORD;
     i: Integer;
 begin
   Result := '';
   DestIP.S_addr := inet_addr(PAnsiChar(AnsiString(IPv4)));
   MacAddrLen := Length(MacAddr);
   // msdn.microsoft.com/e...aa366358(VS.85).aspx
   RC := SendARP(DestIP,SrcIP,@MacAddr,MacAddrLen);
   case RC of
     NO_ERROR:
       begin
         if (MacAddrLen = 6) then
           for i := 0 to 5 do begin
             if (i > 0) then
               Result := Result +'-';
             Result := Result +IntToHex(MacAddr[i],2);
           end
         else
           Result := 'Error: MacAddrLen='+IntToStr(MacAddrLen);
       end;
     ERROR_GEN_FAILURE:
       Result := 'ERROR_GEN_FAILURE';
     ERROR_INVALID_PARAMETER:
       Result := 'ERROR_INVALID_PARAMETER';
     ERROR_INVALID_USER_BUFFER:
       Result := 'ERROR_INVALID_USER_BUFFER';
     ERROR_BAD_NET_NAME:
       Result := 'ERROR_BAD_NET_NAME';
     ERROR_BUFFER_OVERFLOW:
       Result := 'ERROR_BUFFER_OVERFLOW';
     else
       Result := 'Error: RC='+IntToStr(RC);
   end;
 end;

ich würde gern den alles hier mal anhängen..nur leider gehört mein code nicht in die Rubrik "Da kann man was lernen".
ich hänge die Exe mal an , die Netzwerksache tut es ja auch ohne Receiver.
Angehängte Dateien
Dateityp: 7z VuTools.7z (1,52 MB, 55x aufgerufen)
Dateityp: txt Ports.txt (8,2 KB, 39x aufgerufen)
  Mit Zitat antworten Zitat
Benutzerbild von MuTzE.Y85
MuTzE.Y85

Registriert seit: 11. Apr 2006
152 Beiträge
 
#40

AW: Alle im Netzwerk befindlichen Clients scannen

  Alt 17. Nov 2012, 15:02
Gibts doch gar nicht

Ich habe die gleiche Funktion verwendet und es hat nie geklappt.

Jetzt habe ich endlich den Fehler:
Code:
function GetComputerName(IPAddr: String): string;
 var
   SockAddrIn: TSockAddrIn;
   HostEnt: PHostEnt;
   WSAData: TWSAData;
 begin
   WSAStartup($101, WSAData);
   SockAddrIn.sin_addr.s_addr := inet_addr(PAnsiChar([B]AnsiString[/B](IPAddr))); // <-- IP-Addr nach AnsiString wandeln
   HostEnt := gethostbyaddr(@SockAddrIn.sin_addr.S_addr, 4, AF_INET);
   if HostEnt <> nil then
     Result := string(StrPas(Hostent^.h_name)) // <- Hostname nach String wandeln
   else
     Result := '';
 end;
Das AnsiString hat mir gefehlt. Ich danke dir!
WIe lange dauert bei dir eigentlich das durchpingen? Ich hab die TimeOut-Zeit auf 50 ms und das dauert schon ne weile.

Dein Tool kann ich nicht öffnen. Mir fehlt XML 4.0
LAN-PC: C2Q Q9550 @ 4004 MHz @ 1.232 V @ Mugen 2 | DFI LANParty JR P45-T2RS | G.Skill 4GB DDR2-1000 CL5 | ZOTAC GTX 280 @ GTX 285 @ 1.06 V | WD Caviar Blue 320GB / WD Caviar Black 640GB | BeQuiet DPP P7 450W | Antec Mini P180
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 4 von 5   « Erste     234 5      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:18 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz