Autor Beitrag
Kuehter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 30
Erhaltene Danke: 1



BeitragVerfasst: Do 05.03.15 15:16 
Habe ein kleines Programm,
bei diesem möchte ich gerne die Möglichkeit haben den Adapter zu aktivieren und zu deaktivieren. Vielleicht fällt auch da auf was der Fehler ist.

C#-Code:

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
private void Enable_Click(object sender, EventArgs e)
        {
            ManagementObject currentMOBject = new ManagementObject();
            string strwQuery = "SELECT * FROM Win32_NetworkAdapter WHERE Index = 0";
            ObjectQuery oQuery = new System.Management.ObjectQuery(strwQuery);
            ManagementObjectSearcher oSearcher = new ManagementObjectSearcher(oQuery);
            ManagementObjectCollection oReturnCollection = oSearcher.Get();

            foreach (ManagementObject mo in oReturnCollection)
            {
                currentMOBject = mo;
            }

            currentMOBject.InvokeMethod("Disable"null);// Fehler hier

        }



Die Fehlermeldung sieht wie folgt aus:

Fehlermeldung:
Eine nicht behandelte Ausnahme des Typs "System.Management.ManagementException" ist in System.Management.dll aufgetreten.

Zusätzliche Informationen: Die Parameter der Methode sind ungültig.

Moderiert von user profile iconNarses: Quote- durch C#-Tags ersetzt
Moderiert von user profile iconNarses: Topic aus Internet / Netzwerk verschoben am Do 05.03.2015 um 17:07
Greenberet
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 339
Erhaltene Danke: 20

Win 10
C# (VS 2012), C++ (VS 2012/GCC), PAWN(Notepad++), Java(NetBeans)
BeitragVerfasst: Fr 06.03.15 21:26 
versuch es mal mit folgendem:

ausblenden C#-Quelltext
1:
currentMOBject.InvokeMethod("Disable"new Object[0]);					
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4700
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Fr 06.03.15 22:08 
Wurde denn überhaupt ein Adapter gefunden? Heißt die foreach Schleife durchlaufen?
So wie du es jetzt programmiert hast rufst du Disable an einem von dir unnötig erzeugten ManagementObject auf, wenn kein Adapter gefunden wurde, der keine Disable Methode hat.
Ansonsten funktioniert dein Code hier wenn ich ihn Elevated ausführe.
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4764
Erhaltene Danke: 1052

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Sa 07.03.15 10:16 
Scheint sich wohl mit Adminrechten gelöst zu haben, s. Crosspost myCSharp.de - Netzwerkadapter aktiviere und Deaktivieren...