Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Wie kann man in C Sharp Netzwerkadapter deaktivieren?

Frage Entwicklung C und C++

Mitglied: alcapone991

alcapone991 (Level 1) - Jetzt verbinden

13.02.2012 um 10:06 Uhr, 8052 Aufrufe, 4 Kommentare

Salvete!

Ich möchte mit C# Wlan aktivieren oder deaktivieren, je nachdem ob ein Lankabel aus- oder eingesteckt wird.
Das Programm steht soweit, allerdings hängt es noch an der Funktion, welche mir Wlan entsprechend enabled oder disabled.

Hier der Sourcecode, am Ende findet ihr die Funktion:




using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.NetworkInformation;
using System.Management;

namespace Examples.Net.AddressChanges
{
public class NetworkingExample
{
public static void Main()
{
NetworkChange.NetworkAddressChanged += new
NetworkAddressChangedEventHandler(AddressChangedCallback);
Console.WriteLine("Listening for address changes. Press any key to exit.");
Console.ReadLine();
}
static void AddressChangedCallback(object sender, EventArgs e)
{
NetworkInterface[] adapters = NetworkInterface.GetAllNetworkInterfaces();
foreach(NetworkInterface n in adapters)
{

if (n.Name == ("Local Area Connection"))

{
if (n.Speed == 0)
{A
Console.WriteLine("Disable");
disable WLAN
networktest (n.name, Disable)

}
else
{
Console.WriteLine("Enable");
Enable WLAN
networktest();
}
}
}
}

function Enable or Disable Wlan ------------hier hängt es anscheinend
public void networktest()
{
ManagementObjectSearcher searcher = new
ManagementObjectSearcher("SELECT * FROM Win32_NetworkAdapter" +
" WHERE Name= n.name");

ManagementObjectCollection adapterObjects = searcher.Get();

foreach (ManagementObject adapterObject in adapterObjects)
{
string name = adapterObject["Name"].ToString();



}
}



}
}




Weiß jemand ob die Funktion an sich die richtige ist?
Oder wo der Fehler liegt?


Danke und Gruß,


alcapone991
Mitglied: vorstieg
13.02.2012 um 11:39 Uhr
Hi,

kenne mich mit der Thematik nicht aus, aber vielleicht hilft dir das weiter:
http://www.codeproject.com/Articles/21503/Hardware-Helper-Library-for-C

Mit freundlichen Grüßen vorstieg
Bitte warten ..
Mitglied: alcapone991
13.02.2012 um 12:35 Uhr
Danke für die schnelle Antwort, aber das funktioniert leider auch nicht.
Das Programm an sich funktioniert zwar, aber die Datei, in der die Befehle drinstehen, ist defekt.

Die Idee hatte ich vor 2 Wochen auch schon ;)

LG
Bitte warten ..
Mitglied: alcapone991
15.02.2012 um 14:01 Uhr
Hallo,


ich habe mittlerweile eine Lösung gefunden. Ist zwar nicht der programmiertechnisch schönste Entwurf, funktionier aber, und das ist ja die Hauptsache .
Falls es noch jemand sucht, hier bitteschön:






using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.NetworkInformation;
using System.Management;

namespace Examples.Net.AddressChanges
{
public class NetworkingExample
{
public static void Main()
{
NetworkChange.NetworkAddressChanged += new
NetworkAddressChangedEventHandler(AddressChangedCallback);
Console.WriteLine("Listening for address changes. Press any key to exit.");
Console.ReadLine();
}
static void AddressChangedCallback(object sender, EventArgs e)
{
NetworkInterface[] adapters = NetworkInterface.GetAllNetworkInterfaces();
foreach(NetworkInterface n in adapters)
{
if (n.Name == ("Local Area Connection"))

{
if (n.Speed == 0)
{
Console.WriteLine("Enable");
enable WLAN
Wireless Network Connection
WlanAction1();
}
else
{
Console.WriteLine("Disable");
Disable WLAN
WlanAction();
}
}
}
}


function Disable Wlan

public static void WlanAction()
{
Console.WriteLine("Disable Function");
SelectQuery wmiQuery = new SelectQuery("SELECT * FROM Win32_NetworkAdapter");
WHERE Name = 'Wireless Network Connection'"
ManagementObjectSearcher searchProcedure = new ManagementObjectSearcher(wmiQuery);
foreach (ManagementObject item in searchProcedure.Get())
{

if (((string)item["NetConnectionID"]) == "Wireless Network Connection")
NEtConnection Status = 2 for Active, 7 for LAN not connected
{
item.InvokeMethod("disable",null);
item.Put();
Console.WriteLine(item["name"]);
}
}
}

//function Enable Wlan
public static void WlanAction1()
{
SelectQuery wmiQuery = new SelectQuery("SELECT * FROM Win32_NetworkAdapter");
ManagementObjectSearcher searchProcedure = new ManagementObjectSearcher(wmiQuery);
foreach (ManagementObject item in searchProcedure.Get())
{
if (((string)item["NetConnectionID"]) == "Wireless Network Connection")

{
item.InvokeMethod("Enable", null);
}
}
}
}
}
Bitte warten ..
Mitglied: alcapone991
16.03.2012 um 10:34 Uhr
...ein Problem habe ich allerdings noch.

Das ganze funktioniert nur wenn ich die UAC - User Account Control deaktiviert habe.
Weiß jemand wie ich das umgehen könnte? Die UAC muss nämlich angeschaltet sein bei unseren Rechnern.

Außerdem funktioniert der Dienst noch nicht wenn ich den Laptop anschalte und LAN sowie WLAN aktiviert sind. Ich muss immer erst eine Aktion ausführen damit der Dienst entsprechend arbeitet.
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
LAN, WAN, Wireless
gelöst Netzwerkadapter deaktivieren, aber wie? (3)

Frage von How-To zum Thema LAN, WAN, Wireless ...

Linux Desktop
gelöst Linux Mint automatische Anmeldung deaktivieren (4)

Frage von laster zum Thema Linux Desktop ...

Batch & Shell
gelöst Get-WmiObject, nach Netzwerkadapter filtern (11)

Frage von Flodsche zum Thema Batch & Shell ...

Exchange Server
gelöst Notfall - Netzwerkadapter nicht mehr funktionsfähig, Exchange tot (14)

Frage von vBurak zum Thema Exchange Server ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (33)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...