.net - c #: hvordan finder man tændt computere i domæne c #?

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg vil gerne have en liste over tændt computere i domænet. curently kan jeg få listen over computere i domænet ved hjælp af directoryentry class, men det giver en liste over alle computere på domænet, om det er tændt eller ej. Jeg reffered allerede 2,3 links på stackoverflow men fik ikke svar. pinging tager mere tid. Er der nogen effektiv løsning til dette i c #?

Bedste reference


Du kan måske se en løsning som SCOM til dette. Det giver en 'Heartbeat' funktionalitet, der er mere pålidelig end ping (nogle corporate firewalls kan blokere icmp, fx ping-trafik). Og en masse andre overvågning ting. Det betyder dog mere management overhead dog.


Hvis du vil have den enkleste løsning, kan du ikke komme rundt. Måske kan du bruge en multithreaded ping som her: https://codereview.stackexchange.com/questions/1202/c-multi-thread-ping [3]

Andre referencer 1


For at løse dette har jeg simpelthen lavet en C # app, der gør en ping til alle computere, dette kan gøres meget hurtigt afhængigt af dit netværk.


Grundlæggende hvad du gør er (Og hvad jeg gjorde):

1) Hent dig netværk fyr

2) Tal med ham, spørg ham om der er nogen 'oversvømmelsesbeskyttelse'.

3) Hvis han ikke skrige, spaa så mange tråde som muligt, og brug dem til at pinge maskinerne :).



@Mr Happy link allerede til kode om, hvordan man kan multi-tråd ping (ikke at det er et problem overhovedet).